您作为系统管理员应负责指定权限。通常,可在权限配置文件中将权限指定给命令。然后,将权限配置文件指定给角色或用户。Solaris Management Console 提供了图形用户界面 (graphical user interface, GUI) 来指定权限。还可以使用 smuser 和 smrole 等命令来指定权限。有关如何使用 GUI 来指定权限的更多信息,请参见第 9 章,使用基于角色的访问控制(任务)。
还可以将权限直接指定给用户。如果您相信某些用户在其整个会话过程中会负责地使用某种权限,则可以直接指定此权限。适合直接指定的权限是具有有限影响的权限,如 proc_clock_highres。不适合直接指定的权限是具有广泛影响的权限,如 file_dac_write。
还可以拒绝为用户或系统指定权限。从用户或系统的初始可继承集或限制集中删除权限时必须谨慎。
用户和角色具有可继承权限集以及限制权限集。限制集不能扩展,因为限制集最初包括所有权限。可以针对用户、角色和系统扩展初始可继承集。还可以将不在可继承集中的权限指定给进程。
按进程指定权限是最精确的添加权限方法。可以通过允许某用户承担某种角色,扩展此用户可执行的特权操作的数目。可以为角色指定包括具有已添加权限的命令的配置文件。用户承担角色时,便会获取此角色的配置文件 shell。通过在角色的 shell 中键入角色配置文件中的命令,便可使用已添加的权限执行这些命令。
还可以将配置文件指定给用户而不是用户承担的角色。配置文件可包括具有已添加权限的命令。用户打开配置文件 shell(如 pfksh)时,便可使用权限执行用户配置文件中的命令。在常规 shell 中,不使用权限执行命令。特权进程只能在特权 shell 中执行。
扩展用户、角色或系统的初始可继承权限集是一种风险性较高的指定权限方法。可继承集中的所有权限都位于允许集和有效集中。用户或角色在 shell 中键入的所有命令都可以使用直接指定的权限。使用直接指定的权限,用户或角色可以轻松执行可能超出其管理职责范围的操作。
向某系统上的初始可继承权限集中添加权限后,所有登录到此系统的用户都会具有更大的基本权限集。通过这种直接指定,系统的所有用户都可以轻松执行可能超出普通用户执行范围的操作。
通过删除权限,可以防止用户和角色执行特定的任务。可以从初始可继承集和限制集中删除权限。分配小于缺省集的初始可继承集或限制集之前,应谨慎地对权限删除进行测试。通过从初始可继承集中删除权限,可能会使用户无法登录。从限制集中删除权限后,传统的 setuid 程序可能会失败,因为此程序需要的权限已被删除。
脚本与命令一样,也是可执行文件。因此,在权限配置文件中,可以将权限添加到脚本中,就像将权限添加到命令中一样。已指定有配置文件的用户或角色在配置文件 shell 中执行脚本时,将会使用已添加的权限来运行脚本。如果脚本包含需要权限的命令,则具有已添加权限的命令也应该位于配置文件中。
可识别权限的程序可以限制每个进程的权限。包含可识别权限的程序的作业是指为可执行文件指定此程序所需的确切权限。然后测试此程序,查看此程序是否成功执行了其任务。还可以检查此程序是否误用了其权限。