17c478bd9Sstevel@tonic-gate/* 27c478bd9Sstevel@tonic-gate * CDDL HEADER START 37c478bd9Sstevel@tonic-gate * 47c478bd9Sstevel@tonic-gate * The contents of this file are subject to the terms of the 545916cd2Sjpk * Common Development and Distribution License (the "License"). 645916cd2Sjpk * You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate * 87c478bd9Sstevel@tonic-gate * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate * or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate * See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate * and limitations under the License. 127c478bd9Sstevel@tonic-gate * 137c478bd9Sstevel@tonic-gate * When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate * If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate * fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate * information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate * 197c478bd9Sstevel@tonic-gate * CDDL HEADER END 207c478bd9Sstevel@tonic-gate */ 217c478bd9Sstevel@tonic-gate/* 22f53eecf5SJames Carlson * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 237c478bd9Sstevel@tonic-gate * Use is subject to license terms. 247c478bd9Sstevel@tonic-gate * 257c478bd9Sstevel@tonic-gateINSERT COMMENT 267c478bd9Sstevel@tonic-gate */ 277c478bd9Sstevel@tonic-gate 287c478bd9Sstevel@tonic-gate# 297c478bd9Sstevel@tonic-gate# Privileges can be added to this file at any location, not 307c478bd9Sstevel@tonic-gate# necessarily at the end. For patches, it is probably best to 317c478bd9Sstevel@tonic-gate# add the new privilege at the end; for ordinary releases privileges 327c478bd9Sstevel@tonic-gate# should be ordered alphabetically. 337c478bd9Sstevel@tonic-gate# 347c478bd9Sstevel@tonic-gate 357c478bd9Sstevel@tonic-gateprivilege PRIV_CONTRACT_EVENT 367c478bd9Sstevel@tonic-gate 377c478bd9Sstevel@tonic-gate Allows a process to request critical events without limitation. 387c478bd9Sstevel@tonic-gate Allows a process to request reliable delivery of all events on 397c478bd9Sstevel@tonic-gate any event queue. 407c478bd9Sstevel@tonic-gate 417b209c2cSacruzprivilege PRIV_CONTRACT_IDENTITY 42b26a64aeSjohnlev 437b209c2cSacruz Allows a process to set the service FMRI value of a process 447b209c2cSacruz contract template. 457b209c2cSacruz 467c478bd9Sstevel@tonic-gateprivilege PRIV_CONTRACT_OBSERVER 477c478bd9Sstevel@tonic-gate 487c478bd9Sstevel@tonic-gate Allows a process to observe contract events generated by 497c478bd9Sstevel@tonic-gate contracts created and owned by users other than the process's 507c478bd9Sstevel@tonic-gate effective user ID. 517c478bd9Sstevel@tonic-gate Allows a process to open contract event endpoints belonging to 527c478bd9Sstevel@tonic-gate contracts created and owned by users other than the process's 537c478bd9Sstevel@tonic-gate effective user ID. 547c478bd9Sstevel@tonic-gate 557c478bd9Sstevel@tonic-gateprivilege PRIV_CPC_CPU 567c478bd9Sstevel@tonic-gate 577c478bd9Sstevel@tonic-gate Allow a process to access per-CPU hardware performance counters. 587c478bd9Sstevel@tonic-gate 597c478bd9Sstevel@tonic-gateprivilege PRIV_DTRACE_KERNEL 607c478bd9Sstevel@tonic-gate 617c478bd9Sstevel@tonic-gate Allows DTrace kernel-level tracing. 627c478bd9Sstevel@tonic-gate 637c478bd9Sstevel@tonic-gateprivilege PRIV_DTRACE_PROC 647c478bd9Sstevel@tonic-gate 657c478bd9Sstevel@tonic-gate Allows DTrace process-level tracing. 667c478bd9Sstevel@tonic-gate Allows process-level tracing probes to be placed and enabled in 677c478bd9Sstevel@tonic-gate processes to which the user has permissions. 687c478bd9Sstevel@tonic-gate 697c478bd9Sstevel@tonic-gateprivilege PRIV_DTRACE_USER 707c478bd9Sstevel@tonic-gate 717c478bd9Sstevel@tonic-gate Allows DTrace user-level tracing. 727c478bd9Sstevel@tonic-gate Allows use of the syscall and profile DTrace providers to 737c478bd9Sstevel@tonic-gate examine processes to which the user has permissions. 747c478bd9Sstevel@tonic-gate 757c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_CHOWN 767c478bd9Sstevel@tonic-gate 777c478bd9Sstevel@tonic-gate Allows a process to change a file's owner user ID. 787c478bd9Sstevel@tonic-gate Allows a process to change a file's group ID to one other than 797c478bd9Sstevel@tonic-gate the process' effective group ID or one of the process' 807c478bd9Sstevel@tonic-gate supplemental group IDs. 817c478bd9Sstevel@tonic-gate 827c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_CHOWN_SELF 837c478bd9Sstevel@tonic-gate 847c478bd9Sstevel@tonic-gate Allows a process to give away its files; a process with this 857c478bd9Sstevel@tonic-gate privilege will run as if {_POSIX_CHOWN_RESTRICTED} is not 867c478bd9Sstevel@tonic-gate in effect. 877c478bd9Sstevel@tonic-gate 887c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_DAC_EXECUTE 897c478bd9Sstevel@tonic-gate 907c478bd9Sstevel@tonic-gate Allows a process to execute an executable file whose permission 917c478bd9Sstevel@tonic-gate bits or ACL do not allow the process execute permission. 927c478bd9Sstevel@tonic-gate 937c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_DAC_READ 947c478bd9Sstevel@tonic-gate 957c478bd9Sstevel@tonic-gate Allows a process to read a file or directory whose permission 967c478bd9Sstevel@tonic-gate bits or ACL do not allow the process read permission. 977c478bd9Sstevel@tonic-gate 987c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_DAC_SEARCH 997c478bd9Sstevel@tonic-gate 1007c478bd9Sstevel@tonic-gate Allows a process to search a directory whose permission bits or 1017c478bd9Sstevel@tonic-gate ACL do not allow the process search permission. 1027c478bd9Sstevel@tonic-gate 1037c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_DAC_WRITE 1047c478bd9Sstevel@tonic-gate 1057c478bd9Sstevel@tonic-gate Allows a process to write a file or directory whose permission 1067c478bd9Sstevel@tonic-gate bits or ACL do not allow the process write permission. 1077c478bd9Sstevel@tonic-gate In order to write files owned by uid 0 in the absence of an 1087c478bd9Sstevel@tonic-gate effective uid of 0 ALL privileges are required. 1097c478bd9Sstevel@tonic-gate 11045916cd2Sjpkprivilege PRIV_FILE_DOWNGRADE_SL 11145916cd2Sjpk 11245916cd2Sjpk Allows a process to set the sensitivity label of a file or 11345916cd2Sjpk directory to a sensitivity label that does not dominate the 11445916cd2Sjpk existing sensitivity label. 11545916cd2Sjpk This privilege is interpreted only if the system is configured 11645916cd2Sjpk with Trusted Extensions. 11745916cd2Sjpk 1187c478bd9Sstevel@tonic-gatebasic privilege PRIV_FILE_LINK_ANY 1197c478bd9Sstevel@tonic-gate 1207c478bd9Sstevel@tonic-gate Allows a process to create hardlinks to files owned by a uid 1217c478bd9Sstevel@tonic-gate different from the process' effective uid. 1227c478bd9Sstevel@tonic-gate 1237c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_OWNER 1247c478bd9Sstevel@tonic-gate 1257c478bd9Sstevel@tonic-gate Allows a process which is not the owner of a file or directory 1267c478bd9Sstevel@tonic-gate to perform the following operations that are normally permitted 1277c478bd9Sstevel@tonic-gate only for the file owner: modify that file's access and 1287c478bd9Sstevel@tonic-gate modification times; remove or rename a file or directory whose 1297c478bd9Sstevel@tonic-gate parent directory has the ``save text image after execution'' 1307c478bd9Sstevel@tonic-gate (sticky) bit set; mount a ``namefs'' upon a file; modify 1317c478bd9Sstevel@tonic-gate permission bits or ACL except for the set-uid and set-gid 1327c478bd9Sstevel@tonic-gate bits. 1337c478bd9Sstevel@tonic-gate 1347c478bd9Sstevel@tonic-gateprivilege PRIV_FILE_SETID 1357c478bd9Sstevel@tonic-gate 1367c478bd9Sstevel@tonic-gate Allows a process to change the ownership of a file or write to 1377c478bd9Sstevel@tonic-gate a file without the set-user-ID and set-group-ID bits being 1387c478bd9Sstevel@tonic-gate cleared. 1397c478bd9Sstevel@tonic-gate Allows a process to set the set-group-ID bit on a file or 1407c478bd9Sstevel@tonic-gate directory whose group is not the process' effective group or 1417c478bd9Sstevel@tonic-gate one of the process' supplemental groups. 1427c478bd9Sstevel@tonic-gate Allows a process to set the set-user-ID bit on a file with 1437c478bd9Sstevel@tonic-gate different ownership in the presence of PRIV_FILE_OWNER. 1447c478bd9Sstevel@tonic-gate Additional restrictions apply when creating or modifying a 1457c478bd9Sstevel@tonic-gate set-uid 0 file. 1467c478bd9Sstevel@tonic-gate 14745916cd2Sjpkprivilege PRIV_FILE_UPGRADE_SL 14845916cd2Sjpk 14945916cd2Sjpk Allows a process to set the sensitivity label of a file or 15045916cd2Sjpk directory to a sensitivity label that dominates the existing 15145916cd2Sjpk sensitivity label. 15245916cd2Sjpk This privilege is interpreted only if the system is configured 15345916cd2Sjpk with Trusted Extensions. 15445916cd2Sjpk 155da6c28aaSamwprivilege PRIV_FILE_FLAG_SET 156da6c28aaSamw 157da6c28aaSamw Allows a process to set immutable, nounlink or appendonly 158da6c28aaSamw file attributes. 159da6c28aaSamw 16026f24838Scasperprivilege PRIV_GRAPHICS_ACCESS 1617c478bd9Sstevel@tonic-gate 16226f24838Scasper Allows a process to make privileged ioctls to graphics devices. 16326f24838Scasper Typically only xserver process needs to have this privilege. 16426f24838Scasper A process with this privilege is also allowed to perform 16526f24838Scasper privileged graphics device mappings. 1667c478bd9Sstevel@tonic-gate 16726f24838Scasperprivilege PRIV_GRAPHICS_MAP 1687c478bd9Sstevel@tonic-gate 16926f24838Scasper Allows a process to perform privileged mappings through a 17026f24838Scasper graphics device. 1717c478bd9Sstevel@tonic-gate 1727c478bd9Sstevel@tonic-gateprivilege PRIV_IPC_DAC_READ 1737c478bd9Sstevel@tonic-gate 1747c478bd9Sstevel@tonic-gate Allows a process to read a System V IPC 1757c478bd9Sstevel@tonic-gate Message Queue, Semaphore Set, or Shared Memory Segment whose 1767c478bd9Sstevel@tonic-gate permission bits do not allow the process read permission. 1777c478bd9Sstevel@tonic-gate Allows a process to read remote shared memory whose 1787c478bd9Sstevel@tonic-gate permission bits do not allow the process read permission. 1797c478bd9Sstevel@tonic-gate 1807c478bd9Sstevel@tonic-gateprivilege PRIV_IPC_DAC_WRITE 1817c478bd9Sstevel@tonic-gate 1827c478bd9Sstevel@tonic-gate Allows a process to write a System V IPC 1837c478bd9Sstevel@tonic-gate Message Queue, Semaphore Set, or Shared Memory Segment whose 1847c478bd9Sstevel@tonic-gate permission bits do not allow the process write permission. 1857c478bd9Sstevel@tonic-gate Allows a process to read remote shared memory whose 1867c478bd9Sstevel@tonic-gate permission bits do not allow the process write permission. 1877c478bd9Sstevel@tonic-gate Additional restrictions apply if the owner of the object has uid 0 1887c478bd9Sstevel@tonic-gate and the effective uid of the current process is not 0. 1897c478bd9Sstevel@tonic-gate 1907c478bd9Sstevel@tonic-gateprivilege PRIV_IPC_OWNER 1917c478bd9Sstevel@tonic-gate 1927c478bd9Sstevel@tonic-gate Allows a process which is not the owner of a System 1937c478bd9Sstevel@tonic-gate V IPC Message Queue, Semaphore Set, or Shared Memory Segment to 1947c478bd9Sstevel@tonic-gate remove, change ownership of, or change permission bits of the 1957c478bd9Sstevel@tonic-gate Message Queue, Semaphore Set, or Shared Memory Segment. 1967c478bd9Sstevel@tonic-gate Additional restrictions apply if the owner of the object has uid 0 1977c478bd9Sstevel@tonic-gate and the effective uid of the current process is not 0. 1987c478bd9Sstevel@tonic-gate 19945916cd2Sjpkprivilege PRIV_NET_BINDMLP 20045916cd2Sjpk 20145916cd2Sjpk Allow a process to bind to a port that is configured as a 20245916cd2Sjpk multi-level port(MLP) for the process's zone. This privilege 20345916cd2Sjpk applies to both shared address and zone-specific address MLPs. 20445916cd2Sjpk See tnzonecfg(4) from the Trusted Extensions manual pages for 20545916cd2Sjpk information on configuring MLP ports. 20645916cd2Sjpk This privilege is interpreted only if the system is configured 20745916cd2Sjpk with Trusted Extensions. 20845916cd2Sjpk 2097c478bd9Sstevel@tonic-gateprivilege PRIV_NET_ICMPACCESS 2107c478bd9Sstevel@tonic-gate 2117c478bd9Sstevel@tonic-gate Allows a process to send and receive ICMP packets. 2127c478bd9Sstevel@tonic-gate 21345916cd2Sjpkprivilege PRIV_NET_MAC_AWARE 21445916cd2Sjpk 21545916cd2Sjpk Allows a process to set NET_MAC_AWARE process flag by using 21645916cd2Sjpk setpflags(2). This privilege also allows a process to set 21745916cd2Sjpk SO_MAC_EXEMPT socket option by using setsockopt(3SOCKET). 21845916cd2Sjpk The NET_MAC_AWARE process flag and the SO_MAC_EXEMPT socket 21945916cd2Sjpk option both allow a local process to communicate with an 22045916cd2Sjpk unlabeled peer if the local process' label dominates the 22145916cd2Sjpk peer's default label, or if the local process runs in the 22245916cd2Sjpk global zone. 22345916cd2Sjpk This privilege is interpreted only if the system is configured 22445916cd2Sjpk with Trusted Extensions. 22545916cd2Sjpk 226*5d3b8cb7SBill Sommerfeldprivilege PRIV_NET_MAC_IMPLICIT 227*5d3b8cb7SBill Sommerfeld 228*5d3b8cb7SBill Sommerfeld Allows a process to set SO_MAC_IMPLICIT option by using 229*5d3b8cb7SBill Sommerfeld setsockopt(3SOCKET). This allows a privileged process to 230*5d3b8cb7SBill Sommerfeld transmit implicitly-labeled packets to a peer. 231*5d3b8cb7SBill Sommerfeld This privilege is interpreted only if the system is configured 232*5d3b8cb7SBill Sommerfeld with Trusted Extensions. 233*5d3b8cb7SBill Sommerfeld 234b127ac41SPhilip Kirkprivilege PRIV_NET_OBSERVABILITY 235b127ac41SPhilip Kirk 236b127ac41SPhilip Kirk Allows a process to access /dev/lo0 and the devices in /dev/ipnet/ 237b127ac41SPhilip Kirk while not requiring them to need PRIV_NET_RAWACCESS. 238b127ac41SPhilip Kirk 2397c478bd9Sstevel@tonic-gateprivilege PRIV_NET_PRIVADDR 2407c478bd9Sstevel@tonic-gate 2417c478bd9Sstevel@tonic-gate Allows a process to bind to a privileged port 2427c478bd9Sstevel@tonic-gate number. The privilege port numbers are 1-1023 (the traditional 2437c478bd9Sstevel@tonic-gate UNIX privileged ports) as well as those ports marked as 2447c478bd9Sstevel@tonic-gate "udp/tcp_extra_priv_ports" with the exception of the ports 2457c478bd9Sstevel@tonic-gate reserved for use by NFS. 2467c478bd9Sstevel@tonic-gate 2477c478bd9Sstevel@tonic-gateprivilege PRIV_NET_RAWACCESS 2487c478bd9Sstevel@tonic-gate 2497c478bd9Sstevel@tonic-gate Allows a process to have direct access to the network layer. 2507c478bd9Sstevel@tonic-gate 2517c478bd9Sstevel@tonic-gateunsafe privilege PRIV_PROC_AUDIT 2527c478bd9Sstevel@tonic-gate 2537c478bd9Sstevel@tonic-gate Allows a process to generate audit records. 2547c478bd9Sstevel@tonic-gate Allows a process to get its own audit pre-selection information. 2557c478bd9Sstevel@tonic-gate 2567c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_CHROOT 2577c478bd9Sstevel@tonic-gate 2587c478bd9Sstevel@tonic-gate Allows a process to change its root directory. 2597c478bd9Sstevel@tonic-gate 2607c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_CLOCK_HIGHRES 2617c478bd9Sstevel@tonic-gate 2627c478bd9Sstevel@tonic-gate Allows a process to use high resolution timers. 2637c478bd9Sstevel@tonic-gate 2647c478bd9Sstevel@tonic-gatebasic privilege PRIV_PROC_EXEC 2657c478bd9Sstevel@tonic-gate 2667c478bd9Sstevel@tonic-gate Allows a process to call execve(). 2677c478bd9Sstevel@tonic-gate 2687c478bd9Sstevel@tonic-gatebasic privilege PRIV_PROC_FORK 2697c478bd9Sstevel@tonic-gate 2707c478bd9Sstevel@tonic-gate Allows a process to call fork1()/forkall()/vfork() 2717c478bd9Sstevel@tonic-gate 2727c478bd9Sstevel@tonic-gatebasic privilege PRIV_PROC_INFO 2737c478bd9Sstevel@tonic-gate 2747c478bd9Sstevel@tonic-gate Allows a process to examine the status of processes other 2757c478bd9Sstevel@tonic-gate than those it can send signals to. Processes which cannot 2767c478bd9Sstevel@tonic-gate be examined cannot be seen in /proc and appear not to exist. 2777c478bd9Sstevel@tonic-gate 2787c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_LOCK_MEMORY 2797c478bd9Sstevel@tonic-gate 2807c478bd9Sstevel@tonic-gate Allows a process to lock pages in physical memory. 2817c478bd9Sstevel@tonic-gate 2827c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_OWNER 2837c478bd9Sstevel@tonic-gate 2847c478bd9Sstevel@tonic-gate Allows a process to send signals to other processes, inspect 2857c478bd9Sstevel@tonic-gate and modify process state to other processes regardless of 2867c478bd9Sstevel@tonic-gate ownership. When modifying another process, additional 2877c478bd9Sstevel@tonic-gate restrictions apply: the effective privilege set of the 2887c478bd9Sstevel@tonic-gate attaching process must be a superset of the target process' 2897c478bd9Sstevel@tonic-gate effective, permitted and inheritable sets; the limit set must 2907c478bd9Sstevel@tonic-gate be a superset of the target's limit set; if the target process 2917c478bd9Sstevel@tonic-gate has any uid set to 0 all privilege must be asserted unless the 2927c478bd9Sstevel@tonic-gate effective uid is 0. 2937c478bd9Sstevel@tonic-gate Allows a process to bind arbitrary processes to CPUs. 2947c478bd9Sstevel@tonic-gate 2957c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_PRIOCNTL 2967c478bd9Sstevel@tonic-gate 2977c478bd9Sstevel@tonic-gate Allows a process to elevate its priority above its current level. 2987c478bd9Sstevel@tonic-gate Allows a process to change its scheduling class to any scheduling class, 2997c478bd9Sstevel@tonic-gate including the RT class. 3007c478bd9Sstevel@tonic-gate 3017c478bd9Sstevel@tonic-gatebasic privilege PRIV_PROC_SESSION 3027c478bd9Sstevel@tonic-gate 3037c478bd9Sstevel@tonic-gate Allows a process to send signals or trace processes outside its 3047c478bd9Sstevel@tonic-gate session. 3057c478bd9Sstevel@tonic-gate 3067c478bd9Sstevel@tonic-gateunsafe privilege PRIV_PROC_SETID 3077c478bd9Sstevel@tonic-gate 3087c478bd9Sstevel@tonic-gate Allows a process to set its uids at will. 3097c478bd9Sstevel@tonic-gate Assuming uid 0 requires all privileges to be asserted. 3107c478bd9Sstevel@tonic-gate 3117c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_TASKID 3127c478bd9Sstevel@tonic-gate 3137c478bd9Sstevel@tonic-gate Allows a process to assign a new task ID to the calling process. 3147c478bd9Sstevel@tonic-gate 3157c478bd9Sstevel@tonic-gateprivilege PRIV_PROC_ZONE 3167c478bd9Sstevel@tonic-gate 3177c478bd9Sstevel@tonic-gate Allows a process to trace or send signals to processes in 3187c478bd9Sstevel@tonic-gate other zones. 3197c478bd9Sstevel@tonic-gate 3207c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_ACCT 3217c478bd9Sstevel@tonic-gate 3227c478bd9Sstevel@tonic-gate Allows a process to enable and disable and manage accounting through 3237c478bd9Sstevel@tonic-gate acct(2), getacct(2), putacct(2) and wracct(2). 3247c478bd9Sstevel@tonic-gate 3257c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_ADMIN 3267c478bd9Sstevel@tonic-gate 3277c478bd9Sstevel@tonic-gate Allows a process to perform system administration tasks such 3287c478bd9Sstevel@tonic-gate as setting node and domain name and specifying nscd and coreadm 3297c478bd9Sstevel@tonic-gate settings. 3307c478bd9Sstevel@tonic-gate 3317c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_AUDIT 3327c478bd9Sstevel@tonic-gate 3337c478bd9Sstevel@tonic-gate Allows a process to start the (kernel) audit daemon. 3347c478bd9Sstevel@tonic-gate Allows a process to view and set audit state (audit user ID, 3357c478bd9Sstevel@tonic-gate audit terminal ID, audit sessions ID, audit pre-selection mask). 3367c478bd9Sstevel@tonic-gate Allows a process to turn off and on auditing. 3377c478bd9Sstevel@tonic-gate Allows a process to configure the audit parameters (cache and 3387c478bd9Sstevel@tonic-gate queue sizes, event to class mappings, policy options). 3397c478bd9Sstevel@tonic-gate 3407c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_CONFIG 3417c478bd9Sstevel@tonic-gate 3427c478bd9Sstevel@tonic-gate Allows a process to perform various system configuration tasks. 3437c478bd9Sstevel@tonic-gate Allows a process to add and remove swap devices; when adding a swap 3447c478bd9Sstevel@tonic-gate device, a process must also have sufficient privileges to read from 3457c478bd9Sstevel@tonic-gate and write to the swap device. 3467c478bd9Sstevel@tonic-gate 3477c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_DEVICES 3487c478bd9Sstevel@tonic-gate 3497c478bd9Sstevel@tonic-gate Allows a process to successfully call a kernel module that 3507c478bd9Sstevel@tonic-gate calls the kernel drv_priv(9F) function to check for allowed 3517c478bd9Sstevel@tonic-gate access. 3527c478bd9Sstevel@tonic-gate Allows a process to open the real console device directly. 3537c478bd9Sstevel@tonic-gate Allows a process to open devices that have been exclusively opened. 3547c478bd9Sstevel@tonic-gate 3557c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_IPC_CONFIG 3567c478bd9Sstevel@tonic-gate 3577c478bd9Sstevel@tonic-gate Allows a process to increase the size of a System V IPC Message 3587c478bd9Sstevel@tonic-gate Queue buffer. 3597c478bd9Sstevel@tonic-gate 3607c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_LINKDIR 3617c478bd9Sstevel@tonic-gate 3627c478bd9Sstevel@tonic-gate Allows a process to unlink and link directories. 3637c478bd9Sstevel@tonic-gate 3647c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_MOUNT 3657c478bd9Sstevel@tonic-gate 3667c478bd9Sstevel@tonic-gate Allows filesystem specific administrative procedures, such as 3677c478bd9Sstevel@tonic-gate filesystem configuration ioctls, quota calls and creation/deletion 3687c478bd9Sstevel@tonic-gate of snapshots. 3697c478bd9Sstevel@tonic-gate Allows a process to mount and unmount filesystems which would 3707c478bd9Sstevel@tonic-gate otherwise be restricted (i.e., most filesystems except 3717c478bd9Sstevel@tonic-gate namefs). 3727c478bd9Sstevel@tonic-gate A process performing a mount operation needs to have 3737c478bd9Sstevel@tonic-gate appropriate access to the device being mounted (read-write for 3747c478bd9Sstevel@tonic-gate "rw" mounts, read for "ro" mounts). 3757c478bd9Sstevel@tonic-gate A process performing any of the aforementioned 3767c478bd9Sstevel@tonic-gate filesystem operations needs to have read/write/owner 3777c478bd9Sstevel@tonic-gate access to the mount point. 3787c478bd9Sstevel@tonic-gate Only regular files and directories can serve as mount points 3797c478bd9Sstevel@tonic-gate for processes which do not have all zone privileges asserted. 3807c478bd9Sstevel@tonic-gate Unless a process has all zone privileges, the mount(2) 3817c478bd9Sstevel@tonic-gate system call will force the "nosuid" and "restrict" options, the 3827c478bd9Sstevel@tonic-gate latter only for autofs mountpoints. 3837c478bd9Sstevel@tonic-gate Regardless of privileges, a process running in a non-global zone may 3847c478bd9Sstevel@tonic-gate only control mounts performed from within said zone. 3857c478bd9Sstevel@tonic-gate Outside the global zone, the "nodevices" option is always forced. 3867c478bd9Sstevel@tonic-gate 3872b24ab6bSSebastien Royprivilege PRIV_SYS_IPTUN_CONFIG 3882b24ab6bSSebastien Roy 3892b24ab6bSSebastien Roy Allows a process to configure IP tunnel links. 3902b24ab6bSSebastien Roy 391eae72b5bSSebastien Royprivilege PRIV_SYS_DL_CONFIG 392eae72b5bSSebastien Roy 3932b24ab6bSSebastien Roy Allows a process to configure all classes of datalinks, including 3942b24ab6bSSebastien Roy configuration allowed by PRIV_SYS_IPTUN_CONFIG. 395eae72b5bSSebastien Roy 396f4b3ec61Sdh155122privilege PRIV_SYS_IP_CONFIG 3977c478bd9Sstevel@tonic-gate 398eae72b5bSSebastien Roy Allows a process to configure a system's IP interfaces and routes. 3997c478bd9Sstevel@tonic-gate Allows a process to configure network parameters using ndd. 4007c478bd9Sstevel@tonic-gate Allows a process access to otherwise restricted information using ndd. 401f4b3ec61Sdh155122 Allows a process to configure IPsec. 402f4b3ec61Sdh155122 Allows a process to pop anchored STREAMs modules with matching zoneid. 403f4b3ec61Sdh155122 404f4b3ec61Sdh155122privilege PRIV_SYS_NET_CONFIG 405f4b3ec61Sdh155122 406f53eecf5SJames Carlson Allows all that PRIV_SYS_IP_CONFIG, PRIV_SYS_DL_CONFIG, and 407f53eecf5SJames Carlson PRIV_SYS_PPP_CONFIG allow. 4087c478bd9Sstevel@tonic-gate Allows a process to push the rpcmod STREAMs module. 4097c478bd9Sstevel@tonic-gate Allows a process to INSERT/REMOVE STREAMs modules on locations other 4107c478bd9Sstevel@tonic-gate than the top of the module stack. 4117c478bd9Sstevel@tonic-gate 4127c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_NFS 4137c478bd9Sstevel@tonic-gate 4147c478bd9Sstevel@tonic-gate Allows a process to perform Sun private NFS specific system calls. 4157c478bd9Sstevel@tonic-gate Allows a process to bind to ports reserved by NFS: ports 2049 (nfs) 4167c478bd9Sstevel@tonic-gate and port 4045 (lockd). 4177c478bd9Sstevel@tonic-gate 418f53eecf5SJames Carlsonprivilege PRIV_SYS_PPP_CONFIG 419f53eecf5SJames Carlson 420f53eecf5SJames Carlson Allows a process to create and destroy PPP (sppp) interfaces. 421f53eecf5SJames Carlson Allows a process to configure PPP tunnels (sppptun). 422f53eecf5SJames Carlson 4237c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_RES_CONFIG 4247c478bd9Sstevel@tonic-gate 4257c478bd9Sstevel@tonic-gate Allows a process to create and delete processor sets, assign 4267c478bd9Sstevel@tonic-gate CPUs to processor sets and override the PSET_NOESCAPE property. 4277c478bd9Sstevel@tonic-gate Allows a process to change the operational status of CPUs in 4287c478bd9Sstevel@tonic-gate the system using p_online(2). 4297c478bd9Sstevel@tonic-gate Allows a process to configure resource pools and to bind 4307c478bd9Sstevel@tonic-gate processes to pools 4317c478bd9Sstevel@tonic-gate 4327c478bd9Sstevel@tonic-gateunsafe privilege PRIV_SYS_RESOURCE 4337c478bd9Sstevel@tonic-gate 4347c478bd9Sstevel@tonic-gate Allows a process to modify the resource limits specified 4357c478bd9Sstevel@tonic-gate by setrlimit(2) and setrctl(2) without restriction. 4367c478bd9Sstevel@tonic-gate Allows a process to exceed the per-user maximum number of 4377c478bd9Sstevel@tonic-gate processes. 4387c478bd9Sstevel@tonic-gate Allows a process to extend or create files on a filesystem that 4397c478bd9Sstevel@tonic-gate has less than minfree space in reserve. 4407c478bd9Sstevel@tonic-gate 441da6c28aaSamwprivilege PRIV_SYS_SMB 442da6c28aaSamw 443da6c28aaSamw Allows a process to access the Sun private SMB kernel module. 444da6c28aaSamw Allows a process to bind to ports reserved by NetBIOS and SMB: 445da6c28aaSamw ports 137 (NBNS), 138 (NetBIOS Datagram Service), 139 (NetBIOS 446da6c28aaSamw Session Service and SMB-over-NBT) and 445 (SMB-over-TCP). 447da6c28aaSamw 4487c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_SUSER_COMPAT 4497c478bd9Sstevel@tonic-gate 4507c478bd9Sstevel@tonic-gate Allows a process to successfully call a third party loadable module 4517c478bd9Sstevel@tonic-gate that calls the kernel suser() function to check for allowed access. 4527c478bd9Sstevel@tonic-gate This privilege exists only for third party loadable module 4537c478bd9Sstevel@tonic-gate compatibility and is not used by Solaris proper. 4547c478bd9Sstevel@tonic-gate 4557c478bd9Sstevel@tonic-gateprivilege PRIV_SYS_TIME 4567c478bd9Sstevel@tonic-gate 4577c478bd9Sstevel@tonic-gate Allows a process to manipulate system time using any of the 4587c478bd9Sstevel@tonic-gate appropriate system calls: stime, adjtime, ntp_adjtime and 4597c478bd9Sstevel@tonic-gate the IA specific RTC calls. 46045916cd2Sjpk 46145916cd2Sjpkprivilege PRIV_SYS_TRANS_LABEL 46245916cd2Sjpk 46345916cd2Sjpk Allows a process to translate labels that are not dominated 46445916cd2Sjpk by the process' sensitivity label to and from an external 46545916cd2Sjpk string form. 46645916cd2Sjpk This privilege is interpreted only if the system is configured 46745916cd2Sjpk with Trusted Extensions. 46845916cd2Sjpk 469b26a64aeSjohnlevprivilege PRIV_VIRT_MANAGE 470b26a64aeSjohnlev 471b26a64aeSjohnlev Allows a process to manage virtualized environments such as 472b26a64aeSjohnlev xVM(5). 473b26a64aeSjohnlev 47445916cd2Sjpkprivilege PRIV_WIN_COLORMAP 47545916cd2Sjpk 47645916cd2Sjpk Allows a process to override colormap restrictions. 47745916cd2Sjpk Allows a process to install or remove colormaps. 47845916cd2Sjpk Allows a process to retrieve colormap cell entries allocated 47945916cd2Sjpk by other processes. 48045916cd2Sjpk This privilege is interpreted only if the system is configured 48145916cd2Sjpk with Trusted Extensions. 48245916cd2Sjpk 48345916cd2Sjpkprivilege PRIV_WIN_CONFIG 48445916cd2Sjpk 48545916cd2Sjpk Allows a process to configure or destroy resources that are 48645916cd2Sjpk permanently retained by the X server. 48745916cd2Sjpk Allows a process to use SetScreenSaver to set the screen 48845916cd2Sjpk saver timeout value. 48945916cd2Sjpk Allows a process to use ChangeHosts to modify the display 49045916cd2Sjpk access control list. 49145916cd2Sjpk Allows a process to use GrabServer. 49245916cd2Sjpk Allows a process to use the SetCloseDownMode request which 49345916cd2Sjpk may retain window, pixmap, colormap, property, cursor, font, 49445916cd2Sjpk or graphic context resources. 49545916cd2Sjpk This privilege is interpreted only if the system is configured 49645916cd2Sjpk with Trusted Extensions. 49745916cd2Sjpk 49845916cd2Sjpkprivilege PRIV_WIN_DAC_READ 49945916cd2Sjpk 50045916cd2Sjpk Allows a process to read from a window resource that it does 50145916cd2Sjpk not own (has a different user ID). 50245916cd2Sjpk This privilege is interpreted only if the system is configured 50345916cd2Sjpk with Trusted Extensions. 50445916cd2Sjpk 50545916cd2Sjpkprivilege PRIV_WIN_DAC_WRITE 50645916cd2Sjpk 50745916cd2Sjpk Allows a process to write to or create a window resource that 50845916cd2Sjpk it does not own (has a different user ID). A newly created 50945916cd2Sjpk window property is created with the window's user ID. 51045916cd2Sjpk This privilege is interpreted only if the system is configured 51145916cd2Sjpk with Trusted Extensions. 51245916cd2Sjpk 51345916cd2Sjpkprivilege PRIV_WIN_DEVICES 51445916cd2Sjpk 51545916cd2Sjpk Allows a process to perform operations on window input devices. 51645916cd2Sjpk Allows a process to get and set keyboard and pointer controls. 51745916cd2Sjpk Allows a process to modify pointer button and key mappings. 51845916cd2Sjpk This privilege is interpreted only if the system is configured 51945916cd2Sjpk with Trusted Extensions. 52045916cd2Sjpk 52145916cd2Sjpkprivilege PRIV_WIN_DGA 52245916cd2Sjpk 52345916cd2Sjpk Allows a process to use the direct graphics access (DGA) X protocol 52445916cd2Sjpk extensions. Direct process access to the frame buffer is still 52545916cd2Sjpk required. Thus the process must have MAC and DAC privileges that 52645916cd2Sjpk allow access to the frame buffer, or the frame buffer must be 52745916cd2Sjpk allocated to the process. 52845916cd2Sjpk This privilege is interpreted only if the system is configured 52945916cd2Sjpk with Trusted Extensions. 53045916cd2Sjpk 53145916cd2Sjpkprivilege PRIV_WIN_DOWNGRADE_SL 53245916cd2Sjpk 53345916cd2Sjpk Allows a process to set the sensitivity label of a window resource 53445916cd2Sjpk to a sensitivity label that does not dominate the existing 53545916cd2Sjpk sensitivity label. 53645916cd2Sjpk This privilege is interpreted only if the system is configured 53745916cd2Sjpk with Trusted Extensions. 53845916cd2Sjpk 53945916cd2Sjpkprivilege PRIV_WIN_FONTPATH 54045916cd2Sjpk 54145916cd2Sjpk Allows a process to set a font path. 54245916cd2Sjpk This privilege is interpreted only if the system is configured 54345916cd2Sjpk with Trusted Extensions. 54445916cd2Sjpk 54545916cd2Sjpkprivilege PRIV_WIN_MAC_READ 54645916cd2Sjpk 54745916cd2Sjpk Allows a process to read from a window resource whose sensitivity 54845916cd2Sjpk label is not equal to the process sensitivity label. 54945916cd2Sjpk This privilege is interpreted only if the system is configured 55045916cd2Sjpk with Trusted Extensions. 55145916cd2Sjpk 55245916cd2Sjpkprivilege PRIV_WIN_MAC_WRITE 55345916cd2Sjpk 55445916cd2Sjpk Allows a process to create a window resource whose sensitivity 55545916cd2Sjpk label is not equal to the process sensitivity label. 55645916cd2Sjpk A newly created window property is created with the window's 55745916cd2Sjpk sensitivity label. 55845916cd2Sjpk This privilege is interpreted only if the system is configured 55945916cd2Sjpk with Trusted Extensions. 56045916cd2Sjpk 56145916cd2Sjpkprivilege PRIV_WIN_SELECTION 56245916cd2Sjpk 56345916cd2Sjpk Allows a process to request inter-window data moves without the 56445916cd2Sjpk intervention of the selection confirmer. 56545916cd2Sjpk This privilege is interpreted only if the system is configured 56645916cd2Sjpk with Trusted Extensions. 56745916cd2Sjpk 56845916cd2Sjpkprivilege PRIV_WIN_UPGRADE_SL 56945916cd2Sjpk 57045916cd2Sjpk Allows a process to set the sensitivity label of a window 57145916cd2Sjpk resource to a sensitivity label that dominates the existing 57245916cd2Sjpk sensitivity label. 57345916cd2Sjpk This privilege is interpreted only if the system is configured 57445916cd2Sjpk with Trusted Extensions. 57545916cd2Sjpk 576b26a64aeSjohnlevprivilege PRIV_XVM_CONTROL 577b26a64aeSjohnlev 578b26a64aeSjohnlev Allows a process access to the xVM(5) control devices for 579b26a64aeSjohnlev managing guest domains and the hypervisor. This privilege is 580b26a64aeSjohnlev used only if booted into xVM on x86 platforms. 581b26a64aeSjohnlev 5827c478bd9Sstevel@tonic-gateset PRIV_EFFECTIVE 5837c478bd9Sstevel@tonic-gate 5847c478bd9Sstevel@tonic-gate Set of privileges currently in effect. 5857c478bd9Sstevel@tonic-gate 5867c478bd9Sstevel@tonic-gateset PRIV_INHERITABLE 5877c478bd9Sstevel@tonic-gate 5887c478bd9Sstevel@tonic-gate Set of privileges that comes into effect on exec. 5897c478bd9Sstevel@tonic-gate 5907c478bd9Sstevel@tonic-gateset PRIV_PERMITTED 5917c478bd9Sstevel@tonic-gate 5927c478bd9Sstevel@tonic-gate Set of privileges that can be put into the effective set without 5937c478bd9Sstevel@tonic-gate restriction. 5947c478bd9Sstevel@tonic-gate 5957c478bd9Sstevel@tonic-gateset PRIV_LIMIT 5967c478bd9Sstevel@tonic-gate 5977c478bd9Sstevel@tonic-gate Set of privileges that determines the absolute upper bound of 5987c478bd9Sstevel@tonic-gate privileges this process and its off-spring can obtain. 599