要考虑的另一个问题是 TERMINAL 类的默认规则。 在初始实施阶段,默认规则设置为允许未定义的任何对象。 在 TERMINAL 情况中,这可能会成为缺点。
考虑以下情况:某站点有几百个终端,您希望大多数用户能够从任何终端登录,但是希望 root 只能从两个预定义的终端登录。
首先,假定将 TERMINAL 类的默认值设置为 READ 可以使任何用户(包括 root)从在数据库中没有特定 TERMINAL 记录的任何终端登录。 您不希望超级用户能够从任何终端登录。 此外,还假定将 TERMINAL 类的默认值设置为 NONE 会强制您定义数据库中的每个终端(这可能并不实际)。
为了解决该问题,CA ControlMinder 支持 TERMINAL 类的 _default 记录中 Access Control 列表的定义。 以下命令显示如何花费最少的工作将 root 限制到两个终端:
newres TERMINAL term1 defaccess(N) owner(root) newres TERMINAL term2 defaccess(N) owner(root) newres TERMINAL _default defaccess(R) authorize TERMINAL _default uid(root) access(N)
前两个命令将 term1 和 term2 定义为 root 拥有的终端,以便超级用户可以登录这两个终端。 newres TERMINAL _default 和 chres 命令将默认访问权限设置为读取,以便任何人都可以访问数据库中未定义的任何终端。 authorize 命令显式拒绝超级用户对未定义终端的访问权限。
注意:UACC 类仍然存在;可以使用它指定资源的默认访问权限。 不过,使用 _default 记录指定资源的默认访问权限要简单得多。
版权所有 © 2013 CA。
保留所有权利。
|
|