免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3717 | 回复: 2

在jfs中使用ACL(访问控制列表) [复制链接]

论坛徽章:
0
发表于 2005-06-15 11:19 |显示全部楼层
除了支持传统的UNIX风格的文件权限管理外,JFS和JFS2文件系统还支持扩展的文件访问控制表(ACL)。\r\n用户只有它们自己的对象的基于用户的访问权。通常,用户接收资源的组许可权或缺省许可权。管理访问控制的最主要的任务是定义用户的组员身份,因为这些组员身份决定了用户对不是他们自己的文件的访问权。\r\n访问控制表(ACL)通过添加修改已分配给个人和组的基本许可权的扩展许可权来增加文件访问控制的质量。通过扩展许可权,可以允许或拒绝指定个人或组的文件访问而无需更改基本许可权。\r\n访问控制也涉及使用 setuid 和 setgid 来管理受保护资源。\r\n所有者: 特定对象的所有者控制其自由决定的访问属性。所有者的属性设置为创建进程的有效用户标识。对于文件系统对象,所有者的直接访问控制属性在没有 root 权限的情况下不能更改。 \r\n\r\n组: 对于文件系统对象,直接访问控制属性初始化为创建进程的有效组标识或父目录的组标识(这是由父目录的组继承标志确定的)。 \r\n对象的所有者可以更改组;新组必须为创建进程的有效组标识或父目录的组标识。对象的所有者可以更改组;新组必须为有效组或所有者的当前进程的副组标识中的有效组。\r\n要维护 ACL,请使用 aclget、acledit 和 aclput 命令。\r\n数字方式(用八进制记数法)的 chmod 命令可以设置基本许可权和属性。chmod 子例程(该命令调用的)禁用扩展许可权。如果对有 ACL 的文件使用 chmod 命令的数字方式(如chmod 755),则禁用扩展许可权。chmod 命令的符号方式(如chmod g+w)不禁用扩展许可权。有关数字方式和符号方式的信息,请参考 chmod 命令的手册。\r\n使用 setuid 和 setgid 程序\r\n在多数情况下许可权位机制允许对资源的有效访问控制。但对于更精确的访问控制,操作系统提供了 setuid 和 setgid 程序。\r\n大部分程序以调用它们的用户的用户和组访问权执行。程序所有者通过使该程序成为 setuid 或 setgid 程序可以关联调用它们的用户的访问权;就是说,程序在其许可权字段内设置了带有 setuid 或 setgid 位。当进程执行程序时,进程获取程序所有者的访问权。setuid 程序使用其所有者的访问权执行,而 setgid 程序有其组的访问权,并且两个位都可以根据许可权机制来设置。\r\n出于安全性原因,操作系统不支持在 shell 脚本内的 setuid 或 setgid 调用。\r\n基本许可权\r\n基本许可权是传统的分配到文件所有者、文件组和其它用户的文件访问方式。访问方式是:读(r)、写(w)和执行/搜索(x)。\r\n在 ACL 中,基本许可权为以下格式,带有表示为 rwx(将每个没有指定的许可权更换为连字符(-))的 Mode 参数:\r\nbase permissions:\r\nowner(name): Mode\r\ngroup(group): Mode\r\nothers: Mode属性\r\n以下属性可以添加到 ACL:\r\nsetuid (SUID) \r\n设置用户标识(Set-user-ID)方式位。该属性在运行时将有效的、已保存过的进程的用户标识设置为文件的所有者标识。 \r\nsetgid (SGID) \r\n设置组标识(Set-group-ID)方式位。该属性在运行时将有效的、已保存过的进程的组标识设置为文件的组标识。 \r\nsavetext (SVTX) \r\n对于目录,表示只有文件所有者能链接或取消链接指定目录中的文件。 \r\n这些属性以以下格式添加:\r\nattributes: SUID, SGID, SVTX 扩展许可权\r\n扩展许可权允许文件的所有者更精确地定义该文件的访问权。扩展许可权通过对指定的个人、组或组和用户的组合允许、拒绝或执行访问方式来修改基本文件许可权(所有者、组、其它)。通过使用关键字来修改许可权。\r\npermit、deny 和 specify 关键字定义如下:\r\npermit 授予用户或组对文件的指定访问权 \r\ndeny 限制用户或组使用对文件的指定访问权 \r\nspecify 为用户或组精确地定义文件访问权 \r\n如果通过 deny 或 specify 关键字来拒绝用户特定的访问权,没有任何其它的项可以覆盖该访问拒绝。\r\n要使扩展许可权生效,enabled 关键字必须在 ACL 中指定。缺省值为 disabled 关键字。\r\n在 ACL 中,扩展许可权为以下格式:\r\n\r\nextended permissions:\r\nenabled | disabled\r\npermit Mode UserInfo...:\r\ndeny Mode UserInfo...:\r\nspecify Mode UserInfo...:每一个 permit、deny 或 specify 项占独立的一行。Mode 参数表示成 rwx(每个没有指定的许可权用连字符(-)代替)。UserInfo 参数表示成 u:UserName 或 g:GroupName 或逗号隔开的 u:UserName 和 g:GroupName 的组合。\r\n\r\n访问控制列表示例\r\n以下为 ACL 的一个示例:\r\n\r\nattributes: SUID\r\nbase permissions:\r\nowner(frank): rw-\r\ngroup(system): r-x\r\nothers: ---\r\nextended permissions:\r\nenabled\r\npermit rw- u:dhs\r\ndeny r-- u:chas, g:system\r\nspecify r-- u:john, g:gateway, g:mail\r\npermit rw- g:account, g:financeACL 项描述如下:\r\n第一行表示打开了 setuid 位。 \r\n下一行介绍了基本许可权,这是可选的。 \r\n下三行指定基本许可权。在括号内的所有者和组名只是信息。更改这些名称不会改变文件所有者或文件组。只有 chown 命令和 chgrp 命令可以更改这些文件属性。 \r\n下一行介绍扩展许可权,这是可选的。 \r\n下一行表示启用跟随的扩展许可权。 \r\n最后四行是扩展项。第一个扩展项授予用户 dhs 读(r)和写(w)文件的许可权。 \r\n第二个扩展项只在 chas 用户为 system 组的成员时拒绝其读(r)访问权。 \r\n第三个扩展项指定只要用户 john 既是 gateway 组的成员也是 mail 组的成员,则他就拥有读(r)访问权。如果用户 john 不是这两个组的成员,此扩展许可权不适用。 \r\n最后一个扩展项授予在 account 组和 finance 组两个组中的任何用户读(r)和写(w)许可权。 \r\n对请求访问受控对象的进程可适用多于一个扩展项,限制项优先于允许方式。

论坛徽章:
0
发表于 2006-06-01 01:24 |显示全部楼层

今天正好看audit,学习

论坛徽章:
0
发表于 2006-06-01 12:45 |显示全部楼层
命令和SOLARIS有点不同,没有用过\r\n\r\n要维护 ACL,请使用 aclget、acledit 和 aclput 命令。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP