lssecattr 命令

用途

显示命令、设备、特权文件、进程或域指派对象的安全属性。

语法

lssecattr [-R load_module] { -c | -d | -p [-] [-一个]| -f | -o } [-C | -F ] [- 列表] { 全部 | 名称 [,名称 ] ... }

描述

lssecattr 命令列示一个或多个命令、设备或进程的安全性属性。 此命令将 Name 参数解释成命令、设备、特权文件、进程或者域指派对象,这取决于您是指定了 -c 标志(命令)、-d 标志(设备)、-f 标志(特权文件)、-p 标志(进程)还是 -o 标志(域指派对象)。 如果指定了 -c 标志,Name 参数必须包含到这些命令的完整路径。 如果指定了 -c 标志,Name 参数必须包含到这些设备的完整路径。 如果指定了 -f 标志,Name 参数必须包含到该文件的完整路径。 如果指定了 -p 标志, Name 必须是系统上的活动进程的数字进程标识(PID)。 如果指定了 -o 标志,那么 Name 参数必须是完整路径 (如果它是文件或设备) ,并且对于端口或端口范围,必须以 TCP_ 或 UDP_ 作为前缀。使用 ALL 关键字列出所有命令,设备,文件或进程的安全性属性。 缺省情况下,lssecattr 命令显示指定对象的所有安全性属性。 要查看所选属性,请使用 -a List 标志。

如果系统配置为使用来自多个域的数据库,特权命令,特权设备和特权文件 (由 Name 参数指定) , 按 /etc/nscontrol.conf 文件中相应数据库节的 secorder 属性指定的顺序从域中搜索。 如果多个域中存在重复的条目,那么仅列出第一个条目实例。 使用 -R 标志可列示特定域的对象。

缺省情况下 lssecattr 命令在一行上列出安全性属性。 它按照 Attribute=Value 的定义显示属性信息,每项信息用空格分隔。 要以节格式列出这些属性,请使用 -F 标志。 要以冒号分隔记录的形式列出这些属性,请使用 -C 标志。

标志

描述
-a 列表 列出要显示的属性。 List 变量要求属性之间存在空格,才能列示多个属性。 如果指定空列表,那么将只显示对象名称。 List 变量中可以列示哪些属性取决于指定了 -c-d-p 标志中的哪一个。 有关各标志的有效属性名称列表,请参阅 setsecattr 命令。
-A 显示所指定进程使用的权限列表。 此标志只能与 -p 标志配合使用。
-c Name 参数指定系统上在 /etc/security/privcmds 特权命令数据库中具有条目的一个或多个命令的完整路径。
-C 以冒号分隔的记录格式显示特权安全性属性,如下所示:
#name:attribute1:attribute2: ...
name:value1:value2: ...
name:value1:value2: ...
输出的前面为一个注释行,该注释行具有以冒号分隔的每个字段中说明的有关属性的详细信息。 如果指定 -a 标志,那么属性的顺序与 -a 标志中指定的顺序匹配。 如果对象没有给定属性的值,仍然会输出该字段,但它为空。 各条目中的最后一个字段以换行符而非冒号结尾。
-d Name 参数指定系统上在 /etc/security/privdevs 特权设备数据库中具有条目的一个或多个设备的完整路径。
-f Name 参数指定系统上在 /etc/security/privfiles 特权文件数据库中具有条目的一个或多个文件的完整路径。
-f 以节格式显示输出,每一节以对象名标识。 每个 Attribute=Value 对在单独的行上列出:
Name:       
       attribute1=value       
       attribute2=value        
       attribute3=value
-h 显示进程的特权的完整层次结构。 缺省情况下,将仅列出特权的最高级别。
-O Name 参数指定 /etc/security/domobjs 域指派对象数据库中的下列其中一个条目。
  • 系统上一个或多个设备/文件的完整路径
  • 端口或端口范围(带有 TCP_ 或 UDP_ 前缀)
  • 网络接口
-p Name 参数指定系统上一个或多个活动进程的数字进程标识(PID)。

-p 标志不能与 -R 标志列示在一起,因为它们互斥。

-R load_module 指定从中查询 Name 条目的可装入模块。

参数

描述
ALL 用于获取所有命令、设备或进程。
名称 要修改的对象。 对 Name 参数的解释视您指定的 -c-d-p--o 标志不同而有所变化。

安全性

lssecattr 命令是特权命令。 其所有者为 root 用户和安全性组,其方式设置为 755。 您必须承担至少具有下面的一种权限的角色,才能成功运行命令:

描述
aix.security.cmd.list 使用 -c 标志列出命令的属性所需。
aix.security.device.list 使用 -d 标志列出设备的属性所需。
aix.security.file.list 使用 -f 标志列出文件的属性所需。
aix.security.proc.list 使用 -p 标志列出进程的属性所需。
aix.security.dobject.list 必须拥有此权限才能使用 -o 标志来列示域指派对象的属性。

访问的文件

描述
文件 方式
/etc/security/privcmds r
/etc/security/privdevs r
/etc/security/privfiles r
/etc/security/domobjs r

示例

  1. 要显示 /usr/sbin/mount 命令的访问授权和固有特权,请输入以下命令:
    lssecattr -c -a accessauths innateprivs /usr/sbin/mount
  2. 要显示 /dev/mydev 设备的所有安全性属性,请输入以下命令:
    lssecattr -d /dev/mydev
  3. 要显示 LDAP 中的 /dev/mydev 设备的所有安全性属性,请输入以下命令:
    lssecattr -R LDAP -d /dev/mydev
  4. 要以冒号格式显示两个进程的有效与已用特权集的特权,请输入以下命令:
    lssecattr -p -C -a eprivs uprivs 38483,57382
  5. 要显示 /etc/security/user 文件的读取权限列表,请输入以下命令:
    lssecattr -f -a readauths /etc/security/user
  6. 要显示进程以节格式使用的权限,请输入以下命令:
    lssecattr -F -p -A 34890
  7. 要显示 /dev/dev1 设备的所有域属性,请输入以下命令:
    lssecattr -o /dev/dev1
  8. 要显示网络接口 en0 设备的所有域属性,请输入以下命令:
    lssecattr -o en0