<chapter id="trans-1"><title>Transition to the Solaris Trusted Extensions Release</title><highlights><itemizedlist><para>This book covers the following topics:</para><listitem><para><olink targetptr="trans-17" remap="internal">The Solaris Trusted Extensions
Release</olink></para>
</listitem><listitem><para><olink targetptr="trans-18" remap="internal">Overview of Changes From Trusted
Solaris Software</olink></para>
</listitem><listitem><para><olink targetptr="trans-44" remap="internal">Summary of Removed Trusted Solaris
Features</olink></para>
</listitem><listitem><para><olink targetptr="trans-25" remap="internal">Differences Between Trusted Solaris
8 Software and Solaris Trusted Extensions</olink></para>
</listitem><listitem><para><olink targetptr="trans-6" remap="internal">Differences Between Solaris Express Developer Edition&nbsp;5/07  Software and Solaris Trusted Extensions</olink></para>
</listitem><listitem><para><olink targetptr="trans-14" remap="internal">New Interfaces in Trusted Extensions
Software</olink></para>
</listitem>
</itemizedlist>
</highlights><sect1 id="trans-17"><title>The Solaris Trusted Extensions Release</title><para><trademark>Solaris</trademark> Trusted Extensions software is a specific
configuration of the Solaris Operating System (Solaris OS). Solaris Trusted Extensions (Trusted Extensions) provides
labels for local objects and processes, for the desktop and windowing system,
for zones and file systems, and for network communications. Trusted Extensions software
is delivered in packages that are added to a version of the Solaris OS.</para><para>Trusted Extensions depends on features in the Solaris release to which
the Trusted Extensions packages are added. Trusted Extensions software does not replace
any Solaris components, but the software does modify certain policy
settings.</para>
</sect1><sect1 id="trans-18"><title>Overview of Changes From Trusted Solaris Software</title><para>Trusted Extensions administrators assign labels to hosts, zones, devices,
and users. Trusted Extensions applies these labels to resources such as files,
processes, network packets, and windows. The basis for applying these labels
is the host or zone with which the resources are associated.</para><para>As in previous Trusted Solaris releases, the Solaris OS provides support for
privileges, authorizations, and auditing. Trusted Extensions adds to the privileges,
authorizations, rights profiles, audit classes, and audit events that the Solaris OS defines.
As in previous releases, Trusted Extensions adds CDE actions to rights profiles.</para><para>As in previous releases, the software provides a trusted windowing system,
desktop, and administration tools that extend Solaris functionality.
Printing is modified to handle labeled print jobs. Also, Trusted Extensions provides
a trusted version of the Sun <trademark>Java</trademark> Desktop System. This trusted version is called Solaris Trusted Extensions (JDS).</para><para>Unlike Trusted Solaris software, Trusted Extensions is a configuration of the
underlying Solaris OS. Trusted Extensions does not support the NIS+ naming service.
LDAP is the recommended naming service for this release. Also, the root user
in Trusted Extensions is identical to the root user in the Solaris OS. You can modify
the root user as you can in the Solaris OS, that is, by turning the root user
into a role.</para>
</sect1><sect1 id="trans-44"><title>Summary of Removed Trusted Solaris Features</title><itemizedlist><para>Because of changes to the architecture, the following Trusted Solaris 8 features
do not exist in Trusted Extensions. For a list of interface changes, see <olink targetptr="ref-1" remap="internal">Appendix&nbsp;A, Interface Changes in the Solaris Trusted
Extensions Release</olink>.</para><listitem><para>Forced and allowed privileges</para>
</listitem><listitem><para>Selected GUIs</para><itemizedlist><listitem><para>Dialog boxes for setting privileges and labels in the File
Manager</para>
</listitem><listitem><para>Enable Logins GUI</para>
</listitem><listitem><para>Password generator GUI</para>
</listitem>
</itemizedlist>
</listitem><listitem><para>Kernel switch settings in <filename class="directory">/etc/system</filename> file</para><simplelist columns="2"><member><literal>tsol_hide_upgraded_names</literal></member><member><literal>tsol_privs_debug</literal></member><member><literal>tsol_clean_windows</literal></member><member><literal>tsol_flush_buffers</literal></member>
</simplelist>
</listitem><listitem><para>Label and privilege attributes in ufs and tmpfs inodes</para>
</listitem><listitem><para>Mail delivery exceptions in <filename>sendmail.cf</filename> and
the Rights tool</para><simplelist columns="2"><member><literal>#0 LabelTooLow=return</literal></member><member><literal>#0 LabelAdminLow=upgrade</literal></member><member><literal>tsoltoolowreturn</literal></member><member><literal>tsoladminlowupgrade</literal></member>
</simplelist>
</listitem><listitem><para>Network labeling protocols &ndash; <literal>tsol</literal>, <literal>tsix</literal>, and <literal>ripso</literal> labels</para>
</listitem><listitem><para>Multilevel directory adornments, including MLDs and SLDs</para>
</listitem><listitem><para>NIS+ naming service for a Trusted Extensions domain</para>
</listitem><listitem><para>Packaging utilities, such as <literal>tsolinfo</literal> file</para>
</listitem><listitem><para>Trusted Solaris extensions to file system commands (Trusted NFS)</para>
</listitem><listitem><para>System_Admin actions for NIS+</para>
</listitem><listitem><para><filename>tnidb</filename> database</para>
</listitem><listitem><para>t6 API</para>
</listitem><listitem><para><filename>vfstab_adjunct</filename> file</para>
</listitem>
</itemizedlist><itemizedlist><para>Because of changes to the architecture, the following Trusted Solaris 8 features
are visibly different in Trusted Extensions.</para><listitem><para>Privileges are called by name, not by number</para>
</listitem><listitem><para>Window label <literal>Trusted Path</literal> replaces <constant>ADMIN_LOW</constant> and <constant>ADMIN_HIGH</constant></para>
</listitem><listitem><para><literal>Trusted Path</literal> workspaces are used for <constant>ADMIN_LOW</constant> and <constant>ADMIN_HIGH</constant> tasks</para>
</listitem><listitem><para>Label attributes are not placed in <filename>exec_attr</filename></para>
</listitem><listitem><para><literal>tsol</literal> policy entry is not used in <filename>exec_attr</filename></para>
</listitem>
</itemizedlist>
</sect1><sect1 id="trans-25"><title>Differences Between Trusted Solaris 8 Software and Solaris Trusted Extensions</title><para>The following sections summarize the components that remain, the components
that have changed, and the components that have been removed in the change
from Trusted Solaris to Solaris Trusted Extensions software.</para><sect2 id="trans-27"><title>Audit Events and Classes in Trusted Extensions</title><para>In Trusted Extensions, the audit classes for X events have been collapsed
from six classes to four classes. The <literal>xa</literal> class and the <literal>xl</literal> class are removed. Events that were assigned to the <literal>xa</literal> class
are in the <literal>ot</literal> class. Events that were assigned to the <literal>xl</literal> class are in the <literal>lo</literal> class. The bit masks of
the remaining X audit classes have been changed from their Trusted Solaris 8 masks.</para><screen>0x00800000:xc:X - object create/destroy
0x00400000:xp:X - privileged/administrative operations
0x01000000:xs:X - operations that always silently fail, if bad
0x01c00000:xx:X - all X events (meta-class</screen>
</sect2><sect2 id="trans-26"><title>Device Management in Trusted Extensions</title><para>In Trusted Extensions, the <command>allocate</command> and <command>deallocate</command> commands
are only available to TCB (Trusted Computing Base) processes that run in the
global zone. Ordinary users must use the Device Manager GUI to allocate and
deallocate devices.</para><para>Trusted Extensions device policy uses the Solaris <command>getdevpolicy</command> and <command>update_drv</command> interfaces. The Trusted Solaris 8 device policies: <literal>data_mac_policy</literal>, <literal>attr_mac_policy</literal>, <literal>open_priv</literal>,
and <literal>str_type</literal> have been removed.</para>
</sect2><sect2 id="trans-40"><title>Files and File System Mounting in Trusted Extensions</title><para>Trusted Extensions provides no explicit mount attributes for specifying
labels. The label of a mounted filesystem is the same as the label that is
associated with the owning host or owning zone. Writing up is not permitted.
Writing up is prevented by disallowing mounts of higher-labeled or disjointly
labeled filesystems. Reading down is permitted.  Reading down is enforced
by restricting mounts of lower-labeled filesystems to be read-only.</para><para>The Trusted Extensions implementation for specifying security attributes
 on file systems follows the Solaris implementation. Therefore, files
do not have forced privileges or allowed privileges. This implementation enables Trusted Extensions to
support any file system that is supported by Solaris zones.</para><para>File relabeling is implemented by moving a file from one mounted file
system to another file system.</para>
</sect2><sect2 id="trans-8"><title>Labels in Trusted Extensions</title><para>As in the Trusted Solaris releases, Trusted Extensions provides a <filename>label_encodings</filename> file. Labels, label ranges, clearances, and defaults are defined
in the <filename>label_encodings</filename> file.</para><para>In Trusted Extensions, the <filename>label_encodings</filename> file that
is installed by default defines commercial labels, such as <literal>RESTRICTED</literal> and <literal>PUBLIC</literal>. In Trusted Solaris releases, the default label encodings file, <filename>label_encodings.multi</filename>, was a version of a U.S. Government encodings
file.</para><para>In the Label Builder, labels are shown in long form instead of in short
form. When choosing a session clearance or workspace label, <literal>Trusted
Path</literal> is used instead of <literal>Admin Low</literal> or <literal>Admin
High</literal>.</para>
</sect2><sect2 id="trans-11"><title>Label APIs in Trusted Extensions</title><para>In Solaris Trusted Extensions, the label APIs that showed the internals of a label's
structure are now obsolete. These label APIs have been replaced by the <function>label_to_str</function> and <function>str_to_label</function> functions. For
the interfaces that are obsolete, and their replacement functions, see <olink targetptr="trans-tbl-lib-2" remap="internal">Table 7</olink>.</para><para>Also, CMW labels have been replaced by sensitivity labels. All CMW and
IL (information label) interfaces have been removed.</para>
</sect2><sect2 id="trans-52"><title>Mail in Trusted Extensions</title><para>In the Solaris Trusted Extensions release, each zone has an independent instance of <command>sendmail</command>. Therefore, mail cannot be upgraded. Users can send mail
and can receive mail only at the label of the user's workspace.</para>
</sect2><sect2 id="trans-37"><title>LDAP Naming Service in Trusted Extensions</title><para>Solaris Trusted Extensions uses LDAP as a naming service. In Trusted Extensions, NIS and
NIS+ do not support the <filename>tnrhdb</filename> and <filename>tnrhtp</filename> databases.
These naming services do not have a proxy server that can bind to a multilevel
port (MLP). Therefore, the trusted networking databases cannot be reached
from multiple zones concurrently.</para><para>Except for user passwords, LDAP data is considered public information.
Therefore, any information in LDAP is not protected by a MAC policy. Instead,
as in the Solaris OS, data is protected by an administrative policy. LDAP administrative
policy is based on LDAP identities and passwords. When sensitivity labels
are assigned as attributes of users and network endpoints, the labels are
stored in an internal format. This format does not disclose classified information.</para><para>When an LDAP server is deployed as the naming service within a Trusted Extensions environment,
the server must be configured to bind to a multilevel port (MLP) in the global
zone.</para><para>Trusted Extensions can also be configured to rely on an existing LDAP infrastructure.
In this case, an LDAP proxy server must be installed. This proxy server must
be configured to bind to an MLP in the global zone of a system that is configured
with Trusted Extensions. This Trusted Extensions system can then proxy multilevel
requests from other zones and other hosts to the existing unlabeled LDAP server.
The unlabeled  server must be assigned the <constant>admin_low</constant> template
in the <filename>tnrhdb</filename> of the proxy server.</para><itemizedlist><para>To migrate NIS+ tables to LDAP entries, see the following man pages:</para><listitem><para><olink targetdoc="refman1m" targetptr="nisldapmaptest-1m" remap="external"><citerefentry><refentrytitle>nisldapmaptest</refentrytitle><manvolnum>1M</manvolnum></citerefentry></olink></para>
</listitem><listitem><para><olink targetdoc="refman1m" targetptr="rpc.nisd-1m" remap="external"><citerefentry><refentrytitle>rpc.nisd</refentrytitle><manvolnum>1M</manvolnum></citerefentry></olink></para>
</listitem><listitem><para><olink targetdoc="refman4" targetptr="rpc.nisd-4" remap="external"><citerefentry><refentrytitle>rpc.nisd</refentrytitle><manvolnum>4</manvolnum></citerefentry></olink></para>
</listitem><listitem><para><olink targetdoc="refman4" targetptr="nis-plusldapmapping-4" remap="external"><citerefentry><refentrytitle>NIS+LDAPmapping</refentrytitle><manvolnum>4</manvolnum></citerefentry></olink></para>
</listitem>
</itemizedlist>
</sect2><sect2 id="trans-54"><title>Named Pipes in Trusted Extensions</title><para>In the Solaris OS, named pipes are used as one-way conduits. In Trusted Extensions,
named pipes permit write-up operations. The writer runs at a lower label than
the reader's dominant label. In Trusted Solaris 8, named pipes were configured by
upgrading the label of the FIFO to the reader's label. In Trusted Extensions,
named pipes are configured by using read-only lofs mounts of directories in
lower-level zones into dominant higher-level zones. The FIFO is created at
the label of the zone of the writer. For more information, see the <olink targetdoc="refman1m" targetptr="mkfifo-1m" remap="external"><citerefentry><refentrytitle>mkfifo</refentrytitle><manvolnum>1M</manvolnum></citerefentry></olink> man page.</para>
</sect2><sect2 id="trans-22"><title>Networking in Trusted Extensions</title><para>Trusted Extensions does not support the TSIX or TSOL networking protocols. Trusted Extensions defines
CIPSO-labeled templates and unlabeled templates in the <filename>tnrhtp</filename> database.
The label <constant>ADMIN_HIGH</constant> is used as an upper bound, but is
never transmitted as a CIPSO label. For more information, see <olink targetptr="trans-42" remap="internal">Zones in Trusted Extensions</olink>.</para><para>The format of the <filename>tnrhtp</filename> database has been simplified
because process attributes like privileges, user ids, and  group ids are no
longer supported. The format of the <filename>tnrhdb</filename> database is
unchanged. The <filename>tnzonecfg</filename> database replaces the <filename>tnidb</filename> database, although the two databases are not equivalent.</para><para>The <filename>/etc/security/tsol/tnrhtp</filename> file that is installed
with the Solaris Trusted Extensions release contains templates that can be used with any <filename>label_encodings</filename> file. The following table shows the correspondences
between earlier versions of <filename>tnrhtp</filename> and the version that
is shipped with the Solaris Trusted Extensions release.</para><table frame="topbot" id="trans-tbl-7"><title>Template Names in the Trusted Solaris 8 and Solaris Trusted Extensions Releases</title><tgroup cols="3" colsep="0" rowsep="0"><colspec colname="colspec0" colwidth="55.65*"/><colspec colname="colspec1" colwidth="43.65*"/><colspec colname="colspec2" colwidth="50.69*"/><thead><row><entry rowsep="1"><para>Trusted Solaris Template Name</para>
</entry><entry rowsep="1"><para>Trusted Extensions Name</para>
</entry><entry rowsep="1"><para>Note</para>
</entry>
</row>
</thead><tbody><row><entry><para><literal>cipso</literal></para>
</entry><entry><para><literal>cipso</literal></para>
</entry><entry><para>For labeled hosts</para>
</entry>
</row><row><entry><para><literal>unlab</literal></para>
</entry><entry><para><literal>admin_low</literal></para>
</entry><entry><para>For unlabeled hosts</para>
</entry>
</row><row><entry colname="colspec0"><para><literal>tsol</literal>, <literal>tsol_cipso</literal>, <literal>tsix</literal></para>
</entry><entry colname="colspec1"><para>None</para>
</entry><entry><para>Use <literal>cipso</literal> template</para>
</entry>
</row><row><entry colname="colspec0"><para><literal>tsol_ripso</literal>, <literal>ripso_top_secret</literal></para>
</entry><entry colname="colspec1"><para>None</para>
</entry><entry><para>Removed</para>
</entry>
</row>
</tbody>
</tgroup>
</table><para>Network communication is restricted by label. By default, zones cannot
communicate with each other because their labels are different.</para><para>Packets from unlabeled hosts that originate outside a Trusted Extensions domain
can be labeled for trusted routing through the secure domain to another host
outside the domain by using IP options. Incoming packets are labeled according
to their originating host's entry in the <filename>tnrhdb</filename>. Incoming
packets are routed through the Trusted Extensions domain according to their sensitivity
level and the trusted routing information. The sensitivity label is still
carried in the IP option. The label is stripped when the packet exits the
trusted domain. IPv6 now supports trusted routing.</para><para>Dynamic routing is not supported. Static routing is supported.</para>
</sect2><sect2 id="trans-39"><title>Packaging in Trusted Extensions</title><para>Trusted Extensions software does not require special packaging attributes.
Therefore, the <filename>tsolinfo</filename> file is no longer used.</para>
</sect2><sect2 id="trans-35"><title>PAM in Trusted Extensions</title><itemizedlist><para>The PAM module for Trusted Extensions, <filename>pam_tsol_account.so.1</filename>,
has only one module type and one function. The module is of type <literal>account</literal>, and the function checks the label range. The module has no options.
No other Trusted Extensions-specific functions of PAM from Trusted Solaris 8 software
are included in this release.</para><listitem><para>If a PAM stack for <literal>account</literal> in the Trusted Solaris 8 release
did not have <literal>label_check_on</literal> in <filename>pam_tsol.so.1</filename>,
then you do not need to add <filename>pam_tsol_account.so.1</filename> to
the corresponding stack in the Solaris Trusted Extensions release.</para>
</listitem><listitem><para>If a PAM stack for <literal>account</literal> in the Trusted Solaris 8 release
did have <literal>label_check_on</literal> in <filename>pam_tsol.so.1</filename>,
then the corresponding stack in the Solaris Trusted Extensions release should use <filename>pam_tsol_account.so.1</filename> in the same place in the stack with no switches.</para>
</listitem>
</itemizedlist><para>Trusted Extensions adds the <literal>allow_unlabeled</literal> option to
PAM services. Together with the <literal>allow_remote</literal> option, administrators
can manage headless systems remotely. For details, see the <olink targetdoc="refman5" targetptr="pam-roles-5" remap="external"><citerefentry><refentrytitle>pam_roles</refentrytitle><manvolnum>5</manvolnum></citerefentry></olink> and <olink targetdoc="trsolrefman" targetptr="pam-tsol-account-5" remap="external"><citerefentry><refentrytitle>pam_tsol_account</refentrytitle><manvolnum>5</manvolnum></citerefentry></olink> man pages.</para><para>PAM stacks for other module types should be used in the same manner
for Trusted Extensions as for the Solaris OS. For more information, see the <olink targetdoc="refman3e" targetptr="pam-3pam" remap="external"><citerefentry><refentrytitle>pam</refentrytitle><manvolnum>3PAM</manvolnum></citerefentry></olink> and <olink targetdoc="refman4" targetptr="pam.conf-4" remap="external"><citerefentry><refentrytitle>pam.conf</refentrytitle><manvolnum>4</manvolnum></citerefentry></olink> man pages.</para>
</sect2><sect2 id="trans-36"><title>Policy in Trusted Extensions</title><para>In Trusted Extensions, a process' clearance is the same as its sensitivity
label. Write up is not supported.</para><para>There is no administrative distinction between <constant>ADMIN_HIGH</constant> and <constant>ADMIN_LOW</constant> workspaces. Therefore, such workspaces are displayed
as <emphasis>Trusted Path</emphasis>.</para><para>The <literal>tsol</literal> policy in the <filename>exec_attr</filename> file
is removed. Use the <literal>solaris</literal> policy.</para>
</sect2><sect2 id="trans-24"><title>Printing in Trusted Extensions</title><para>Trusted Extensions supports both single-level and multilevel printing. Multilevel
printing is implemented in the global zone only. The global zone must have
its own IP address to be a multilevel print service. To use the global zone's
print server, a labeled zone must have a separate IP address from the global
zone.</para><para>Only multilevel printers have a label range. A printer's label range
can be restricted with the Device Allocation Manager.</para><para>In Trusted Solaris releases, banner and trailer pages were enabled by default.
In Trusted Extensions, administrators run a printer model script to add banner
and trailer pages with security information to a printer.</para><screen>lpadmin -p <replaceable>printer</replaceable> -m <replaceable>printer-model-script</replaceable></screen><para>Trusted Extensions adds four printer model scripts: <filename>tsol_standard</filename>, <filename>tsol_netstandard</filename>, <filename>tsol_standard_foomatic</filename>,
and <filename>tsol_netstandard_foomatic</filename>.</para>
</sect2><sect2 id="trans-41"><title>Solaris Management Console in Trusted Extensions</title><para>The Solaris Management Console is no longer a multilevel service. The Solaris Management Console can only be contacted
by clients that are running at the same label as the server. For most Trusted Extensions administration,
access to the global zone is required. Because ordinary users are not permitted
to log in to the global zone, only roles that are cleared for all labels can
connect to the Solaris Management Console in the global zone.</para>
</sect2><sect2 id="trans-13"><title>Window System and CDE in Trusted Extensions</title><para>The login sequence is slightly different, and a new dialog box, Last
Login, contains security information for the login user. The Shutdown menu
item has been replaced with the Suspend System menu item, which checks for
user authorization, then runs the <command>sys-suspend</command> command.</para><para>The <filename class="directory">System_Admin</filename> folder has been
renamed to the <filename class="directory">Trusted_Extensions</filename> folder.</para><para>The CDE actions in the <filename class="directory">Trusted_Extensions</filename> folder
have been updated. The NIS+ actions have been removed. Actions for administering
LDAP and labeled zones have been added.</para>
</sect2><sect2 id="trans-42"><title>Zones in Trusted Extensions</title><para>Trusted Extensions uses zones for labeling. The global zone is an administrative
zone, so is not available to users. The global zone is multilevel. The networking
label of the global zone is <constant>ADMIN_LOW</constant>, but its process
label is <constant>ADMIN_HIGH</constant>. Files that are private to the global
zone are also labeled <constant>ADMIN_HIGH</constant>. Files that are shared
with all zones are labeled <constant>ADMIN_LOW</constant>.</para><para>Each non-global zone has a unique label. Non-global zones are called <firstterm>labeled zones</firstterm>. Labeled zones are available to ordinary users.
The global zone is available to roles only.</para><para>The Trusted Extensions policy for zones is different from Solaris policy. Trusted Extensions does
not require a separate IP address per zone. However, all zones must have a
single naming service. A single naming service provides all zones with a single
set of users, UIDs, and GIDs.</para><para>Network communication is restricted by label.  By default, zones cannot
communicate with each other because their labels are different. The <filename class="directory">/export</filename> directory of a zone can be read by any
zone whose label dominates the label of the <filename class="directory">/export</filename> directory.</para><para>Only system processes and roles are allowed to execute in the global
zone. In certain cases, privileged processes in the global zone can be exempt
from aspects of MAC policy. For example, system processes and roles that have
the  <constant>file_dac_search</constant> privilege and the <constant>file_dac_read</constant> privilege can access files which belong to labeled zones.</para>
</sect2><sect2 id="trans-21"><title>Privileges in Trusted Extensions</title><itemizedlist><para>Privileges in Trusted Extensions are coded to correspond to their Solaris counterparts.
Privileges in Solaris software are implemented differently from privileges
in previous Trusted Solaris releases.</para><listitem><para>Basic privileges are implemented. For example, <constant>proc_exec</constant> and <constant>proc_info</constant> are basic privileges.</para><para>Basic privileges do not override security policy, but rather enable
use of the system. Without the <constant>proc_exec</constant> privilege, a
user cannot use the system.</para>
</listitem><listitem><para>Privileges are not file attributes. Therefore, there are no
allowed or forced privileges.</para>
</listitem><listitem><para>Default and limit privileges can be assigned to the initial
shell of a user or of a role.</para>
</listitem><listitem><para>Privileges are called by name, not by number.</para><para>Therefore,
privilege numbers are not used in function calls or in the <literal>exec_attr</literal> file.</para>
</listitem><listitem><para>Privilege macros are not used and have been removed.</para>
</listitem><listitem><para>Privileges interact with zones. Some privileges can be used
in the global zone only, so are not available to ordinary users.</para>
</listitem>
</itemizedlist><para>For correspondences between Trusted Solaris privileges and Trusted Extensions privileges,
see <olink targetptr="trans-tbl-priv-1" remap="internal">Table 1</olink> in <olink targetptr="ref-1" remap="internal">Appendix&nbsp;A, Interface Changes in the Solaris Trusted
Extensions Release</olink>, <olink targetptr="trans-tbl-sec5-1" remap="internal">Table 10</olink>,
and <olink targetptr="trans-14" remap="internal">New Interfaces in Trusted Extensions Software</olink>.
For a complete list of privileges, see the <olink targetdoc="refman5" targetptr="privileges-5" remap="external"><citerefentry><refentrytitle>privileges</refentrytitle><manvolnum>5</manvolnum></citerefentry></olink> man page.</para><itemizedlist><para>The Solaris Trusted Extensions release adds the following privileges:</para><listitem><para><constant>net_bindmlp</constant> &ndash; Allows a process
to bind to multilevel ports.</para>
</listitem><listitem><para><constant>net_mac_aware</constant> &ndash; Allows a process
to communicate with peers at labels that are different from its own.</para>
</listitem>
</itemizedlist><para>The Trusted Solaris command <command>runpd</command> has been replaced by
the Solaris <command>ppriv -d</command> command. For details, see the <olink targetdoc="refman1" targetptr="ppriv-1" remap="external"><citerefentry><refentrytitle>ppriv</refentrytitle><manvolnum>1</manvolnum></citerefentry></olink> man page. For examples, see <olink targetdoc="sysadv6" targetptr="privtask-6" remap="external"><citetitle remap="section">How to Determine Which Privileges a Program Requires</citetitle> in <citetitle remap="book">System Administration Guide: Security Services</citetitle></olink>.</para>
</sect2><sect2 id="trans-15"><title>Trusted Extensions User Commands</title><para>On a system that is configured with Trusted Extensions, most Solaris user
commands work as the commands work in the Solaris OS. Some command options apply
to Trusted Extensions software only. Trusted Extensions also adds user commands. For
a complete list, see <olink targetptr="trans-14" remap="internal">New Interfaces in Trusted
Extensions Software</olink>, <olink targetptr="trans-tbl-user-1" remap="internal">Table 2</olink>,
and <olink targetptr="trans-tbl-user-3" remap="internal">Table 3</olink>.</para>
</sect2><sect2 id="trans-30"><title>Trusted Extensions System Administration
Commands</title><itemizedlist><para>On a system that is configured with Trusted Extensions, system administration
commands work as follows:</para><listitem><para>Most Solaris system administration commands work as
the commands work in the Solaris OS, for example, <command>add_drv</command> and <command>share</command>.</para>
</listitem><listitem><para>Some command options apply to Trusted Extensions software only,
such as the <option>R</option> option to <command>netstat</command>.</para>
</listitem><listitem><para>Because NIS+ is not a supported naming service for a  Trusted Extensions environment,
NIS+ administration commands are not modified for this release.</para>
</listitem><listitem><para>Some commands that are familiar to a Trusted Solaris 8 administrator
have been modified, such as <command>chk_encodings</command>. For the changes,
see the man pages.</para><para>For links to the man pages, see <olink targetptr="trans-tbl-scmd-1" remap="internal">Table 4</olink> and <olink targetptr="trans-14" remap="internal">New
Interfaces in Trusted Extensions Software</olink>.</para>
</listitem>
</itemizedlist>
</sect2><sect2 id="trans-31"><title>Trusted Extensions System Calls</title><para>On a system that is configured with Trusted Extensions, most Trusted Solaris system
calls have been replaced by Solaris system calls. Some system calls
are extended in Trusted Extensions software. For a complete list, see <olink targetptr="trans-tbl-scall-1" remap="internal">Table 5</olink> and <olink targetptr="trans-14" remap="internal">New
Interfaces in Trusted Extensions Software</olink>.</para>
</sect2><sect2 id="trans-32"><title>Trusted Extensions Library Functions</title><para>On a system that is configured with Trusted Extensions, some functions have
been modified. Some changes are due to architectural changes in the product.
Some changes are due to removal of nonstandard interfaces.</para><para>The library functions for privileges that were provided by Trusted Solaris software
 have been replaced by Solaris functions. Label functions that manipulate
CMW labels have been removed. Some label functions have been changed to make
label structures opaque. Other label functions have been replaced by new label
functions that make label structures opaque. Customers are encouraged to use
the new interfaces when developing label-aware code for their sites.</para><para>For a complete list, see <olink targetptr="trans-tbl-lib-1" remap="internal">Table 6</olink> and <olink targetptr="trans-14" remap="internal">New Interfaces in Trusted Extensions Software</olink>.</para>
</sect2><sect2 id="trans-34"><title>Trusted Extensions Databases and Files</title><para>Databases and files have been reformatted to correspond to technical
changes. Unneeded files have been removed. For the list, see <olink targetptr="trans-tbl-db-1" remap="internal">Table 9</olink> and <olink targetptr="trans-14" remap="internal">New
Interfaces in Trusted Extensions Software</olink>.</para>
</sect2><sect2 id="trans-12"><title>Trusted Extensions Devices and Drivers</title><para>On a system that is configured with  Trusted Extensions, all Trusted Solaris device
interfaces, and kernel functions for drivers have been replaced by Solaris functions.
For the list, see <olink targetptr="trans-tbl-drv-1" remap="internal">Table 11</olink>.</para>
</sect2>
</sect1><sect1 id="trans-6"><title>Differences Between Solaris Express Developer Edition&nbsp;5/07  Software
and Solaris Trusted Extensions</title><para>Trusted Extensions builds on Solaris software, and can restrict the
use of some Solaris utilities. The differences affect users, administrators,
and developers. Configuration options that are optional on a Solaris system
can be required by Trusted Extensions. For example, roles are required to administer
the system, and the Solaris Management Console is required to administer users, roles, profiles,
and the network. Zones must be installed, and each zone must be assigned a
unique label.</para><sect2 id="trans-7"><title>Installation and Configuration of Trusted Extensions</title><itemizedlist><para>Solaris Trusted Extensions installs as a set of packages on a newly installed Solaris Express Developer Edition&nbsp;5/07  system.
The following installation practices should be followed:</para><listitem><para>Earlier Trusted Solaris releases cannot be upgraded to the current
release.</para>
</listitem><listitem><para>The software cannot be installed on a Solaris system
that is already configured with non-global zones.</para>
</listitem>
</itemizedlist>
</sect2><sect2 id="trans-4"><title>Desktops in Trusted Extensions</title><para>Solaris Trusted Extensions supports a trusted version of the Sun Java Desktop System, (Trusted JDS)  as well
as CDE. The Trusted CDE desktop continues to support the visible Trusted Solaris features,
such as labels, trusted stripe, the Device Allocation Manager, the Admin Editor,
and so on.</para><itemizedlist><para>New administrative actions in CDE&nbsp;1.7 are modified for security on the Trusted Extensions desktop.
Actions that are unique to Trusted Extensions are in the <filename class="directory">Trusted_Extensions</filename> folder.</para><listitem><para>The Style Manager should not be run from the Application Manager
when Trusted Extensions is configured, because the Style Manager requires the
trusted path. Run the Style Manager from the Front Panel and the Workspace
menu, where the Style Manager has the trusted path.</para>
</listitem><listitem><para>The contents of the <filename class="directory">Trusted_Extensions</filename> folder in the Application Manager has changed. Actions to administer
zones have been added. NIS+ actions have been removed.</para>
</listitem><listitem><para>As in the Trusted Solaris 8 2/04 release, the CDE Workspace Menu can
be customized to add actions. For details, see <olink targetdoc="trssug" targetptr="shared-commontasks-26" remap="external"><citetitle remap="section">How to Customize the CDE Workspace Menu</citetitle> in <citetitle remap="book">Solaris Trusted Extensions User&rsquo;s Guide</citetitle></olink>.</para>
</listitem>
</itemizedlist>
</sect2><sect2 id="trans-16"><title>Security Attributes on CDE Actions in Trusted Extensions Software</title><para>Trusted Extensions adds CDE actions to the objects that can be assigned
security attributes in the <filename>exec_attr</filename> database. CDE actions
can be constrained by label by customizing the Workspace Menu to include only
actions that are relevant to a specific label. To customize the menu, see <olink targetdoc="trssug" targetptr="shared-commontasks-26" remap="external"><citetitle remap="section">How to Customize the CDE Workspace Menu</citetitle> in <citetitle remap="book">Solaris Trusted Extensions User&rsquo;s Guide</citetitle></olink></para>
</sect2><sect2 id="trans-5"><title>Administration Tools in Trusted Extensions</title><para>Secure administration requires the use of GUIs that Trusted Extensions provides. Trusted Extensions provides
actions in the <literal>Trusted_Extensions</literal> folder in CDE, a Device
Allocation Manager, and the Solaris Management Console. Trusted Extensions adds tools and options to
existing tools in the Solaris Management Console GUI. This GUI enables administrators to manage
users, networks, zones, and other databases. After launching the Solaris Management Console, the
administrator chooses a Trusted Extensions &ldquo;toolbox&rdquo;. The toolbox
is a collection of programs. The administrator then uses the programs that
are permitted to the role.</para>
</sect2><sect2 id="trans-23"><title>Trusted Device Management</title><para>The Solaris OS provides three methods of managing devices: the Volume Manager
(<command>vold</command>), <command>logindevperm</command> and device allocation.
As in the Trusted Solaris 8 releases, Trusted Extensions supports only device allocation.
The Device Allocation Manager GUI is used to create an allocatable device.
All devices that are allocated to a zone get deallocated when that zone shuts
down, halts, or reboots. Device allocation can be done remotely or in shell
scripts only from the global zone.</para><para>The <command>allocate</command>, <command>deallocate</command>, and <command>list_devices</command> commands do not work in labeled zones for roles or
ordinary users. Users and roles must use the Device Allocation Manager GUI
to allocate, deallocate and list devices. Trusted Extensions adds the <constant>solaris.device.config</constant> authorization to configure devices.</para><sect3 id="trans-10"><title>Trusted Printing</title><para>To manage printers, use the Printer Administrator action in the <filename class="directory">System_Admin</filename> folder in the global zone. To limit
the label range of a printer, use the Device Allocation Manager in the global
zone.</para>
</sect3><sect3 id="trans-20"><title>Trusted Extensions Software and Removable
Media</title><para>Use the Solaris Management Console Devices and Hardware tool to manage serial lines and serial
ports in the global zone. To limit the label range of removable media, use
the Device Allocation Manager in the global zone.</para>
</sect3>
</sect2><sect2 id="trans-28"><title>Additional Rights and Authorizations
in Trusted Extensions</title><para>The Solaris Trusted Extensions release adds privileged commands to the Device Security
profile, and privileged actions to many profiles.</para><itemizedlist><para>The Solaris Trusted Extensions release adds the following authorizations:</para><listitem><para><literal>solaris.file.</literal></para>
</listitem><listitem><para><literal>solaris.label.</literal></para>
</listitem><listitem><para><literal>solaris.print.</literal></para>
</listitem><listitem><para><literal>solaris.smf.manage.labels</literal></para>
</listitem><listitem><para><literal>solaris.smf.manage.tnctl</literal></para>
</listitem><listitem><para><literal>solaris.smf.manage.tnd</literal></para>
</listitem><listitem><para><literal>solaris.smf.value.tnd</literal></para>
</listitem>
</itemizedlist><itemizedlist><para>The Solaris Trusted Extensions release adds the following rights profiles:</para><listitem><para>All Actions</para>
</listitem><listitem><para>Basic Actions</para>
</listitem><listitem><para>Information Security</para>
</listitem><listitem><para>Object Label Management</para>
</listitem><listitem><para>Outside Accred</para>
</listitem>
</itemizedlist><itemizedlist><para>The Solaris Trusted Extensions release adds label authorizations and service management
authorizations to the following rights profiles:</para><listitem><para>Maintenance and Repair</para>
</listitem><listitem><para>Printer Management</para>
</listitem><listitem><para>User Security</para>
</listitem><listitem><para>Network Management</para>
</listitem><listitem><para>Network Security</para>
</listitem>
</itemizedlist><para>Together, the Information Security and the User Security rights profiles
define the Security Administrator role.</para>
</sect2>
</sect1>&znew;
</chapter>