Gentoo Archives: gentoo-commits

From: Sven Vermeulen <sven.vermeulen@××××××.be>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/hardened-refpolicy:master commit in: policy/modules/contrib/
Date: Thu, 01 Nov 2012 21:42:35
Message-Id: 1351803657.088a3666044ddd17b103dcb703b399acb7076834.SwifT@gentoo
1 commit: 088a3666044ddd17b103dcb703b399acb7076834
2 Author: Sven Vermeulen <sven.vermeulen <AT> siphos <DOT> be>
3 AuthorDate: Thu Nov 1 21:00:57 2012 +0000
4 Commit: Sven Vermeulen <sven.vermeulen <AT> siphos <DOT> be>
5 CommitDate: Thu Nov 1 21:00:57 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/hardened-refpolicy.git;a=commit;h=088a3666
7
8 Reshuffle gentoo specific ldap changes. Also introduce an ldap_admin interface
9
10 ---
11 policy/modules/contrib/ldap.if | 30 ++++++++++++++++++++++++++----
12 policy/modules/contrib/ldap.te | 12 ++++++++----
13 2 files changed, 34 insertions(+), 8 deletions(-)
14
15 diff --git a/policy/modules/contrib/ldap.if b/policy/modules/contrib/ldap.if
16 index 1c58ff5..de2508e 100644
17 --- a/policy/modules/contrib/ldap.if
18 +++ b/policy/modules/contrib/ldap.if
19 @@ -117,7 +117,6 @@ interface(`ldap_admin',`
20 type slapd_lock_t, slapd_etc_t, slapd_var_run_t;
21 type slapd_initrc_exec_t, slapd_log_t, slapd_cert_t;
22 type slapd_db_t;
23 - type slapd_exec_t;
24 ')
25
26 allow $1 slapd_t:process { ptrace signal_perms };
27 @@ -128,9 +127,6 @@ interface(`ldap_admin',`
28 role_transition $2 slapd_initrc_exec_t system_r;
29 allow $2 system_r;
30
31 - role $2 types slapd_t;
32 - domtrans_pattern($1, slapd_exec_t, slapd_t)
33 -
34 files_list_etc($1)
35 admin_pattern($1, { slapd_etc_t slapd_db_t slapd_cert_t })
36
37 @@ -149,3 +145,29 @@ interface(`ldap_admin',`
38 files_list_pids($1)
39 admin_pattern($1, slapd_var_run_t)
40 ')
41 +
42 +########################################
43 +## <summary>
44 +## Execute slapd in the slapd domain, and
45 +## allow the given role the slapd_t type.
46 +## </summary>
47 +## <param name="domain">
48 +## <summary>
49 +## Domain allowed to transition.
50 +## </summary>
51 +## </param>
52 +## <param name="role">
53 +## <summary>
54 +## Role allowed access.
55 +## </summary>
56 +## </param>
57 +#
58 +interface(`ldap_run',`
59 + gen_require(`
60 + type slapd_t;
61 + type slapd_exec_t;
62 + ')
63 +
64 + role $2 types slapd_t;
65 + domtrans_pattern($1, slapd_exec_t, slapd_t)
66 +')
67
68 diff --git a/policy/modules/contrib/ldap.te b/policy/modules/contrib/ldap.te
69 index 2d57372..7968e39 100644
70 --- a/policy/modules/contrib/ldap.te
71 +++ b/policy/modules/contrib/ldap.te
72 @@ -46,10 +46,8 @@ files_pid_file(slapd_var_run_t)
73
74 allow slapd_t self:capability { kill setgid setuid net_raw dac_override dac_read_search };
75 dontaudit slapd_t self:capability sys_tty_config;
76 -allow slapd_t self:process { setsched signal };
77 +allow slapd_t self:process setsched;
78 allow slapd_t self:fifo_file rw_fifo_file_perms;
79 -allow slapd_t self:unix_stream_socket listen;
80 -#slapd needs to listen and accept needed by ldapsearch (slapd needs to accept from ldapseach)
81 allow slapd_t self:tcp_socket { accept listen };
82
83 allow slapd_t slapd_cert_t:dir list_dir_perms;
84 @@ -124,7 +122,13 @@ miscfiles_read_localization(slapd_t)
85
86 userdom_dontaudit_use_unpriv_user_fds(slapd_t)
87 userdom_dontaudit_search_user_home_dirs(slapd_t)
88 -userdom_use_user_terminals(slapd_t)
89 +
90 +ifdef(`distro_gentoo',`
91 + allow slapd_t self:process signal;
92 + allow slapd_t self:unix_stream_socket listen;
93 +
94 + userdom_use_user_terminals(slapd_t)
95 +')
96
97 optional_policy(`
98 kerberos_keytab_template(slapd, slapd_t)