summaryrefslogtreecommitdiffstats
path: root/selinux
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2009-01-29 16:26:07 -0500
committerRob Crittenden <rcritten@redhat.com>2009-02-03 15:27:14 -0500
commite30cd6ba42c256d2016db45146d616f329455e86 (patch)
treed4c5291095c80c92bc4803fe7f20fc2838124ffa /selinux
parentc4ed025001895bfc65c613cabbbfcb27c19cc29f (diff)
downloadfreeipa-e30cd6ba42c256d2016db45146d616f329455e86.tar.gz
freeipa-e30cd6ba42c256d2016db45146d616f329455e86.tar.xz
freeipa-e30cd6ba42c256d2016db45146d616f329455e86.zip
Mass tree reorganization for IPAv2. To view previous history of files use:
% git log --follow -- <file> renamed: ipa-server/autogen.sh -> autogen.sh renamed: ipa-server/ipa-kpasswd/Makefile.am -> daemons/ipa-kpasswd/Makefile.am renamed: ipa-server/ipa-kpasswd/README -> daemons/ipa-kpasswd/README renamed: ipa-server/ipa-kpasswd/ipa_kpasswd.c -> daemons/ipa-kpasswd/ipa_kpasswd.c renamed: ipa-server/ipa-kpasswd/ipa_kpasswd.init -> daemons/ipa-kpasswd/ipa_kpasswd.init renamed: ipa-server/ipa-slapi-plugins/Makefile.am -> daemons/ipa-slapi-plugins/Makefile.am renamed: ipa-server/ipa-slapi-plugins/README -> daemons/ipa-slapi-plugins/README renamed: ipa-server/ipa-slapi-plugins/dna/Makefile.am -> daemons/ipa-slapi-plugins/dna/Makefile.am renamed: ipa-server/ipa-slapi-plugins/dna/dna-conf.ldif -> daemons/ipa-slapi-plugins/dna/dna-conf.ldif renamed: ipa-server/ipa-slapi-plugins/dna/dna.c -> daemons/ipa-slapi-plugins/dna/dna.c renamed: ipa-server/ipa-slapi-plugins/ipa-memberof/Makefile.am -> daemons/ipa-slapi-plugins/ipa-memberof/Makefile.am renamed: ipa-server/ipa-slapi-plugins/ipa-memberof/ipa-memberof.c -> daemons/ipa-slapi-plugins/ipa-memberof/ipa-memberof.c renamed: ipa-server/ipa-slapi-plugins/ipa-memberof/ipa-memberof.h -> daemons/ipa-slapi-plugins/ipa-memberof/ipa-memberof.h renamed: ipa-server/ipa-slapi-plugins/ipa-memberof/ipa-memberof_config.c -> daemons/ipa-slapi-plugins/ipa-memberof/ipa-memberof_config.c renamed: ipa-server/ipa-slapi-plugins/ipa-memberof/memberof-conf.ldif -> daemons/ipa-slapi-plugins/ipa-memberof/memberof-conf.ldif renamed: ipa-server/ipa-slapi-plugins/ipa-pwd-extop/Makefile.am -> daemons/ipa-slapi-plugins/ipa-pwd-extop/Makefile.am renamed: ipa-server/ipa-slapi-plugins/ipa-pwd-extop/README -> daemons/ipa-slapi-plugins/ipa-pwd-extop/README renamed: ipa-server/ipa-slapi-plugins/ipa-pwd-extop/ipa_pwd_extop.c -> daemons/ipa-slapi-plugins/ipa-pwd-extop/ipa_pwd_extop.c renamed: ipa-server/ipa-slapi-plugins/ipa-pwd-extop/pwd-extop-conf.ldif -> daemons/ipa-slapi-plugins/ipa-pwd-extop/pwd-extop-conf.ldif renamed: ipa-server/ipa-slapi-plugins/ipa-winsync/Makefile.am -> daemons/ipa-slapi-plugins/ipa-winsync/Makefile.am renamed: ipa-server/ipa-slapi-plugins/ipa-winsync/README -> daemons/ipa-slapi-plugins/ipa-winsync/README renamed: ipa-server/ipa-slapi-plugins/ipa-winsync/ipa-winsync-conf.ldif -> daemons/ipa-slapi-plugins/ipa-winsync/ipa-winsync-conf.ldif renamed: ipa-server/ipa-slapi-plugins/ipa-winsync/ipa-winsync-config.c -> daemons/ipa-slapi-plugins/ipa-winsync/ipa-winsync-config.c renamed: ipa-server/ipa-slapi-plugins/ipa-winsync/ipa-winsync.c -> daemons/ipa-slapi-plugins/ipa-winsync/ipa-winsync.c renamed: ipa-server/ipa-slapi-plugins/ipa-winsync/ipa-winsync.h -> daemons/ipa-slapi-plugins/ipa-winsync/ipa-winsync.h renamed: ipa-server/xmlrpc-server/ipa-rewrite.conf -> install/conf/ipa-rewrite.conf renamed: ipa-server/xmlrpc-server/ipa.conf -> install/conf/ipa.conf renamed: ipa-server/xmlrpc-server/ssbrowser.html -> install/html/ssbrowser.html renamed: ipa-server/xmlrpc-server/unauthorized.html -> install/html/unauthorized.html renamed: ipa-server/ipa-install/share/60ipaconfig.ldif -> install/share/60ipaconfig.ldif renamed: ipa-server/ipa-install/share/60kerberos.ldif -> install/share/60kerberos.ldif renamed: ipa-server/ipa-install/share/60radius.ldif -> install/share/60radius.ldif renamed: ipa-server/ipa-install/share/60samba.ldif -> install/share/60samba.ldif renamed: ipa-server/ipa-install/share/Makefile.am -> install/share/Makefile.am renamed: ipa-server/ipa-install/share/bind.named.conf.template -> install/share/bind.named.conf.template renamed: ipa-server/ipa-install/share/bind.zone.db.template -> install/share/bind.zone.db.template renamed: ipa-server/ipa-install/share/bootstrap-template.ldif -> install/share/bootstrap-template.ldif renamed: ipa-server/ipa-install/share/certmap.conf.template -> install/share/certmap.conf.template renamed: ipa-server/ipa-install/share/default-aci.ldif -> install/share/default-aci.ldif renamed: ipa-server/ipa-install/share/default-keytypes.ldif -> install/share/default-keytypes.ldif renamed: ipa-server/ipa-install/share/dna-posix.ldif -> install/share/dna-posix.ldif renamed: ipa-server/ipa-install/share/encrypted_attribute.ldif -> install/share/encrypted_attribute.ldif renamed: ipa-server/ipa-install/share/fedora-ds.init.patch -> install/share/fedora-ds.init.patch renamed: ipa-server/ipa-install/share/indices.ldif -> install/share/indices.ldif renamed: ipa-server/ipa-install/share/kdc.conf.template -> install/share/kdc.conf.template renamed: ipa-server/ipa-install/share/kerberos.ldif -> install/share/kerberos.ldif renamed: ipa-server/ipa-install/share/krb.con.template -> install/share/krb.con.template renamed: ipa-server/ipa-install/share/krb5.conf.template -> install/share/krb5.conf.template renamed: ipa-server/ipa-install/share/krb5.ini.template -> install/share/krb5.ini.template renamed: ipa-server/ipa-install/share/krbrealm.con.template -> install/share/krbrealm.con.template renamed: ipa-server/ipa-install/share/master-entry.ldif -> install/share/master-entry.ldif renamed: ipa-server/ipa-install/share/memberof-task.ldif -> install/share/memberof-task.ldif renamed: ipa-server/ipa-install/share/ntp.conf.server.template -> install/share/ntp.conf.server.template renamed: ipa-server/ipa-install/share/ntpd.sysconfig.template -> install/share/ntpd.sysconfig.template renamed: ipa-server/ipa-install/share/preferences.html.template -> install/share/preferences.html.template renamed: ipa-server/ipa-install/share/referint-conf.ldif -> install/share/referint-conf.ldif renamed: ipa-server/ipa-install/share/schema_compat.uldif -> install/share/schema_compat.uldif renamed: ipa-server/ipa-install/share/unique-attributes.ldif -> install/share/unique-attributes.ldif renamed: ipa-server/ipa-install/Makefile.am -> install/tools/Makefile.am renamed: ipa-server/ipa-install/README -> install/tools/README renamed: ipa-server/ipa-compat-manage -> install/tools/ipa-compat-manage renamed: ipa-server/ipa-fix-CVE-2008-3274 -> install/tools/ipa-fix-CVE-2008-3274 renamed: ipa-server/ipa-ldap-updater -> install/tools/ipa-ldap-updater renamed: ipa-server/ipa-install/ipa-replica-install -> install/tools/ipa-replica-install renamed: ipa-server/ipa-install/ipa-replica-manage -> install/tools/ipa-replica-manage renamed: ipa-server/ipa-install/ipa-replica-prepare -> install/tools/ipa-replica-prepare renamed: ipa-server/ipa-install/ipa-server-certinstall -> install/tools/ipa-server-certinstall renamed: ipa-server/ipa-install/ipa-server-install -> install/tools/ipa-server-install renamed: ipa-server/ipa-upgradeconfig -> install/tools/ipa-upgradeconfig renamed: ipa-server/ipa-install/ipactl -> install/tools/ipactl renamed: ipa-server/man/Makefile.am -> install/tools/man/Makefile.am renamed: ipa-server/man/ipa-compat-manage.1 -> install/tools/man/ipa-compat-manage.1 renamed: ipa-server/man/ipa-ldap-updater.1 -> install/tools/man/ipa-ldap-updater.1 renamed: ipa-server/man/ipa-replica-install.1 -> install/tools/man/ipa-replica-install.1 renamed: ipa-server/man/ipa-replica-manage.1 -> install/tools/man/ipa-replica-manage.1 renamed: ipa-server/man/ipa-replica-prepare.1 -> install/tools/man/ipa-replica-prepare.1 renamed: ipa-server/man/ipa-server-certinstall.1 -> install/tools/man/ipa-server-certinstall.1 renamed: ipa-server/man/ipa-server-install.1 -> install/tools/man/ipa-server-install.1 renamed: ipa-server/man/ipa_kpasswd.8 -> install/tools/man/ipa_kpasswd.8 renamed: ipa-server/man/ipa_webgui.8 -> install/tools/man/ipa_webgui.8 renamed: ipa-server/man/ipactl.8 -> install/tools/man/ipactl.8 renamed: ipa-server/ipa-install/updates/Makefile.am -> install/updates/Makefile.am renamed: ipa-server/ipa-install/updates/RFC2307bis.update -> install/updates/RFC2307bis.update renamed: ipa-server/ipa-install/updates/RFC4876.update -> install/updates/RFC4876.update renamed: ipa-server/ipa-install/updates/indices.update -> install/updates/indices.update renamed: ipa-server/ipa-install/updates/nss_ldap.update -> install/updates/nss_ldap.update renamed: ipa-server/ipa-install/updates/replication.update -> install/updates/replication.update renamed: ipa-server/ipa-install/updates/winsync_index.update -> install/updates/winsync_index.update renamed: ipa-server/ipaserver/Makefile.am -> ipaserver/install/Makefile.am renamed: ipa-server/ipaserver/__init__.py -> ipaserver/install/__init__.py renamed: ipa-server/ipaserver/bindinstance.py -> ipaserver/install/bindinstance.py renamed: ipa-server/ipaserver/certs.py -> ipaserver/install/certs.py renamed: ipa-server/ipaserver/dsinstance.py -> ipaserver/install/dsinstance.py renamed: ipa-server/ipaserver/httpinstance.py -> ipaserver/install/httpinstance.py renamed: ipa-server/ipaserver/installutils.py -> ipaserver/install/installutils.py renamed: ipa-server/ipaserver/ipaldap.py -> ipaserver/install/ipaldap.py renamed: ipa-server/ipaserver/krbinstance.py -> ipaserver/install/krbinstance.py renamed: ipa-server/ipaserver/ldapupdate.py -> ipaserver/install/ldapupdate.py renamed: ipa-server/ipaserver/ntpinstance.py -> ipaserver/install/ntpinstance.py renamed: ipa-server/ipaserver/replication.py -> ipaserver/install/replication.py renamed: ipa-server/ipaserver/service.py -> ipaserver/install/service.py renamed: ipa-server/selinux/Makefile -> selinux/Makefile renamed: ipa-server/selinux/ipa-server-selinux.spec.in -> selinux/ipa-server-selinux.spec.in renamed: ipa-server/selinux/ipa_kpasswd/ipa_kpasswd.fc -> selinux/ipa_kpasswd/ipa_kpasswd.fc renamed: ipa-server/selinux/ipa_kpasswd/ipa_kpasswd.te -> selinux/ipa_kpasswd/ipa_kpasswd.te renamed: ipa-server/selinux/ipa_webgui/ipa_webgui.fc -> selinux/ipa_webgui/ipa_webgui.fc renamed: ipa-server/selinux/ipa_webgui/ipa_webgui.te -> selinux/ipa_webgui/ipa_webgui.te renamed: ipa-server/version.m4.in -> version.m4.in
Diffstat (limited to 'selinux')
-rw-r--r--selinux/Makefile28
-rw-r--r--selinux/ipa-server-selinux.spec.in86
-rw-r--r--selinux/ipa_kpasswd/ipa_kpasswd.fc9
-rw-r--r--selinux/ipa_kpasswd/ipa_kpasswd.te71
-rw-r--r--selinux/ipa_webgui/ipa_webgui.fc11
-rw-r--r--selinux/ipa_webgui/ipa_webgui.te97
6 files changed, 302 insertions, 0 deletions
diff --git a/selinux/Makefile b/selinux/Makefile
new file mode 100644
index 00000000..a662d2fd
--- /dev/null
+++ b/selinux/Makefile
@@ -0,0 +1,28 @@
+SUBDIRS = ipa_webgui ipa_kpasswd
+POLICY_MAKEFILE = /usr/share/selinux/devel/Makefile
+POLICY_DIR = $(DESTDIR)/usr/share/selinux/targeted
+
+all:
+ if [ ! -e $(POLICY_MAKEFILE) ]; then echo "You need to install the SELinux development tools (selinux-policy-devel)" && exit 1; fi
+
+ @for subdir in $(SUBDIRS); do \
+ (cd $$subdir && $(MAKE) -f $(POLICY_MAKEFILE) $@) || exit 1; \
+ done
+
+clean:
+ @for subdir in $(SUBDIRS); do \
+ (cd $$subdir && $(MAKE) -f $(POLICY_MAKEFILE) $@) || exit 1; \
+ done
+
+distclean: clean
+ rm -f ipa-server-selinux.spec
+
+maintainer-clean: distclean
+
+install: all
+ install -d $(POLICY_DIR)
+ install -m 644 ipa_webgui/ipa_webgui.pp $(POLICY_DIR)
+ install -m 644 ipa_kpasswd/ipa_kpasswd.pp $(POLICY_DIR)
+
+load:
+ /usr/sbin/semodule -i ipa_webgui/ipa_webgui.pp ipa_kpasswd/ipa_kpasswd.pp
diff --git a/selinux/ipa-server-selinux.spec.in b/selinux/ipa-server-selinux.spec.in
new file mode 100644
index 00000000..3387553a
--- /dev/null
+++ b/selinux/ipa-server-selinux.spec.in
@@ -0,0 +1,86 @@
+%define POLICYCOREUTILSVER 1.33.12-1
+
+Name: ipa-server-selinux
+Version: __VERSION__
+Release: __RELEASE__%{?dist}
+Summary: IPA server SELinux policies
+
+Group: System Environment/Base
+License: GPLv2
+URL: http://www.freeipa.org
+Source0: ipa-server-%{version}.tgz
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+BuildArch: noarch
+
+BuildRequires: selinux-policy-devel m4 make policycoreutils >= %{POLICYCOREUTILSVER}
+Requires(pre): policycoreutils >= %{POLICYCOREUTILSVER} libsemanage
+
+%description
+SELinux policy for ipa-server
+
+%prep
+%setup -n ipa-server-%{version} -q
+
+%build
+cd selinux
+make
+
+%clean
+%{__rm} -fR %{buildroot}
+
+%install
+%{__rm} -fR %{buildroot}
+cd selinux
+install -d %{buildroot}/%{_usr}/share/selinux/targeted/
+make DESTDIR=%{buildroot} install
+
+%files
+%{_usr}/share/selinux/targeted/ipa_webgui.pp
+%{_usr}/share/selinux/targeted/ipa_kpasswd.pp
+
+
+%define saveFileContext() \
+if [ -s /etc/selinux/config ]; then \
+ . %{_sysconfdir}/selinux/config; \
+ FILE_CONTEXT=%{_sysconfdir}/selinux/%1/contexts/files/file_contexts; \
+ if [ "${SELINUXTYPE}" == %1 -a -f ${FILE_CONTEXT} ]; then \
+ cp -f ${FILE_CONTEXT} ${FILE_CONTEXT}.%{name}; \
+ fi \
+fi;
+
+%define relabel() \
+. %{_sysconfdir}/selinux/config; \
+FILE_CONTEXT=%{_sysconfdir}/selinux/%1/contexts/files/file_contexts; \
+selinuxenabled; \
+if [ $? == 0 -a "${SELINUXTYPE}" == %1 -a -f ${FILE_CONTEXT}.%{name} ]; then \
+ fixfiles -C ${FILE_CONTEXT}.%{name} restore; \
+ rm -f ${FILE_CONTEXT}.%name; \
+fi;
+
+%pre
+%saveFileContext targeted
+
+%post
+semodule -s targeted -i /usr/share/selinux/targeted/ipa_webgui.pp /usr/share/selinux/targeted/ipa_kpasswd.pp
+%relabel targeted
+
+%preun
+if [ $1 = 0 ]; then
+%saveFileContext targeted
+fi
+
+%postun
+if [ $1 = 0 ]; then
+semodule -s targeted -r ipa_webgui ipa_kpasswd
+%relabel targeted
+fi
+
+%changelog
+* Thu Apr 3 2008 Rob Crittenden <rcritten@redhat.com> - 1.0.0-1
+- Version bump for release
+
+* Thu Feb 21 2008 Rob Crittenden <rcritten@redhat.com> - 0.99.0-1
+- Version bump for release
+
+* Thu Jan 17 2008 Karl MacMillan <kmacmill@redhat.com> - 0.6.0-1
+- Initial version
diff --git a/selinux/ipa_kpasswd/ipa_kpasswd.fc b/selinux/ipa_kpasswd/ipa_kpasswd.fc
new file mode 100644
index 00000000..2dcf827d
--- /dev/null
+++ b/selinux/ipa_kpasswd/ipa_kpasswd.fc
@@ -0,0 +1,9 @@
+#
+# /usr
+#
+/usr/sbin/ipa_kpasswd -- gen_context(system_u:object_r:ipa_kpasswd_exec_t,s0)
+
+#
+# /var
+#
+/var/cache/ipa/kpasswd(/.*)? gen_context(system_u:object_r:ipa_kpasswd_ccache_t,s0)
diff --git a/selinux/ipa_kpasswd/ipa_kpasswd.te b/selinux/ipa_kpasswd/ipa_kpasswd.te
new file mode 100644
index 00000000..b5203a4e
--- /dev/null
+++ b/selinux/ipa_kpasswd/ipa_kpasswd.te
@@ -0,0 +1,71 @@
+policy_module(ipa_kpasswd, 1.0)
+
+########################################
+#
+# Declarations
+#
+
+type ipa_kpasswd_t;
+type ipa_kpasswd_exec_t;
+type ipa_kpasswd_var_run_t;
+type ipa_kpasswd_ccache_t;
+init_daemon_domain(ipa_kpasswd_t, ipa_kpasswd_exec_t)
+
+########################################
+#
+# IPA kpasswd local policy
+#
+
+allow ipa_kpasswd_t self:capability { sys_nice dac_override };
+allow ipa_kpasswd_t self:tcp_socket create_stream_socket_perms;
+allow ipa_kpasswd_t self:udp_socket create_socket_perms;
+
+files_read_etc_files(ipa_kpasswd_t)
+files_search_usr(ipa_kpasswd_t)
+
+files_pid_file(ipa_kpasswd_var_run_t);
+allow ipa_kpasswd_t ipa_kpasswd_var_run_t:file manage_file_perms;
+files_pid_filetrans(ipa_kpasswd_t,ipa_kpasswd_var_run_t,file)
+
+auth_use_nsswitch(ipa_kpasswd_t)
+
+libs_use_ld_so(ipa_kpasswd_t)
+libs_use_shared_libs(ipa_kpasswd_t)
+
+logging_send_syslog_msg(ipa_kpasswd_t)
+
+miscfiles_read_localization(ipa_kpasswd_t)
+
+kerberos_use(ipa_kpasswd_t)
+kerberos_manage_host_rcache(ipa_kpasswd_t)
+kerberos_read_kdc_config(ipa_kpasswd_t)
+
+kernel_read_system_state(ipa_kpasswd_t)
+
+# /var/cache/ipa/kpasswd
+files_type(ipa_kpasswd_ccache_t)
+manage_dirs_pattern(ipa_kpasswd_t, ipa_kpasswd_ccache_t, ipa_kpasswd_ccache_t)
+manage_files_pattern(ipa_kpasswd_t, ipa_kpasswd_ccache_t, ipa_kpasswd_ccache_t)
+files_var_filetrans(ipa_kpasswd_t, ipa_kpasswd_ccache_t,dir)
+
+kernel_read_network_state(ipa_kpasswd_t)
+kernel_read_network_state_symlinks(ipa_kpasswd_t)
+
+corenet_tcp_sendrecv_all_if(ipa_kpasswd_t)
+corenet_udp_sendrecv_all_if(ipa_kpasswd_t)
+corenet_raw_sendrecv_all_if(ipa_kpasswd_t)
+corenet_tcp_sendrecv_all_nodes(ipa_kpasswd_t)
+corenet_udp_sendrecv_all_nodes(ipa_kpasswd_t)
+corenet_raw_sendrecv_all_nodes(ipa_kpasswd_t)
+corenet_tcp_sendrecv_all_ports(ipa_kpasswd_t)
+corenet_udp_sendrecv_all_ports(ipa_kpasswd_t)
+corenet_non_ipsec_sendrecv(ipa_kpasswd_t)
+corenet_tcp_bind_all_nodes(ipa_kpasswd_t)
+corenet_udp_bind_all_nodes(ipa_kpasswd_t)
+corenet_tcp_bind_kerberos_admin_port(ipa_kpasswd_t)
+corenet_udp_bind_kerberos_admin_port(ipa_kpasswd_t)
+require {
+ type krb5kdc_conf_t;
+};
+
+allow ipa_kpasswd_t krb5kdc_conf_t:dir search_dir_perms;
diff --git a/selinux/ipa_webgui/ipa_webgui.fc b/selinux/ipa_webgui/ipa_webgui.fc
new file mode 100644
index 00000000..c9dfb2b5
--- /dev/null
+++ b/selinux/ipa_webgui/ipa_webgui.fc
@@ -0,0 +1,11 @@
+#
+# /usr
+#
+/usr/sbin/ipa_webgui -- gen_context(system_u:object_r:ipa_webgui_exec_t,s0)
+
+
+#
+# /var
+#
+/var/log/ipa_error\.log -- gen_context(system_u:object_r:ipa_webgui_log_t,s0)
+/var/cache/ipa/sessions(/.*)? gen_context(system_u:object_r:ipa_cache_t,s0)
diff --git a/selinux/ipa_webgui/ipa_webgui.te b/selinux/ipa_webgui/ipa_webgui.te
new file mode 100644
index 00000000..a9818d82
--- /dev/null
+++ b/selinux/ipa_webgui/ipa_webgui.te
@@ -0,0 +1,97 @@
+policy_module(ipa_webgui, 1.0)
+
+########################################
+#
+# Declarations
+#
+
+require {
+ type sbin_t;
+}
+type ipa_webgui_t;
+type ipa_webgui_exec_t;
+type ipa_webgui_var_run_t;
+type ipa_cache_t;
+files_type(ipa_cache_t)
+init_daemon_domain(ipa_webgui_t, ipa_webgui_exec_t)
+
+type ipa_webgui_log_t;
+logging_log_file(ipa_webgui_log_t)
+
+########################################
+#
+# IPA webgui local policy
+#
+
+allow ipa_webgui_t self:tcp_socket create_stream_socket_perms;
+allow ipa_webgui_t self:udp_socket create_socket_perms;
+allow ipa_webgui_t self:process setfscreate;
+
+# This is how the kerberos credential cache is passed to
+# the ipa_webgui process. Unfortunately, the kerberos
+# libraries seem to insist that it be open rw. To top it
+# all off there is no interface for this either.
+require {
+ type httpd_tmp_t;
+}
+allow ipa_webgui_t httpd_tmp_t:file read_file_perms;
+dontaudit ipa_webgui_t httpd_tmp_t:file write;
+
+apache_search_sys_content(ipa_webgui_t)
+apache_read_config(ipa_webgui_t)
+
+corecmd_list_bin(ipa_webgui_t)
+
+miscfiles_read_localization(ipa_webgui_t)
+
+files_list_usr(ipa_webgui_t)
+files_read_etc_files(ipa_webgui_t)
+files_read_usr_files(ipa_webgui_t)
+files_read_usr_symlinks(ipa_webgui_t)
+files_search_etc(ipa_webgui_t)
+files_search_tmp(ipa_webgui_t)
+
+files_pid_file(ipa_webgui_var_run_t)
+allow ipa_webgui_t ipa_webgui_var_run_t:file manage_file_perms;
+files_pid_filetrans(ipa_webgui_t,ipa_webgui_var_run_t,file)
+
+kerberos_read_config(ipa_webgui_t)
+
+kernel_read_system_state(ipa_webgui_t)
+
+auth_use_nsswitch(ipa_webgui_t)
+
+libs_use_ld_so(ipa_webgui_t)
+libs_use_shared_libs(ipa_webgui_t)
+
+logging_search_logs(ipa_webgui_t)
+logging_log_filetrans(ipa_webgui_t,ipa_webgui_log_t,file)
+allow ipa_webgui_t ipa_webgui_log_t:file rw_file_perms;
+
+allow ipa_webgui_t self:capability { setgid setuid };
+
+# /var/cache/ipa/sessions
+files_type(ipa_cache_t)
+manage_dirs_pattern(ipa_webgui_t, ipa_cache_t, ipa_cache_t)
+manage_files_pattern(ipa_webgui_t, ipa_cache_t, ipa_cache_t)
+files_var_filetrans(ipa_webgui_t, ipa_cache_t,dir)
+
+userdom_dontaudit_search_sysadm_home_dirs(ipa_webgui_t)
+
+corenet_tcp_sendrecv_all_if(ipa_webgui_t)
+corenet_udp_sendrecv_all_if(ipa_webgui_t)
+corenet_raw_sendrecv_all_if(ipa_webgui_t)
+corenet_tcp_sendrecv_all_nodes(ipa_webgui_t)
+corenet_udp_sendrecv_all_nodes(ipa_webgui_t)
+corenet_raw_sendrecv_all_nodes(ipa_webgui_t)
+corenet_tcp_sendrecv_all_ports(ipa_webgui_t)
+corenet_udp_sendrecv_all_ports(ipa_webgui_t)
+corenet_non_ipsec_sendrecv(ipa_webgui_t)
+corenet_tcp_bind_all_nodes(ipa_webgui_t)
+corenet_udp_bind_all_nodes(ipa_webgui_t)
+corenet_tcp_bind_http_cache_port(ipa_webgui_t)
+corenet_tcp_connect_http_cache_port(ipa_webgui_t)
+corenet_tcp_connect_ldap_port(ipa_webgui_t)
+
+corecmd_search_sbin(ipa_webgui_t)
+allow ipa_webgui_t sbin_t:dir read;