cgroup in filesystem.
Move cgroup_t declarations from kernel.te to filesystem.te Redo cgroup interfaces in filesystem.if Add file context specification for /cgroup mountpoint to filesystem.fc Signed-off-by: Dominick Grift <domg472@gmail.com> Signed-off-by: Chris PeBenito <cpebenito@tresys.com>
This commit is contained in:
parent
60f04fcb7a
commit
c0c635b3f3
@ -1 +1,3 @@
|
|||||||
/dev/shm -d gen_context(system_u:object_r:tmpfs_t,s0)
|
/dev/shm -d gen_context(system_u:object_r:tmpfs_t,s0)
|
||||||
|
|
||||||
|
/cgroup -d gen_context(system_u:object_r:cgroup_t,s0)
|
||||||
|
@ -559,7 +559,25 @@ interface(`fs_register_binary_executable_type',`
|
|||||||
|
|
||||||
########################################
|
########################################
|
||||||
## <summary>
|
## <summary>
|
||||||
## Mount a cgroup filesystem.
|
## Get attributes of cgroup filesystems.
|
||||||
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain allowed access.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_getattr_cgroup',`
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
')
|
||||||
|
|
||||||
|
allow $1 cgroup_t:filesystem getattr;
|
||||||
|
')
|
||||||
|
|
||||||
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Mount cgroup filesystems.
|
||||||
## </summary>
|
## </summary>
|
||||||
## <param name="domain">
|
## <param name="domain">
|
||||||
## <summary>
|
## <summary>
|
||||||
@ -577,8 +595,25 @@ interface(`fs_mount_cgroup', `
|
|||||||
|
|
||||||
########################################
|
########################################
|
||||||
## <summary>
|
## <summary>
|
||||||
## Remount a cgroup filesystem This allows
|
## Mount on cgroup directories.
|
||||||
## some mount options to be changed.
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain allowed access.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_mounton_cgroup', `
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
')
|
||||||
|
|
||||||
|
allow $1 cgroup_t:dir mounton;
|
||||||
|
')
|
||||||
|
|
||||||
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Remount cgroup filesystems.
|
||||||
## </summary>
|
## </summary>
|
||||||
## <param name="domain">
|
## <param name="domain">
|
||||||
## <summary>
|
## <summary>
|
||||||
@ -596,7 +631,7 @@ interface(`fs_remount_cgroup', `
|
|||||||
|
|
||||||
########################################
|
########################################
|
||||||
## <summary>
|
## <summary>
|
||||||
## Unmount a cgroup file system.
|
## Unmount cgroup filesystems.
|
||||||
## </summary>
|
## </summary>
|
||||||
## <param name="domain">
|
## <param name="domain">
|
||||||
## <summary>
|
## <summary>
|
||||||
@ -614,41 +649,171 @@ interface(`fs_unmount_cgroup', `
|
|||||||
|
|
||||||
########################################
|
########################################
|
||||||
## <summary>
|
## <summary>
|
||||||
## Get the attributes of a cgroup filesystem.
|
## Delete cgroup directories.
|
||||||
## </summary>
|
## </summary>
|
||||||
## <param name="domain">
|
## <param name="domain">
|
||||||
## <summary>
|
## <summary>
|
||||||
## Domain allowed access.
|
## Domain allowed access.
|
||||||
## </summary>
|
## </summary>
|
||||||
## </param>
|
## </param>
|
||||||
## <rolecap/>
|
|
||||||
#
|
#
|
||||||
interface(`fs_getattr_cgroup',`
|
interface(`fs_delete_cgroup_dirs', `
|
||||||
gen_require(`
|
gen_require(`
|
||||||
type cifs_t;
|
type cgroup_t;
|
||||||
')
|
')
|
||||||
|
|
||||||
allow $1 cifs_t:filesystem getattr;
|
delete_dirs_pattern($1, cgroup_t, cgroup_t)
|
||||||
')
|
')
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
## <summary>
|
## <summary>
|
||||||
## list dirs on cgroup
|
## list cgroup directories.
|
||||||
## file systems.
|
|
||||||
## </summary>
|
## </summary>
|
||||||
## <param name="domain">
|
## <param name="domain">
|
||||||
## <summary>
|
## <summary>
|
||||||
## Domain allowed access.
|
## Domain allowed access.
|
||||||
## </summary>
|
## </summary>
|
||||||
## </param>
|
## </param>
|
||||||
#
|
#
|
||||||
interface(`fs_list_cgroup_dirs', `
|
interface(`fs_list_cgroup_dirs', `
|
||||||
gen_require(`
|
gen_require(`
|
||||||
type cgroup_t;
|
type cgroup_t;
|
||||||
|
')
|
||||||
|
|
||||||
')
|
list_dirs_pattern($1, cgroup_t, cgroup_t)
|
||||||
|
')
|
||||||
|
|
||||||
list_dirs_pattern($1, cgroup_t, cgroup_t)
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Manage cgroup directories.
|
||||||
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain allowed access.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_manage_cgroup_dirs',`
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
|
||||||
|
')
|
||||||
|
|
||||||
|
manage_dirs_pattern($1, cgroup_t, cgroup_t)
|
||||||
|
')
|
||||||
|
|
||||||
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Search cgroup directories.
|
||||||
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain allowed access.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_search_cgroup_dirs',`
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
|
||||||
|
')
|
||||||
|
|
||||||
|
search_dirs_pattern($1, cgroup_t, cgroup_t)
|
||||||
|
')
|
||||||
|
|
||||||
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Manage cgroup files.
|
||||||
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain allowed access.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_manage_cgroup_files',`
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
|
||||||
|
')
|
||||||
|
|
||||||
|
manage_files_pattern($1, cgroup_t, cgroup_t)
|
||||||
|
')
|
||||||
|
|
||||||
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Read cgroup files.
|
||||||
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain allowed access.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_read_cgroup_files',`
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
|
||||||
|
')
|
||||||
|
|
||||||
|
read_files_pattern($1, cgroup_t, cgroup_t)
|
||||||
|
')
|
||||||
|
|
||||||
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Read and write cgroup files.
|
||||||
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain allowed access.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_rw_cgroup_files',`
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
|
||||||
|
')
|
||||||
|
|
||||||
|
rw_files_pattern($1, cgroup_t, cgroup_t)
|
||||||
|
')
|
||||||
|
|
||||||
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Write cgroup files.
|
||||||
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain allowed access.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_write_cgroup_files', `
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
')
|
||||||
|
|
||||||
|
write_files_pattern($1, cgroup_t, cgroup_t)
|
||||||
|
')
|
||||||
|
|
||||||
|
########################################
|
||||||
|
## <summary>
|
||||||
|
## Do not audit attempts to open,
|
||||||
|
## get attributes, read and write
|
||||||
|
## cgroup files.
|
||||||
|
## </summary>
|
||||||
|
## <param name="domain">
|
||||||
|
## <summary>
|
||||||
|
## Domain to not audit.
|
||||||
|
## </summary>
|
||||||
|
## </param>
|
||||||
|
#
|
||||||
|
interface(`fs_dontaudit_rw_cgroup_files',`
|
||||||
|
gen_require(`
|
||||||
|
type cgroup_t;
|
||||||
|
')
|
||||||
|
|
||||||
|
dontaudit $1 cgroup_t:file rw_file_perms;
|
||||||
')
|
')
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
@ -670,105 +835,6 @@ interface(`fs_dontaudit_list_cifs_dirs',`
|
|||||||
dontaudit $1 cifs_t:dir list_dir_perms;
|
dontaudit $1 cifs_t:dir list_dir_perms;
|
||||||
')
|
')
|
||||||
|
|
||||||
########################################
|
|
||||||
## <summary>
|
|
||||||
## Manage dirs on cgroup file systems.
|
|
||||||
## </summary>
|
|
||||||
## <param name="domain">
|
|
||||||
## <summary>
|
|
||||||
## Domain allowed access.
|
|
||||||
## </summary>
|
|
||||||
## </param>
|
|
||||||
#
|
|
||||||
interface(`fs_manage_cgroup_dirs',`
|
|
||||||
gen_require(`
|
|
||||||
type cgroup_t;
|
|
||||||
|
|
||||||
')
|
|
||||||
|
|
||||||
manage_dirs_pattern($1, cgroup_t, cgroup_t)
|
|
||||||
')
|
|
||||||
|
|
||||||
########################################
|
|
||||||
## <summary>
|
|
||||||
## Set attributes of files on cgroup
|
|
||||||
## file systems.
|
|
||||||
## </summary>
|
|
||||||
## <param name="domain">
|
|
||||||
## <summary>
|
|
||||||
## Domain allowed access.
|
|
||||||
## </summary>
|
|
||||||
## </param>
|
|
||||||
#
|
|
||||||
interface(`fs_setattr_cgroup_files',`
|
|
||||||
gen_require(`
|
|
||||||
type cgroup_t;
|
|
||||||
|
|
||||||
')
|
|
||||||
|
|
||||||
setattr_files_pattern($1, cgroup_t, cgroup_t)
|
|
||||||
')
|
|
||||||
|
|
||||||
########################################
|
|
||||||
## <summary>
|
|
||||||
## Read files on cgroup
|
|
||||||
## file systems.
|
|
||||||
## </summary>
|
|
||||||
## <param name="domain">
|
|
||||||
## <summary>
|
|
||||||
## Domain allowed access.
|
|
||||||
## </summary>
|
|
||||||
## </param>
|
|
||||||
#
|
|
||||||
interface(`fs_read_cgroup_files',`
|
|
||||||
gen_require(`
|
|
||||||
type cgroup_t;
|
|
||||||
|
|
||||||
')
|
|
||||||
|
|
||||||
read_files_pattern($1, cgroup_t, cgroup_t)
|
|
||||||
')
|
|
||||||
|
|
||||||
########################################
|
|
||||||
## <summary>
|
|
||||||
## Write files on cgroup
|
|
||||||
## file systems.
|
|
||||||
## </summary>
|
|
||||||
## <param name="domain">
|
|
||||||
## <summary>
|
|
||||||
## Domain allowed access.
|
|
||||||
## </summary>
|
|
||||||
## </param>
|
|
||||||
#
|
|
||||||
interface(`fs_write_cgroup_files', `
|
|
||||||
gen_require(`
|
|
||||||
type cgroup_t;
|
|
||||||
|
|
||||||
')
|
|
||||||
|
|
||||||
write_files_pattern($1, cgroup_t, cgroup_t)
|
|
||||||
')
|
|
||||||
|
|
||||||
########################################
|
|
||||||
## <summary>
|
|
||||||
## Read and write files on cgroup
|
|
||||||
## file systems.
|
|
||||||
## </summary>
|
|
||||||
## <param name="domain">
|
|
||||||
## <summary>
|
|
||||||
## Domain allowed access.
|
|
||||||
## </summary>
|
|
||||||
## </param>
|
|
||||||
#
|
|
||||||
interface(`fs_rw_cgroup_files',`
|
|
||||||
gen_require(`
|
|
||||||
type cgroup_t;
|
|
||||||
|
|
||||||
')
|
|
||||||
|
|
||||||
rw_files_pattern($1, cgroup_t, cgroup_t)
|
|
||||||
')
|
|
||||||
|
|
||||||
########################################
|
########################################
|
||||||
## <summary>
|
## <summary>
|
||||||
## Mount a CIFS or SMB network filesystem.
|
## Mount a CIFS or SMB network filesystem.
|
||||||
|
@ -68,6 +68,12 @@ fs_type(capifs_t)
|
|||||||
files_mountpoint(capifs_t)
|
files_mountpoint(capifs_t)
|
||||||
genfscon capifs / gen_context(system_u:object_r:capifs_t,s0)
|
genfscon capifs / gen_context(system_u:object_r:capifs_t,s0)
|
||||||
|
|
||||||
|
type cgroup_t;
|
||||||
|
fs_type(cgroup_t)
|
||||||
|
files_type(cgroup_t)
|
||||||
|
files_mountpoint(cgroup_t)
|
||||||
|
genfscon cgroup / gen_context(system_u:object_r:cgroup_t,s0)
|
||||||
|
|
||||||
type configfs_t;
|
type configfs_t;
|
||||||
fs_type(configfs_t)
|
fs_type(configfs_t)
|
||||||
genfscon configfs / gen_context(system_u:object_r:configfs_t,s0)
|
genfscon configfs / gen_context(system_u:object_r:configfs_t,s0)
|
||||||
|
@ -45,15 +45,6 @@ mls_rangetrans_source(kernel_t)
|
|||||||
role system_r types kernel_t;
|
role system_r types kernel_t;
|
||||||
sid kernel gen_context(system_u:system_r:kernel_t,mls_systemhigh)
|
sid kernel gen_context(system_u:system_r:kernel_t,mls_systemhigh)
|
||||||
|
|
||||||
#
|
|
||||||
# cgroup fs
|
|
||||||
#
|
|
||||||
|
|
||||||
type cgroup_t;
|
|
||||||
fs_type(cgroup_t)
|
|
||||||
allow cgroup_t self:filesystem associate;
|
|
||||||
genfscon cgroup / gen_context(system_u:object_r:cgroup_t,s0)
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# DebugFS
|
# DebugFS
|
||||||
#
|
#
|
||||||
|
Loading…
Reference in New Issue
Block a user