|
Chris PeBenito |
e9c6cd |
## <summary>Generic unprivileged user role</summary>
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Change to the generic user role.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="prefix">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## The prefix of the user role (e.g., user
|
|
Chris PeBenito |
e9c6cd |
## is the prefix for user_r).
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
## <rolecap/>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
template(`unprivuser_role_change_template',`
|
|
Chris PeBenito |
e9c6cd |
userdom_role_change_template($1, user)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Change from the generic user role.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <desc>
|
|
Chris PeBenito |
e9c6cd |
##
|
|
Chris PeBenito |
e9c6cd |
## Change from the generic user role to
|
|
Chris PeBenito |
e9c6cd |
## the specified role.
|
|
Chris PeBenito |
e9c6cd |
##
|
|
Chris PeBenito |
e9c6cd |
##
|
|
Chris PeBenito |
e9c6cd |
## This is a template to support third party modules
|
|
Chris PeBenito |
e9c6cd |
## and its use is not allowed in upstream reference
|
|
Chris PeBenito |
e9c6cd |
## policy.
|
|
Chris PeBenito |
e9c6cd |
##
|
|
Chris PeBenito |
e9c6cd |
## </desc>
|
|
Chris PeBenito |
e9c6cd |
## <param name="prefix">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## The prefix of the user role (e.g., user
|
|
Chris PeBenito |
e9c6cd |
## is the prefix for user_r).
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
## <rolecap/>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
template(`unprivuser_role_change_to_template',`
|
|
Chris PeBenito |
e9c6cd |
userdom_role_change_template(user, $1)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Create generic user home directories
|
|
Chris PeBenito |
e9c6cd |
## with automatic file type transition.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_home_filetrans_home_dir',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
0bfccd |
files_home_filetrans($1, user_home_dir_t, dir)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Search generic user home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_search_home_dirs',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
allow $1 user_home_dir_t:dir search_dir_perms;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Create objects in generic user home directories
|
|
Chris PeBenito |
e9c6cd |
## with automatic file type transition.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
## <param name="object_class">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## The class of the object to be created.
|
|
Chris PeBenito |
e9c6cd |
## If not specified, file is used.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_home_dir_filetrans_home_content',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t, user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
0bfccd |
filetrans_pattern($1, user_home_dir_t, user_home_t, $2)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Don't audit search on the user home subdirectory.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_dontaudit_search_home_dirs',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
dontaudit $1 user_home_t:dir search_dir_perms;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Create, read, write, and delete generic user
|
|
Chris PeBenito |
e9c6cd |
## home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_manage_home_dirs',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
e9c6cd |
allow $1 user_home_dir_t:dir manage_dir_perms;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Create, read, write, and delete
|
|
Chris PeBenito |
e9c6cd |
## subdirectories of generic user
|
|
Chris PeBenito |
e9c6cd |
## home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_manage_home_content_dirs',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t, user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
0bfccd |
manage_dirs_pattern($1, { user_home_dir_t user_home_t }, user_home_t)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Relabel to generic user home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_relabelto_home_dirs',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
e9c6cd |
allow $1 user_home_dir_t:dir relabelto;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Read files in generic user home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_read_home_content_files',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_t, user_home_dir_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
e9c6cd |
allow $1 user_home_t:dir list_dir_perms;
|
|
Chris PeBenito |
0bfccd |
read_files_pattern($1, { user_home_dir_t user_home_t }, user_home_t)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Mmap of generic user
|
|
Chris PeBenito |
e9c6cd |
## home files.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_mmap_home_content_files',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
e9c6cd |
allow $1 user_home_t:file execute;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Create, read, write, and delete files
|
|
Chris PeBenito |
e9c6cd |
## in generic user home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_manage_home_content_files',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t, user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
0bfccd |
manage_files_pattern($1, { user_home_dir_t user_home_t }, user_home_t)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Do not audit attempts to relabel generic user
|
|
Chris PeBenito |
e9c6cd |
## home files.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_dontaudit_relabel_home_content_files',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
dontaudit $1 user_home_t:file { relabelto relabelfrom };
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Create, read, write, and delete symbolic
|
|
Chris PeBenito |
e9c6cd |
## links in generic user home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_manage_home_content_symlinks',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t, user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
0bfccd |
manage_lnk_files_pattern($1, { user_home_dir_t user_home_t }, user_home_t)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Create, read, write, and delete named
|
|
Chris PeBenito |
e9c6cd |
## pipes in generic user home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_manage_home_content_pipes',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t, user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
0bfccd |
manage_fifo_files_pattern($1, { user_home_dir_t user_home_t }, user_home_t)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
########################################
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Create, read, write, and delete named
|
|
Chris PeBenito |
e9c6cd |
## sockets in generic user home directories.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## <param name="domain">
|
|
Chris PeBenito |
e9c6cd |
## <summary>
|
|
Chris PeBenito |
e9c6cd |
## Domain allowed access.
|
|
Chris PeBenito |
e9c6cd |
## </summary>
|
|
Chris PeBenito |
e9c6cd |
## </param>
|
|
Chris PeBenito |
e9c6cd |
#
|
|
Chris PeBenito |
e9c6cd |
interface(`unprivuser_manage_home_content_sockets',`
|
|
Chris PeBenito |
e9c6cd |
gen_require(`
|
|
Chris PeBenito |
e9c6cd |
type user_home_dir_t, user_home_t;
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|
|
Chris PeBenito |
e9c6cd |
files_search_home($1)
|
|
Chris PeBenito |
0bfccd |
manage_sock_files_pattern($1, { user_home_dir_t user_home_t }, user_home_t)
|
|
Chris PeBenito |
e9c6cd |
')
|
|
Chris PeBenito |
e9c6cd |
|