特权应用程序是可以覆盖系统控制并检查特定用户 ID(user ID, UID)、组 ID(group ID, GID)、授权或特权的应用程序。这些访问控制元素是由系统管理员指定的。有关管理员如何使用这些访问控制元素的概要讨论,请参见Assigning Rights to Users and Roles in Securing Users and Processes in Oracle Solaris 11.2 。
Oracle Solaris 操作系统为开发者提供了两个元素,使用这两个元素可以授予更为精细的特权:
特权-特权是一项可授予给应用程序的独立的权限。被授予特权后,一个进程可以执行原本会被 Oracle Solaris OS 禁止的操作。例如,没有正确的文件权限,进程通常无法打开数据文件。file_dac_read 特权可向进程提供覆盖 UNIX 文件和读取文件的权限。在内核级别执行操作必须具备特权。
授权-授权是可以执行某一类操作的权限,如果不具备授权,则安全策略会禁止这类操作。授权可指定给某个角色或某位用户。在用户级别执行操作必须具备授权。
授权和特权之间的区别在于其级别,在某个级别允许谁可以执行某项操作的策略。在内核级别执行操作必须具备特权。如果不具备正确的特权,某项进程无法在特权应用程序中执行特定的操作。授权在用户应用程序级别强制执行策略。可能需要具备某项特权才能访问某个特权应用程序或者才能在特权应用程序中执行特定的操作。