diff options
Diffstat (limited to 'policy/modules/contrib/accountsd.if')
-rw-r--r-- | policy/modules/contrib/accountsd.if | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/policy/modules/contrib/accountsd.if b/policy/modules/contrib/accountsd.if new file mode 100644 index 00000000..c0f858de --- /dev/null +++ b/policy/modules/contrib/accountsd.if @@ -0,0 +1,145 @@ +## <summary>AccountsService and daemon for manipulating user account information via D-Bus</summary> + +######################################## +## <summary> +## Execute a domain transition to run accountsd. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`accountsd_domtrans',` + gen_require(` + type accountsd_t, accountsd_exec_t; + ') + + domtrans_pattern($1, accountsd_exec_t, accountsd_t) +') + +######################################## +## <summary> +## Do not audit attempts to read and write Accounts Daemon +## fifo file. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`accountsd_dontaudit_rw_fifo_file',` + gen_require(` + type accountsd_t; + ') + + dontaudit $1 accountsd_t:fifo_file rw_fifo_file_perms; +') + +######################################## +## <summary> +## Send and receive messages from +## accountsd over dbus. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`accountsd_dbus_chat',` + gen_require(` + type accountsd_t; + class dbus send_msg; + ') + + allow $1 accountsd_t:dbus send_msg; + allow accountsd_t $1:dbus send_msg; +') + +######################################## +## <summary> +## Search accountsd lib directories. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`accountsd_search_lib',` + gen_require(` + type accountsd_var_lib_t; + ') + + allow $1 accountsd_var_lib_t:dir search_dir_perms; + files_search_var_lib($1) +') + +######################################## +## <summary> +## Read accountsd lib files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`accountsd_read_lib_files',` + gen_require(` + type accountsd_var_lib_t; + ') + + files_search_var_lib($1) + read_files_pattern($1, accountsd_var_lib_t, accountsd_var_lib_t) +') + +######################################## +## <summary> +## Create, read, write, and delete +## accountsd lib files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`accountsd_manage_lib_files',` + gen_require(` + type accountsd_var_lib_t; + ') + + files_search_var_lib($1) + manage_files_pattern($1, accountsd_var_lib_t, accountsd_var_lib_t) +') + +######################################## +## <summary> +## All of the rules required to administrate +## an accountsd environment +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +## <param name="role"> +## <summary> +## Role allowed access. +## </summary> +## </param> +## <rolecap/> +# +interface(`accountsd_admin',` + gen_require(` + type accountsd_t; + ') + + allow $1 accountsd_t:process { ptrace signal_perms getattr }; + ps_process_pattern($1, accountsd_t) + + accountsd_manage_lib_files($1) +') |