JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Trusted Extensions Developer's Guide     Oracle Solaris 11.1 Information Library
search filter icon
search icon

Document Information


1.  Trusted Extensions APIs and Security Policy

2.  Labels and Clearances

3.  Label Code Examples

4.  Interprocess Communications

5.  Trusted X Window System

6.  Label Builder GUI

7.  Trusted Web Guard Prototype

8.  Experimental Java Bindings for the Solaris Trusted Extensions Label APIs

Java Bindings Overview

Structure of the Experimental Java Label Interfaces

SolarisLabel Abstract Class

ClearanceLabel Subclass

SensitivityLabel Subclass

Range Class

Java Bindings

Detecting a Trusted Extensions System

Accessing the Process Sensitivity Label

Allocating and Freeing Memory for Label Objects

Obtaining and Setting the Label of a File

Obtaining Label Range Objects

Accessing Labels in Zones

Obtaining the Remote Host Type

Translating Between Labels and Strings

Comparing Label Objects

A.  Programmer's Reference

B.  Trusted Extensions API Reference


Java Bindings Overview

The Java language is an untapped resource for creating label-aware applications that run in secure, multilevel arenas. These experimental Java bindings provide a foundation on which to develop more applications, such as system audit log generation and system resource controls.

Adding platform services to the Java environment will enable Java applications to handle sensitive multilevel data.

Trusted Extensions provides label services through the label daemon, labeld. This daemon is available to processes that run in the global zone and in labeled zones.

The Java bindings described in this chapter are Java Native Interface (JNI) implementations of some of the Trusted Extensions label APIs. The experimental JNI code calls the Trusted Extensions label library functions to extend some of the label functionality to the Java language. Constructors and methods in these Java classes call private JNI interfaces, written in C, that in turn call the Trusted Extensions APIs. For example, the SolarisLabel.dominates method calls a private JNI interface written in C that calls the bldominates() routine. These experimental Java bindings have been developed using Java 2 Platform, Standard Edition 5.0. For more information about JNI, see Java Native Interface Documentation.