Windows NT 的访问控制列表中对权限的设置,某些地方我仍不十分明白,现在才知道一些:
访问权限主要有:RWXDPO,即读(Read)、写(Write)、执行(eXecute)、删除(Delete)、更改权限(change Permissions)、取得所有权(take Ownership)。
对于目录,有两层权限列表。第一层是对目录本身的权限。有读权限意味着可以在知道文件名的情况下访问其中的文件。而有执行权限则意味着可以列出目录列表。有写权限意味着可以向其中追加或删除文件。有删除权限意味着可以删除此目录本身。
第二层是对目录中文件的权限列表。此权限列表在新建文件时会被文件自动继承。有读权限意味着可以读取文件内容。有写权限意味着可以修改文件。有执行权限意味着可以执行可执行文件。有删除权限意味着可以删除目录中的文件。
当目录中的文件有自己的访问权限设置时,可以将文件设为用户只有读取权限。但目录如果有取得所有权的目录访问权限(即上述第一层权限),此时仍可以将文件删除。而目录无此权限时则不能将文件删除。如果是不是一个文件而是一个目录,也设为只有读权限,那么情况也类似。
如果用户对文件没有读取权限,那么无论目录的权限如何,文件都无法被读取。如果用户对文件没有写入权限,那么无论目录的权限如何,文件都无法被写入。
那么,如果要保护一个目录及其子目录只能被所有人读,可以这样做:把它的权限设为 R,它的所有子目录和文件的权限都设为 R,并保证它的上级目录没有被设置取得所有权的目录权限。
Windows XP 有一个共享文档目录,它的权限设置比较特别:CREATOR OWNER 是完全控制,Administrators 也是完全控制,但是 Users 却是添加和读取。此添加和读取的权限组合是:RWX + RX。RWX 表示它的目录可以被读取,里面的文件可以被列出,可以在里面新建或删除文件。RX 则是里面新建的文件默认只能被读取和被执行。这样一下,A 用户创建的文件在默认情况下对 B 用户而言就没有写入和删除功能,但是共享文档目录中 B 也可以添加他自己的文件。
访问权限主要有:RWXDPO,即读(Read)、写(Write)、执行(eXecute)、删除(Delete)、更改权限(change Permissions)、取得所有权(take Ownership)。
对于目录,有两层权限列表。第一层是对目录本身的权限。有读权限意味着可以在知道文件名的情况下访问其中的文件。而有执行权限则意味着可以列出目录列表。有写权限意味着可以向其中追加或删除文件。有删除权限意味着可以删除此目录本身。
第二层是对目录中文件的权限列表。此权限列表在新建文件时会被文件自动继承。有读权限意味着可以读取文件内容。有写权限意味着可以修改文件。有执行权限意味着可以执行可执行文件。有删除权限意味着可以删除目录中的文件。
当目录中的文件有自己的访问权限设置时,可以将文件设为用户只有读取权限。但目录如果有取得所有权的目录访问权限(即上述第一层权限),此时仍可以将文件删除。而目录无此权限时则不能将文件删除。如果是不是一个文件而是一个目录,也设为只有读权限,那么情况也类似。
如果用户对文件没有读取权限,那么无论目录的权限如何,文件都无法被读取。如果用户对文件没有写入权限,那么无论目录的权限如何,文件都无法被写入。
那么,如果要保护一个目录及其子目录只能被所有人读,可以这样做:把它的权限设为 R,它的所有子目录和文件的权限都设为 R,并保证它的上级目录没有被设置取得所有权的目录权限。
Windows XP 有一个共享文档目录,它的权限设置比较特别:CREATOR OWNER 是完全控制,Administrators 也是完全控制,但是 Users 却是添加和读取。此添加和读取的权限组合是:RWX + RX。RWX 表示它的目录可以被读取,里面的文件可以被列出,可以在里面新建或删除文件。RX 则是里面新建的文件默认只能被读取和被执行。这样一下,A 用户创建的文件在默认情况下对 B 用户而言就没有写入和删除功能,但是共享文档目录中 B 也可以添加他自己的文件。