/etc/security/privcmds 文件

用途

包含特权命令的安全属性。

描述

/etc/security/privcmds 文件是一个 ASCII 节文件,其中包含特权命令及其安全性属性。 /etc/security/privcmds 文件中的每个节都由命令的完整路径名标识,后跟冒号 (:)。 每个节都包含 Attribute = Value 格式的属性。 路径名必须是命令的绝对路径,并且不能包含符号链接目录,也不能是该命令的符号链接。 每个 属性 = 值 对都以换行符结束,并且每个节都以一个附加换行符结束。 有关节的示例,请参阅 示例

在通过 塞斯特 命令将整个特权命令数据库发送到内核安全性表之前,或者在重新引导系统之前,对 特权 文件进行的更改不会影响安全注意事项。

修改和列示 privcmds 文件中的条目

请勿直接编辑 /etc/security/privcmds 文件。 请使用以下命令和子例程来处理特权命令数据库:
setsecattr
/etc/security/privcmds 文件中添加命令条目或更改命令条目。
Lssecattr
显示属性及其值。
Rmsecattr
特权 文件中除去命令。
要编写影响 /etc/security/privcmds 文件中的条目的程序,请使用以下一个或多个子例程:
  • Getcmdattr
  • 获取命令行参数
  • 普特 cmdattr
  • 设置命令属性

属性

此文件中的一个节包含以下一个或多个安全性属性:

描述
accessauths

将访问权限指定为以逗号分隔的权限名称列表。 允许其当前会话具有列表中其中一个权限的用户运行该命令。 您最多可以指定 16 个权限。

此属性还允许三个特殊值:
允许所有者
允许使用 基于角色的访问控制 (RBAC) 框架作为命令所有者。 如果指定了 存取器 属性,那么当命令所有者运行命令时, RBAC 框架将管理分配给该进程的特权。 如果未指定 存取器 属性,或者运行该命令的用户在 存取器 属性中没有权限,那么 DAC 将控制执行,并且 RBAC 框架将不授予任何其他特权。
允许组
允许将 RBAC 框架用于该组。 如果指定了 存取器 属性,那么在组运行命令时, RBAC 框架将管理分配给该进程的特权。 如果未指定 存取器 属性,或者运行该命令的用户在 存取器 属性中没有权限,那么 DAC 将控制执行,并且 RBAC 框架将不授予任何其他特权。
全部分配
允许将 RBAC 框架用于每个人。 如果指定了 存取器 属性,那么当任何人运行该命令时, RBAC 框架将管理分配给该进程的特权。 如果未指定 存取器 属性,或者运行该命令的用户在 存取器 属性中没有权限,那么 DAC 将控制执行,并且 RBAC 框架将不授予任何其他特权。
authprivs 指定在特定授权的基础上分配给进程的授权特权。 运行该命令的用户必须通过 存取器 属性获取对该命令的访问权才能启用 授权特权 属性。 对于所处理的列表中的每个权限,将授予关联的特权集。 授权和特权对的最大数目为 16。 授权及其相应的特权由等号 (=) 分隔,个别特权由加号 (+) 分隔,授权和特权对由逗号分隔,如以下行中所示:
auth=priv+priv...,auth=priv+priv...,...
此属性还支持三个特殊授权值: ALLOW_OWNERALLOW_GROUP 全部分配,以分别指定授予命令所有者,组或每个人的其他特权。
authroles 角色或角色的列表。 必须对具有这些功能的用户进行认证,以允许执行该命令。 最多可指定十六个角色。
消息集 指定消息目录的文件名,该目录包含授权的单行描述。 该值是一个字符串。
innateprivs 指定在运行该命令期间分配给进程的特权的逗号分隔列表。 仅当通过访问权限对命令调用进行了授权时,才会将指定的特权分配给进程。
inheritprivs 指定传递给子进程的特权列表 (以逗号分隔)。
euid 指定在命令运行期间要采用的有效用户标识。
egid 指定在运行该命令期间要采用的有效组标识。
ruid 指定在运行命令期间要假定的真实用户标识。
secflags 指定以逗号分隔的文件安全性标志列表。 以下值是有效的:
FSF_EPS
执行时将进程最大特权集装入到有效特权集中。

安全性

Root 用户和安全组都拥有此文件。 向 root 用户授予读和写访问权。 对其他用户和组的访问权取决于系统的安全策略。

示例

命令 的以下示例显示了文件中的典型节:
/usr/bin/myprog:
        accessauths = aix.security.user.create,aix.security.user.change
        authprivs = aix.ras.audit=PV_AU_ADMIN
        innateprivs = PV_DAC_R,PV_DAC_W
        secflags = FSF_EPS
此条目指示运行此命令的用户必须处于具有 存取器 属性中列出的其中一个权限的角色会话中才能运行此命令。 如果此条件为 true ,那么会将 因纳特普里夫斯 属性中列出的特权授予结果进程。 此外,如果运行此命令的用户具有 授权特权 属性中列出的其中一个特权权限,那么将向该进程授予其他关联特权。