上一主题: 查看默认访问权限下一主题: 使用否定式访问控制列表


使用条件访问控制列表

您可以在用于访问文件的程序上有条件对文件进行访问。 以这种方式有条件访问文件被称为程序路径。

注意:如果访问文件所指定的程序是 shell 脚本,shell 脚本必须将 #!/bin/sh 作为其第一行 因为 shell 脚本将 #!/bin/sh 行作为注释且将不会处理它,所以不会执行 # 之后的 shell 脚本。 /home/test/test.sh or # sh /home/test/test.sh.

以下代码是示例,允许任何过程在密码更改程序 /bin/passwd 控制之下更新文件 /etc/passwd。 会阻止不源于 /bin/passwd 的对 /etc/passwd 文件的所有访问尝试。

newres FILE /etc/passwd owner(nobody) defaccess(R)
authorize FILE /etc/passwd gid(users) access(U) via(pgm(/bin/passwd))

newres 命令定义 CA ControlMinder 的文件 /etc/passwd,并允许任何用户(包括文件的所有者)读取文件。 在程序 /bin/passwd 下进行访问时,授权命令允许所有用户访问文件。 一旦密码文件以这种方式受到保护,如果用户未使用 /bin/passwd 程序,则会阻止将条目插入 /etc/passwd 文件的特洛伊木马或由组“用户”的用户对密码文件进行的更新。

条件访问列表也可用于控制对数据库管理系统 (DBMS) 的文件的访问。 通常,您应允许用户仅通过由数据库供应商提供的程序和实用程序访问这类文件。 请考虑以下命令:

authorize FILE /usr/dbms/xyz uid(*) via(pgm(/usr/dbms/bin/pgm1)) access(U)
authorize FILE /usr/dbms/xyz uid(*) via(pgm(/usr/dbms/bin/pgm2)) access(U)

如果由属于 DBMS 二进制文件目录的程序 pgm1 或程序 pgm2 进行访问,那么这套授权命令允许所有 CA ControlMinder 用户访问 DBMS 系统的文件 xyz。 注意星号在用户操作数中的使用。 星号指定定义到 CA ControlMinder 的所有用户。 除了默认访问权限也适用于未定义到 CA ControlMinder 的用户之外,使用星号在概念上与默认访问权限类似。 请注意,您可以将 _undefined 组用于在 CA ControlMinder 数据库中未定义的用户。

您也可以使用 Unicenter TNG 日历 ACL 属性,根据 Unicenter TNG 日历状态,允许或拒绝对当前资源的特定用户和组的访问。 有两种类型的 Unicenter TNG 日历的 ACL 属性:常规和限制。

例如,以下命令将名为“george”的用户添加到名为“basecalendar”的常规日历的条件访问控件列表中:

auth file file1 uid(george) calendar(basecalendar) access(rw)

以下命令从 Unicenter TNG 日历中删除名为“george”的用户:

auth- file file2 uid(george) calendar(basecalendar)