
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="http://selinuxproject.org/w/skins/common/feed.css?63"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>NB TE - Revision history</title>
		<link>http://selinuxproject.org/w/?title=NB_TE&amp;action=history</link>
		<description>Revision history for this page on the wiki</description>
		<language>en</language>
		<generator>MediaWiki 1.10.4</generator>
		<lastBuildDate>Sat, 18 May 2013 15:48:22 GMT</lastBuildDate>
		<item>
			<title>Jaxelson: /* Type Enforcement (TE) */ linked mandatory access control</title>
			<link>http://selinuxproject.org/w/?title=NB_TE&amp;diff=1050&amp;oldid=prev</link>
			<description>&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Type Enforcement (TE) -&lt;/span&gt; linked mandatory access control&lt;/p&gt;

			&lt;table border='0' width='98%' cellpadding='0' cellspacing='4' style=&quot;background-color: white;&quot;&gt;
			&lt;tr&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;←Older revision&lt;/td&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;Revision as of 23:21, 13 September 2010&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 1:&lt;/strong&gt;&lt;/td&gt;
&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 1:&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;''See Also: [[TypeEnforcement]]''&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;''See Also: [[TypeEnforcement]]''&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;= Type Enforcement (TE) =&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;= Type Enforcement (TE) =&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; font-size: smaller;&quot;&gt;SELinux makes use of a specific style of type enforcement&amp;lt;ref name=&amp;quot;ftn5&amp;quot;&amp;gt;&amp;lt;sup&amp;gt;There are various &amp;quot;type enforcement&amp;quot; technologies. &amp;lt;/sup&amp;gt;&amp;lt;/ref&amp;gt; (TE) to enforce mandatory access control. For SELinux it means that all [[NB_Subjects | subjects]] and [[NB_Objects | objects]] have a type identifier associated to them that can then be used to enforce rules laid down in a policy. &lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; font-size: smaller;&quot;&gt;SELinux makes use of a specific style of type enforcement&amp;lt;ref name=&amp;quot;ftn5&amp;quot;&amp;gt;&amp;lt;sup&amp;gt;There are various &amp;quot;type enforcement&amp;quot; technologies. &amp;lt;/sup&amp;gt;&amp;lt;/ref&amp;gt; (TE) to enforce &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;mandatory access control&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;. For SELinux it means that all [[NB_Subjects | subjects]] and [[NB_Objects | objects]] have a type identifier associated to them that can then be used to enforce rules laid down in a policy. &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;The SELinux type identifier is a simple variable-length string that is defined in the policy and then associated to a [[NB_SC | security context]]. It is also used in the majority of [[PolicyLanguage | SELinux language statements and rules]] used to build a policy that will, when loaded into the security server, enforce the policy.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;The SELinux type identifier is a simple variable-length string that is defined in the policy and then associated to a [[NB_SC | security context]]. It is also used in the majority of [[PolicyLanguage | SELinux language statements and rules]] used to build a policy that will, when loaded into the security server, enforce the policy.&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
			<pubDate>Mon, 13 Sep 2010 23:21:41 GMT</pubDate>			<dc:creator>Jaxelson</dc:creator>			<comments>http://selinuxproject.org/page/Talk:NB_TE</comments>		</item>
		<item>
			<title>Jaxelson: linked building a basic policy</title>
			<link>http://selinuxproject.org/w/?title=NB_TE&amp;diff=1049&amp;oldid=prev</link>
			<description>&lt;p&gt;linked building a basic policy&lt;/p&gt;

			&lt;table border='0' width='98%' cellpadding='0' cellspacing='4' style=&quot;background-color: white;&quot;&gt;
			&lt;tr&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;←Older revision&lt;/td&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;Revision as of 21:21, 13 September 2010&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 9:&lt;/strong&gt;&lt;/td&gt;
&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 9:&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;Basically if the type identifier is used to reference a subject it is referring to a GNU / Linux process or domain (i.e. domain type). If the type identifier is used to reference an object then it is specifying its object type (i.e. file type).&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;Basically if the type identifier is used to reference a subject it is referring to a GNU / Linux process or domain (i.e. domain type). If the type identifier is used to reference an object then it is specifying its object type (i.e. file type).&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; font-size: smaller;&quot;&gt;While SELinux refers to a subject as being an active process that is associated to a domain type, the scope of an SELinux type enforcement domain can vary widely. For example in the simple policy built in the Building a Basic Policy section &lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;of volume 2&lt;/del&gt;, all the processes on the system run in the unconfined_t domain, therefore every process is &amp;quot;of type &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt;&amp;quot; (that means it can do whatever it likes within the limits of the standard Linux DAC policy).&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; font-size: smaller;&quot;&gt;While SELinux refers to a subject as being an active process that is associated to a domain type, the scope of an SELinux type enforcement domain can vary widely. For example in the simple policy built in the &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Building a Basic Policy&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;section, all the processes on the system run in the unconfined_t domain, therefore every process is &amp;quot;of type &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt;&amp;quot; (that means it can do whatever it likes within the limits of the standard Linux DAC policy).&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;It is only when additional policies are implemented in the simple policy (via loadable modules), that areas start to be confined, for example an external gateway is run in its own isolated domain (&amp;lt;tt&amp;gt;ext_gateway_t&amp;lt;/tt&amp;gt;) that cannot be &amp;quot;interfered&amp;quot; with by any of the &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt; processes (except to run or transition the gateway process into its own domain). This scenario is similar to the &amp;quot;targeted&amp;quot; policy delivered as standard in Red Hat Fedora where the majority of user space processes run under the unconfined_t domain (although don't think they are equivalent as the policies supplied with the [[Reference Policy]] have areas isolated by various domains and has evolved over years of work).&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;It is only when additional policies are implemented in the simple policy (via loadable modules), that areas start to be confined, for example an external gateway is run in its own isolated domain (&amp;lt;tt&amp;gt;ext_gateway_t&amp;lt;/tt&amp;gt;) that cannot be &amp;quot;interfered&amp;quot; with by any of the &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt; processes (except to run or transition the gateway process into its own domain). This scenario is similar to the &amp;quot;targeted&amp;quot; policy delivered as standard in Red Hat Fedora where the majority of user space processes run under the unconfined_t domain (although don't think they are equivalent as the policies supplied with the [[Reference Policy]] have areas isolated by various domains and has evolved over years of work).&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
			<pubDate>Mon, 13 Sep 2010 21:21:44 GMT</pubDate>			<dc:creator>Jaxelson</dc:creator>			<comments>http://selinuxproject.org/page/Talk:NB_TE</comments>		</item>
		<item>
			<title>Jaxelson: /* Type Enforcement (TE) */ linked reference policy</title>
			<link>http://selinuxproject.org/w/?title=NB_TE&amp;diff=1047&amp;oldid=prev</link>
			<description>&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Type Enforcement (TE) -&lt;/span&gt; linked reference policy&lt;/p&gt;

			&lt;table border='0' width='98%' cellpadding='0' cellspacing='4' style=&quot;background-color: white;&quot;&gt;
			&lt;tr&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;←Older revision&lt;/td&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;Revision as of 21:20, 13 September 2010&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 11:&lt;/strong&gt;&lt;/td&gt;
&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 11:&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;While SELinux refers to a subject as being an active process that is associated to a domain type, the scope of an SELinux type enforcement domain can vary widely. For example in the simple policy built in the Building a Basic Policy section of volume 2, all the processes on the system run in the unconfined_t domain, therefore every process is &amp;quot;of type &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt;&amp;quot; (that means it can do whatever it likes within the limits of the standard Linux DAC policy).&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;While SELinux refers to a subject as being an active process that is associated to a domain type, the scope of an SELinux type enforcement domain can vary widely. For example in the simple policy built in the Building a Basic Policy section of volume 2, all the processes on the system run in the unconfined_t domain, therefore every process is &amp;quot;of type &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt;&amp;quot; (that means it can do whatever it likes within the limits of the standard Linux DAC policy).&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; font-size: smaller;&quot;&gt;It is only when additional policies are implemented in the simple policy (via loadable modules), that areas start to be confined, for example an external gateway is run in its own isolated domain (&amp;lt;tt&amp;gt;ext_gateway_t&amp;lt;/tt&amp;gt;) that cannot be &amp;quot;interfered&amp;quot; with by any of the &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt; processes (except to run or transition the gateway process into its own domain). This scenario is similar to the &amp;quot;targeted&amp;quot; policy delivered as standard in Red Hat Fedora where the majority of user space processes run under the unconfined_t domain (although don't think they are equivalent as the policies supplied with the Reference Policy have areas isolated by various domains and has evolved over years of work).&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; font-size: smaller;&quot;&gt;It is only when additional policies are implemented in the simple policy (via loadable modules), that areas start to be confined, for example an external gateway is run in its own isolated domain (&amp;lt;tt&amp;gt;ext_gateway_t&amp;lt;/tt&amp;gt;) that cannot be &amp;quot;interfered&amp;quot; with by any of the &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt; processes (except to run or transition the gateway process into its own domain). This scenario is similar to the &amp;quot;targeted&amp;quot; policy delivered as standard in Red Hat Fedora where the majority of user space processes run under the unconfined_t domain (although don't think they are equivalent as the policies supplied with the &lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Reference Policy&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;have areas isolated by various domains and has evolved over years of work).&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;== Constraints ==&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;== Constraints ==&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
			<pubDate>Mon, 13 Sep 2010 21:20:06 GMT</pubDate>			<dc:creator>Jaxelson</dc:creator>			<comments>http://selinuxproject.org/page/Talk:NB_TE</comments>		</item>
		<item>
			<title>Jaxelson at 21:05, 13 September 2010</title>
			<link>http://selinuxproject.org/w/?title=NB_TE&amp;diff=1040&amp;oldid=prev</link>
			<description>&lt;p&gt;&lt;/p&gt;

			&lt;table border='0' width='98%' cellpadding='0' cellspacing='4' style=&quot;background-color: white;&quot;&gt;
			&lt;tr&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;←Older revision&lt;/td&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;Revision as of 21:05, 13 September 2010&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 32:&lt;/strong&gt;&lt;/td&gt;
&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 32:&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;----&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;----&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&amp;lt;references/&amp;gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&amp;lt;references/&amp;gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; font-size: smaller;&quot;&gt;[[Category:Notebook]]&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
			<pubDate>Mon, 13 Sep 2010 21:05:25 GMT</pubDate>			<dc:creator>Jaxelson</dc:creator>			<comments>http://selinuxproject.org/page/Talk:NB_TE</comments>		</item>
		<item>
			<title>Jaxelson at 20:25, 31 August 2010</title>
			<link>http://selinuxproject.org/w/?title=NB_TE&amp;diff=1020&amp;oldid=prev</link>
			<description>&lt;p&gt;&lt;/p&gt;

			&lt;table border='0' width='98%' cellpadding='0' cellspacing='4' style=&quot;background-color: white;&quot;&gt;
			&lt;tr&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;←Older revision&lt;/td&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;Revision as of 20:25, 31 August 2010&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 1:&lt;/strong&gt;&lt;/td&gt;
&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 1:&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; font-size: smaller;&quot;&gt;''See Also: [[TypeEnforcement]]''&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;= Type Enforcement (TE) =&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;= Type Enforcement (TE) =&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;SELinux makes use of a specific style of type enforcement&amp;lt;ref name=&amp;quot;ftn5&amp;quot;&amp;gt;&amp;lt;sup&amp;gt;There are various &amp;quot;type enforcement&amp;quot; technologies. &amp;lt;/sup&amp;gt;&amp;lt;/ref&amp;gt; (TE) to enforce mandatory access control. For SELinux it means that all [[NB_Subjects | subjects]] and [[NB_Objects | objects]] have a type identifier associated to them that can then be used to enforce rules laid down in a policy. &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;SELinux makes use of a specific style of type enforcement&amp;lt;ref name=&amp;quot;ftn5&amp;quot;&amp;gt;&amp;lt;sup&amp;gt;There are various &amp;quot;type enforcement&amp;quot; technologies. &amp;lt;/sup&amp;gt;&amp;lt;/ref&amp;gt; (TE) to enforce mandatory access control. For SELinux it means that all [[NB_Subjects | subjects]] and [[NB_Objects | objects]] have a type identifier associated to them that can then be used to enforce rules laid down in a policy. &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
			<pubDate>Tue, 31 Aug 2010 20:25:53 GMT</pubDate>			<dc:creator>Jaxelson</dc:creator>			<comments>http://selinuxproject.org/page/Talk:NB_TE</comments>		</item>
		<item>
			<title>RichardHaines: /* Constraints */</title>
			<link>http://selinuxproject.org/w/?title=NB_TE&amp;diff=998&amp;oldid=prev</link>
			<description>&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Constraints&lt;/span&gt;&lt;/p&gt;

			&lt;table border='0' width='98%' cellpadding='0' cellspacing='4' style=&quot;background-color: white;&quot;&gt;
			&lt;tr&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;←Older revision&lt;/td&gt;
				&lt;td colspan='2' width='50%' align='center' style=&quot;background-color: white;&quot;&gt;Revision as of 15:21, 21 May 2010&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 25:&lt;/strong&gt;&lt;/td&gt;
&lt;td colspan=&quot;2&quot; align=&quot;left&quot;&gt;&lt;strong&gt;Line 25:&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;This states that a process transition can only occur if the source role is the same as the target role, therefore a constraint is a condition that must be satisfied in order for one or more permissions to be granted (i.e. a constraint imposes additional restrictions on TE rules). An example of this can be found in the [[ConstraintStatements | Constraint Statements]] section.&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;This states that a process transition can only occur if the source role is the same as the target role, therefore a constraint is a condition that must be satisfied in order for one or more permissions to be granted (i.e. a constraint imposes additional restrictions on TE rules). An example of this can be found in the [[ConstraintStatements | Constraint Statements]] section.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; font-size: smaller;&quot;&gt;There are a number of different constraint statements within the policy language to support areas such as MLS (see the [[ConstraintStatements | Constraint Statements]] and [[&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;MLS_Statements &lt;/del&gt;| MLS Statements]] sections). &lt;/td&gt;&lt;td&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; font-size: smaller;&quot;&gt;There are a number of different constraint statements within the policy language to support areas such as MLS (see the [[ConstraintStatements | Constraint Statements]] and [[&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;MLSStatements &lt;/ins&gt;| MLS Statements]] sections). &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
			<pubDate>Fri, 21 May 2010 15:21:21 GMT</pubDate>			<dc:creator>RichardHaines</dc:creator>			<comments>http://selinuxproject.org/page/Talk:NB_TE</comments>		</item>
		<item>
			<title>RichardHaines: New page: = Type Enforcement (TE) = SELinux makes use of a specific style of type enforcement&lt;ref name=&quot;ftn5&quot;&gt;&lt;sup&gt;There are various &quot;type enforcement&quot; technologies. &lt;/sup&gt;&lt;/ref&gt; (TE) to enforce man...</title>
			<link>http://selinuxproject.org/w/?title=NB_TE&amp;diff=933&amp;oldid=prev</link>
			<description>&lt;p&gt;New page: = Type Enforcement (TE) = SELinux makes use of a specific style of type enforcement&amp;lt;ref name=&amp;quot;ftn5&amp;quot;&amp;gt;&amp;lt;sup&amp;gt;There are various &amp;quot;type enforcement&amp;quot; technologies. &amp;lt;/sup&amp;gt;&amp;lt;/ref&amp;gt; (TE) to enforce man...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Type Enforcement (TE) =&lt;br /&gt;
SELinux makes use of a specific style of type enforcement&amp;lt;ref name=&amp;quot;ftn5&amp;quot;&amp;gt;&amp;lt;sup&amp;gt;There are various &amp;quot;type enforcement&amp;quot; technologies. &amp;lt;/sup&amp;gt;&amp;lt;/ref&amp;gt; (TE) to enforce mandatory access control. For SELinux it means that all [[NB_Subjects | subjects]] and [[NB_Objects | objects]] have a type identifier associated to them that can then be used to enforce rules laid down in a policy. &lt;br /&gt;
&lt;br /&gt;
The SELinux type identifier is a simple variable-length string that is defined in the policy and then associated to a [[NB_SC | security context]]. It is also used in the majority of [[PolicyLanguage | SELinux language statements and rules]] used to build a policy that will, when loaded into the security server, enforce the policy.&lt;br /&gt;
&lt;br /&gt;
Because the type identifier (or just &amp;quot;type&amp;quot;) is associated to all subjects and objects, it can sometimes be difficult to distinguish what the type is actually associated with (it's not helped by the fact that by convention, type identifiers all end in &amp;quot;&amp;lt;tt&amp;gt;_t&amp;lt;/tt&amp;gt;&amp;quot;). In the end it comes down to understanding how they are allocated in the policy itself and how they are used by SELinux services. &lt;br /&gt;
&lt;br /&gt;
Basically if the type identifier is used to reference a subject it is referring to a GNU / Linux process or domain (i.e. domain type). If the type identifier is used to reference an object then it is specifying its object type (i.e. file type).&lt;br /&gt;
&lt;br /&gt;
While SELinux refers to a subject as being an active process that is associated to a domain type, the scope of an SELinux type enforcement domain can vary widely. For example in the simple policy built in the Building a Basic Policy section of volume 2, all the processes on the system run in the unconfined_t domain, therefore every process is &amp;quot;of type &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt;&amp;quot; (that means it can do whatever it likes within the limits of the standard Linux DAC policy).&lt;br /&gt;
&lt;br /&gt;
It is only when additional policies are implemented in the simple policy (via loadable modules), that areas start to be confined, for example an external gateway is run in its own isolated domain (&amp;lt;tt&amp;gt;ext_gateway_t&amp;lt;/tt&amp;gt;) that cannot be &amp;quot;interfered&amp;quot; with by any of the &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt; processes (except to run or transition the gateway process into its own domain). This scenario is similar to the &amp;quot;targeted&amp;quot; policy delivered as standard in Red Hat Fedora where the majority of user space processes run under the unconfined_t domain (although don't think they are equivalent as the policies supplied with the Reference Policy have areas isolated by various domains and has evolved over years of work).&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
Within a TE environment the way that subjects are allowed to access an object is via an &amp;lt;tt&amp;gt;allow&amp;lt;/tt&amp;gt; rule, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
allow unconfined_t ext_gateway_t : process transition;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is explained in more detail later, however it states that a process running in the &amp;lt;tt&amp;gt;unconfined_t&amp;lt;/tt&amp;gt; domain has permission to transition a process to the &amp;lt;tt&amp;gt;ext_gateway_t&amp;lt;/tt&amp;gt; domain. However it could be that the policy writer wants to constrain this further and state that this can only happen if the role of the source domain is the same as the role of the target domain. To achieve this a constraint can be imposed using a &amp;lt;tt&amp;gt;constrain&amp;lt;/tt&amp;gt; statement:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
constrain process transition ( r1 == r2 );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This states that a process transition can only occur if the source role is the same as the target role, therefore a constraint is a condition that must be satisfied in order for one or more permissions to be granted (i.e. a constraint imposes additional restrictions on TE rules). An example of this can be found in the [[ConstraintStatements | Constraint Statements]] section.&lt;br /&gt;
&lt;br /&gt;
There are a number of different constraint statements within the policy language to support areas such as MLS (see the [[ConstraintStatements | Constraint Statements]] and [[MLS_Statements | MLS Statements]] sections). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</description>
			<pubDate>Sun, 16 May 2010 13:54:35 GMT</pubDate>			<dc:creator>RichardHaines</dc:creator>			<comments>http://selinuxproject.org/page/Talk:NB_TE</comments>		</item>
	</channel>
</rss>