在 AC 环境中有效
使用 authorize 命令更改访问者对资源的访问权限 。
该命令可修改与资源相关联的 Access Control 列表。 它一次仅更改 Access Control 列表中的一个条目。
访问者尝试访问资源时,CA ControlMinder 将检查相应的 Access Control 列表以确定访问权限。 这些 Access Control 列表可包括资源记录中的那些,还可以包括资源组记录中的 Access Control 列表。 如果拒绝授予访问者对包括资源的任何 NACL 的访问权限,则拒绝授予该权限,即使该权限是由其他 ACL 授予的。
资源的所有者拥有对该资源的所有访问权限。 如果要更改用户(所有者)的访问权限,请更改资源的所有者,例如,用户 nobody。
注意:此命令同样存在于 Windows 环境中,但操作方式有所不同。
要使用 authorize 命令,您需要有足够的权限,这意味必须符合下列要求一个或多个要求:
对于不同的类集,authorize 命令具有不同的形式。 这些类集包括:
对于 TCP 类,此命令具有以下格式:
{authorize|auth} TCP tcpServiceName \
[{access|deniedaccess}(accessType)] \ {[ghost(ghostName [,ghostName]...)] | \ [host(hostName [,hostName]...)] | \ [hostnet(hostNetName [,hostNetName]...)] | \ [hostnp(hostNamePattern [,hostNamePattern]...)]} \ [{gid|uid|xgid|xuid}(accessor [,accessor]...])] ...
对于 HOST、GHOST、HOSTNET 和 HOSTNP 类,此命令具有以下格式:
{authorize|auth} {HOST|GHOST|HOSTNET|HOSTNP} stationName
[{access|deniedaccess}(accessType)] \ service({serviceName|serviceNumber|serviceNumberRange}) \ { gid | uid | xgid | xuid}(accessor [,accessor...]) ...
对于所有其他类,该命令具有以下格式:
{authorize|auth} className resourceName \
[{access|deniedaccess}(accessType)] \ [calendar(calendarName)] \ [{unix|nt}]\ [via (pgm ( program [,program]...))] \ { gid | uid | xgid | xuid}(accessor [,accessor...]) ...
定义资源 ACL Access Control 列表中的访问权限条目。 该 ACL 可指定向访问者授予的访问权限。
定义资源 ACL 中的访问类型,例如读取或写入。
注意:如果您同时忽略 authorize 命令的 access(accessType) 和 deniedaccess(accessType) 选项,则 CA ControlMinder 将为资源(例如,如果资源为文件,则在 UACC 文件记录中)类分配由 UACC 类中记录的隐性访问权限属性指定的访问权限。
指定用于确定访问权限的日历。
定义 resourceName 所属的类。
更改资源 NACL 中的访问权限。 NACL 可指定拒绝授予访问者的访问类型。
指定要拒绝授予的访问类型,例如读取或写入。
定义一个或多个您要为其设置访问权限的内部组。
定义一个或多个您要为其设置对 TCP/IP 服务的访问权限的主机组。
定义一个或多个您要为其设置对 TCP/IP 服务的访问权限的主机。
定义一个或多个您要为其设置对 TCP/IP 服务的访问权限的 HOSTNET 记录。
定义一个或多个您要为其设置对 TCP/IP 服务的访问权限的 HOSTNP 记录。
指定是否向 Windows 中的系统 ACL 添加值。
仅对 FILE 类有效。
定义正在修改其 Access Control 列表的资源记录。
定义允许本地主机向远程主机提供的服务。
serviceNumber |serviceNumberRange
定义服务编号或范围。
指定范围,两个整数之间用 -(连字符)分隔,例如 1-99。
限制:整数的范围在 0 到 65535 之间。
在指明的类中指定记录名称,如下所述:
对于无法解析的主机,请以 IPv4 格式指定 IP 地址范围。
指定要为其设置访问权限的 CA ControlMinder TCP 服务记录。
定义一个或多个您要为其设置访问权限的内部用户。
可以使用 * 代表所有内部用户。
指定是否向 UNIX 中的系统 ACL 添加值。
仅在支持 ACL 的 UNIX 环境中有效,且仅适用于 FILE 类中的记录。
为条件程序访问定义一个或多个程序。 via 参数可指定资源的 PACL 中的一个条目。 programName 可指定可以访问该资源的程序。 programName 可以包含通配符。 如果程序与 PACL 中的多个条目匹配,则具有最长非通配符匹配项的条目优先。
如果 pgmName 指定的程序或 shell 脚本未在 PROGRAM 类中定义,则 CA ControlMinder 将自动创建 PROGRAM 记录以对其进行保护。
定义一个或多个您要为其设置访问权限的企业组。
定义一个或多个您要为其设置访问权限的企业用户。
示例:授权 Angela 读取文件
以下 selang 命令可授权企业用户 Angela 读取受 FILE 资源 /projects/secrets 保护的文件:
auth FILE /projects/secrets xuid(Angela) access(read)
示例:仅授权 Angela 读取文件
以下 selang 命令仅授权企业用户 Angela 自己读取受 FILE 资源 /projects/secrets 保护的文件:
auth FILE /projects/secrets xuid(Angela) access(read) auth FILE /projects/secrets defaccess (none) chres FILE /projects/secrets owner(nobody)
注意:在 UNIX 上,如果您需要读取权限以控制用户是否可以执行获取有关文件的信息的操作(例如 ls -l),请将 STAT_intercept 配置设置为 1。 有关详细信息,请参阅 Reference Guide。
示例:授权组中的所有用户登录终端
以下 selang 命令可授权企业组 RESEARCH 的所有成员登录受 TERMINAL 资源 tty10 保护的终端:
auth TERMINAL tty10 xgid(RESEARCH) access(read)
示例:授权 Joe 备份文件
以下 selang 命令授权企业用户 Joe 备份受 GFILE 资源 secret_files 保护的文件:
auth GFILE secret_files xuid(Joe) \ via(pgm(/bin/backup)) access(read)
对于 Windows 端点,以下命令等效:
auth GFILE secret_files xuid(Joe) \ via(pgm(C:\WINDOWS\system32\ntbackup.exe)) access(read)
这些命令仅在 Joe 的访问权限不是由资源的 ACL 或 NACL 确定的时有效。
版权所有 © 2013 CA。
保留所有权利。
|
|