Blob Blame History Raw
<html>
<head>
<title>
 Security Enhanced Linux Reference Policy
 </title>
<style type="text/css" media="all">@import "style.css";</style>
</head>
<body>
<div id="Header">Security Enhanced Linux Reference Policy</div>
<div id='Menu'>
	
		<a href="admin.html">+&nbsp;
		admin</a></br/>
		<div id='subitem'>
		
		</div>
	
		<a href="apps.html">+&nbsp;
		apps</a></br/>
		<div id='subitem'>
		
		</div>
	
		<a href="kernel.html">+&nbsp;
		kernel</a></br/>
		<div id='subitem'>
		
		</div>
	
		<a href="services.html">+&nbsp;
		services</a></br/>
		<div id='subitem'>
		
		</div>
	
		<a href="system.html">+&nbsp;
		system</a></br/>
		<div id='subitem'>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_authlogin.html'>
			authlogin</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_clock.html'>
			clock</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_corecommands.html'>
			corecommands</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_domain.html'>
			domain</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_files.html'>
			files</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_fstools.html'>
			fstools</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_getty.html'>
			getty</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_hostname.html'>
			hostname</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_hotplug.html'>
			hotplug</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_init.html'>
			init</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_iptables.html'>
			iptables</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_libraries.html'>
			libraries</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_locallogin.html'>
			locallogin</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_logging.html'>
			logging</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_lvm.html'>
			lvm</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_miscfiles.html'>
			miscfiles</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_modutils.html'>
			modutils</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_mount.html'>
			mount</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_selinuxutil.html'>
			selinuxutil</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_sysnetwork.html'>
			sysnetwork</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_udev.html'>
			udev</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_unconfined.html'>
			unconfined</a><br/>
		
			&nbsp;&nbsp;&nbsp;-&nbsp;<a href='system_userdomain.html'>
			userdomain</a><br/>
		
		</div>
	
	<br/><p/>
	<a href="interfaces.html">*&nbsp;Interface Index</a>
	<br/><p/>
	<a href="templates.html">*&nbsp;Template Index</a>
</div>

<div id="Content">
<a name="top":></a>
<h1>Layer: system</h1><p/>
<h2>Module: userdomain</h2><p/>


<a href=#interfaces>Interfaces</a>
<a href=#templates>Templates</a>


<h3>Description:</h3>

<p><p>Policy for user domains</p></p>



<a name="interfaces"></a>
<h3>Interfaces: </h3>

<div id="interface">


<div id="codeblock">

<b>userdom_dontaudit_use_sysadm_terms</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Do not audit attempts to use admin ttys and ptys.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_dontaudit_use_unpriv_user_fd</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Do not audit attempts to inherit the
file descriptors from all user domains.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_dontaudit_use_unpriv_user_tty</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Do not audit attempts to use unprivileged
user ttys.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_read_all_user_files</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Read all files in all users home directories.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_read_staff_home_files</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Read files in the staff users home directory.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_read_sysadm_home_files</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Read files in the sysadm users home directory.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_rw_sysadm_pipe</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Read and write sysadm user unnamed pipes.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_search_all_users_home</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Search all users home directories.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_shell_domtrans_sysadm</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Execute a shell in the sysadm domain.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_signal_all_users</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Send general signals to all user domains.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_signal_unpriv_users</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Send general signals to unprivileged user domains.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_spec_domtrans_all_users</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Execute a shell in all user domains.  This
is an explicit transition, requiring the
caller to use setexeccon().
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_spec_domtrans_unpriv_users</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Execute a shell in all unprivileged user domains.  This
is an explicit transition, requiring the
caller to use setexeccon().
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_unconfined</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Unconfined access to user domains.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

Domain allowed access.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_use_all_user_fd</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Inherit the file descriptors from all user domains
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_use_sysadm_fd</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Inherit and use sysadm file descriptors
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_use_sysadm_pty</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Read and write sysadm ptys.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_use_sysadm_terms</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Read and write sysadm ttys and ptys.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_use_sysadm_tty</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Read and write sysadm ttys.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_use_unpriv_users_fd</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Inherit the file descriptors from unprivileged user domains.
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="interface">


<div id="codeblock">

<b>userdom_write_unpriv_user_tmp</b>(
	
		
		
		
		domain
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
Write all unprivileged users files in /tmp
</p>


<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
domain
</td><td>

The type of the process performing this action.

</td><td>
No
</td></tr>

</table>
</div>
</div>


<a href=#top>Return</a>


<a name="templates"></a>
<h3>Templates: </h3>

<div id="template">


<div id="codeblock">

<b>admin_user_template</b>(
	
		
		
		
		userdomain_prefix
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
The template for creating an administrative user.
</p>


<h5>Description</h5>
<p>
</p><p>
This template creates a user domain, types, and
rules for the user's tty, pty, home directories,
tmp, and tmpfs files.
</p><p>
</p>

<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
userdomain_prefix
</td><td>

The prefix of the user domain (e.g., sysadm
is the prefix for sysadm_t).

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="template">


<div id="codeblock">

<b>base_user_template</b>(
	
		
		
		
		userdomain_prefix
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
The template containing rules common to unprivileged
users and administrative users.
</p>


<h5>Description</h5>
<p>
</p><p>
This template creates a user domain, types, and
rules for the user's tty, pty, home directories,
tmp, and tmpfs files.
</p><p>
</p><p>
This generally should not be used, rather the
unpriv_user_template or admin_user_template should
be used.
</p><p>
</p>

<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
userdomain_prefix
</td><td>

The prefix of the user domain (e.g., user
is the prefix for user_t).

</td><td>
No
</td></tr>

</table>
</div>
</div>

<div id="template">


<div id="codeblock">

<b>unpriv_user_template</b>(
	
		
		
		
		userdomain_prefix
		
	
	)<br>
</div>
<div id="description">

<h5>Summary</h5>
<p>
The template for creating a unprivileged user.
</p>


<h5>Description</h5>
<p>
</p><p>
This template creates a user domain, types, and
rules for the user's tty, pty, home directories,
tmp, and tmpfs files.
</p><p>
</p>

<h5>Parameters</h5>
<table border="1" cellspacing="0" cellpadding="3" width="80%">
<tr><th >Parameter:</td><th >Description:</td><th >Optional:</td></tr>

<tr><td>
userdomain_prefix
</td><td>

The prefix of the user domain (e.g., user
is the prefix for user_t).

</td><td>
No
</td></tr>

</table>
</div>
</div>


<a href=#top>Return</a>


</div>
</body>
</html>