Layer: system

Module: userdomain

Interfaces Templates

Description:

Policy for user domains

Interfaces:

userdom_create_user_home( domain , [ object_class ] )
Summary

Create objects in generic user home directories with automatic file type transition.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
object_class The class of the object to be created. If not specified, file is used. yes
userdom_create_user_home_dir( domain )
Summary

Create generic user home directories with automatic file type transition.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_dontaudit_list_sysadm_home_dir( domain )
Summary

Do not audit attempts to list the sysadm users home directory.

Parameters
Parameter:Description:Optional:
domain Domain to not audit. No
userdom_dontaudit_search_all_users_home( domain )
Summary

Do not audit attempts to search all users home directories.

Parameters
Parameter:Description:Optional:
domain Domain to not audit. No
userdom_dontaudit_search_staff_home_dir( domain )
Summary

Do not audit attempts to search the staff users home directory.

Parameters
Parameter:Description:Optional:
domain Domain to not audit. No
userdom_dontaudit_search_sysadm_home_dir( domain )
Summary

Do not audit attempts to search the sysadm users home directory.

Parameters
Parameter:Description:Optional:
domain Domain to not audit. No
userdom_dontaudit_use_sysadm_terms( domain )
Summary

Do not audit attempts to use sysadm ttys and ptys.

Parameters
Parameter:Description:Optional:
domain Domain to not audit. No
userdom_dontaudit_use_sysadm_tty( domain )
Summary

Do not audit attempts to use sysadm ttys.

Parameters
Parameter:Description:Optional:
domain Domain to not audit. No
userdom_dontaudit_use_unpriv_user_fd( domain )
Summary

Do not audit attempts to inherit the file descriptors from all user domains.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_dontaudit_use_unpriv_user_tty( domain )
Summary

Do not audit attempts to use unprivileged user ttys.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_manage_user_home_dir( domain )
Summary

Create, read, write, and delete generic user home directories.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_manage_user_home_dirs( domain )
Summary

Create, read, write, and delete subdirectories of generic user home directories.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_manage_user_home_files( domain )
Summary

Create, read, write, and delete files in generic user home directories.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_manage_user_home_pipes( domain )
Summary

Create, read, write, and delete named pipes in generic user home directories.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_manage_user_home_sockets( domain )
Summary

Create, read, write, and delete named sockets in generic user home directories.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_manage_user_home_symlinks( domain )
Summary

Create, read, write, and delete symbolic links in generic user home directories.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_read_all_user_files( domain )
Summary

Read all files in all users home directories.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_read_staff_home_files( domain )
Summary

Read files in the staff users home directory.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_read_sysadm_home_files( domain )
Summary

Read files in the sysadm users home directory.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_rw_sysadm_pipe( domain )
Summary

Read and write sysadm user unnamed pipes.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_search_all_users_home( domain )
Summary

Search all users home directories.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_search_staff_home_dir( domain )
Summary

Search the staff users home directory.

Parameters
Parameter:Description:Optional:
domain Domain to not audit. No
userdom_search_sysadm_home_dir( domain )
Summary

Search the sysadm users home directory.

Parameters
Parameter:Description:Optional:
domain Domain to not audit. No
userdom_shell_domtrans_sysadm( domain )
Summary

Execute a shell in the sysadm domain.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_sigcld_all_users( domain )
Summary

Send a SIGCHLD signal to all user domains.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_signal_all_users( domain )
Summary

Send general signals to all user domains.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_signal_unpriv_users( domain )
Summary

Send general signals to unprivileged user domains.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_spec_domtrans_all_users( domain )
Summary

Execute a shell in all user domains. This is an explicit transition, requiring the caller to use setexeccon().

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_spec_domtrans_unpriv_users( domain )
Summary

Execute a shell in all unprivileged user domains. This is an explicit transition, requiring the caller to use setexeccon().

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_unconfined( domain )
Summary

Unconfined access to user domains.

Parameters
Parameter:Description:Optional:
domain Domain allowed access. No
userdom_use_all_user_fd( domain )
Summary

Inherit the file descriptors from all user domains

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_use_sysadm_fd( domain )
Summary

Inherit and use sysadm file descriptors

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_use_sysadm_pty( domain )
Summary

Read and write sysadm ptys.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_use_sysadm_terms( domain )
Summary

Read and write sysadm ttys and ptys.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_use_sysadm_tty( domain )
Summary

Read and write sysadm ttys.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_use_unpriv_users_fd( domain )
Summary

Inherit the file descriptors from unprivileged user domains.

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
userdom_write_unpriv_user_tmp( domain )
Summary

Write all unprivileged users files in /tmp

Parameters
Parameter:Description:Optional:
domain The type of the process performing this action. No
Return

Templates:

admin_user_template( userdomain_prefix )
Summary

The template for creating an administrative user.

Description

This template creates a user domain, types, and rules for the user's tty, pty, home directories, tmp, and tmpfs files.

The privileges given to administrative users are:

  • Raw disk access

  • Set all sysctls

  • All kernel ring buffer controls

  • Set SELinux enforcement mode (enforcing/permissive)

  • Set SELinux booleans

  • Relabel all files but shadow

  • Create, read, write, and delete all files but shadow

  • Manage source and binary format SELinux policy

  • Run insmod

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., sysadm is the prefix for sysadm_t). No
base_user_template( userdomain_prefix )
Summary

The template containing rules common to unprivileged users and administrative users.

Description

This template creates a user domain, types, and rules for the user's tty, pty, home directories, tmp, and tmpfs files.

This generally should not be used, rather the unpriv_user_template or admin_user_template should be used.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
unpriv_user_template( userdomain_prefix )
Summary

The template for creating a unprivileged user.

Description

This template creates a user domain, types, and rules for the user's tty, pty, home directories, tmp, and tmpfs files.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
userdom_exec_user_home_files( userdomain_prefix , domain )
Summary

Execute user home files.

Description

Execute user home files.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_manage_user_home_subdir_files( userdomain_prefix , domain )
Summary

Create, read, write, and delete files in a user home subdirectory.

Description

Create, read, write, and delete files in a user home subdirectory.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_manage_user_home_subdir_symlinks( userdomain_prefix , domain )
Summary

Create, read, write, and delete symbolic links in a user home subdirectory.

Description

Create, read, write, and delete symbolic links in a user home subdirectory.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_manage_user_tmp_dirs( userdomain_prefix , domain )
Summary

Create, read, write, and delete user temporary directories.

Description

Create, read, write, and delete user temporary directories.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_manage_user_tmp_files( userdomain_prefix , domain )
Summary

Create, read, write, and delete user temporary files.

Description

Create, read, write, and delete user temporary files.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_manage_user_tmp_pipes( userdomain_prefix , domain )
Summary

Create, read, write, and delete user temporary named pipes.

Description

Create, read, write, and delete user temporary named pipes.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_manage_user_tmp_sockets( userdomain_prefix , domain )
Summary

Create, read, write, and delete user temporary named sockets.

Description

Create, read, write, and delete user temporary named sockets.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_manage_user_tmp_symlinks( userdomain_prefix , domain )
Summary

Create, read, write, and delete user temporary symbolic links.

Description

Create, read, write, and delete user temporary symbolic links.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_read_user_home_files( userdomain_prefix , domain )
Summary

Read user home files.

Description

Read user home files.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
userdom_use_user_terminals( userdomain_prefix , domain )
Summary

Read and write a user domain tty and pty.

Description

Read and write a user domain tty and pty.

This is a templated interface, and should only be called from a per-userdomain template.

Parameters
Parameter:Description:Optional:
userdomain_prefix The prefix of the user domain (e.g., user is the prefix for user_t). No
domain The type of the process performing this action. No
Return