当将特权直接指定给用户时,实际上,特权位于每个 shell 中。未直接将特权指定给用户时,用户必须打开一个配置文件 shell。例如,当具有指定特权的命令位于用户权限配置文件列表内的权限配置文件中时,用户必须在配置文件 shell 中执行此命令。
要在联机时查看特权,请参见 privileges(5)。显示的特权格式由开发者使用。
$ man privileges Standards, Environments, and Macros privileges(5) NAME privileges - process privilege model ... The defined privileges are: PRIV_CONTRACT_EVENT Allow a process to request reliable delivery of events to an event endpoint. Allow a process to include events in the critical event set term of a template which could be generated in volume by the user. ...示例 9-2 查看直接指定的特权
如果已经为您直接指定了特权,则基本特权集包含的特权会多于缺省的基本特权集。在以下示例中,用户能始终访问 proc_clock_highres 特权。
$ /usr/bin/whoami jdoe $ ppriv -v $$ 1800: pfksh flags = <none> E: file_link_any,…,proc_clock_highres,proc_session I: file_link_any,…,proc_clock_highres,proc_session P: file_link_any,…,proc_clock_highres,proc_session L: cpc_cpu,dtrace_kernel,dtrace_proc,dtrace_user,…,sys_time $ ppriv -vl proc_clock_highres Allows a process to use high resolution timers.
要查看授权,请使用 auths 命令:
$ auths list
此命令的输出将生成指定给用户的授权的摘要,此摘要比以前更加易读(每行一个)。从 Oracle Solaris 11.1 开始,auths 命令添加了几个新选项。例如,check 选项对于脚本处理非常有用。其他新选项提供了在 files 或 LDAP 中添加、修改和删除授权的功能。请参见 auths(1)。