JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Trusted Extensions 開発者ガイド     Oracle Solaris 10 1/13 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  Trusted Extensions API およびセキュリティーポリシー

ラベルの理解

ラベルのタイプ

機密ラベル

認可上限ラベル

ラベル範囲

ラベルコンポーネント

ラベルの関係

Trusted Extensions API

ラベル API

アクセス制御の決定にラベルが使用される方法

ラベル API のタイプ

機密ラベル API

認可上限ラベル API

ラベル範囲 API

Trusted X Window System API

ラベルビルダー API

Trusted Extensions セキュリティーポリシー

マルチレベル操作

大域ゾーン内のライトダウンポリシー

デフォルトのセキュリティー属性

デフォルトのネットワークポリシー

マルチレベルポート

MAC 除外ソケット

ゾーンとラベル

大域ゾーン内のラベル

ラベル付きゾーン

2.  ラベルと認可上限

3.  ラベルのコード例

4.  印刷とラベル API

5.  プロセス間通信

6.  Trusted X Window System

7.  ラベルビルダー API

8.  信頼できる Web ガードプロトタイプ

9.  Solaris Trusted Extensions ラベル API のための試験的な Java バインディング

A.  プログラマーのリファレンス

B.  Trusted Extensions API リファレンス

索引

Trusted Extensions API

このセクションでは、本ドキュメントで説明する次の Trusted Extensions API について紹介します。

これらの Trusted Extensions API に加えて、Oracle Solaris OS で使用可能なセキュリティー API も使用することができます。Trusted Extensions 上で動作するアプリケーションによって、別のセキュリティー属性を操作することが必要になる場合があります。たとえば、ユーザーおよびプロファイルデータベースには、ユーザー、役割、許可、およびプロファイルについての情報が格納されています。これらのデータベースは、プログラムを実行できるユーザーを制限できます。特権はさまざまな Oracle Solaris プログラムにコーディングされており、サードパーティーアプリケーションにもコーディングすることができます。

これらの Oracle Solaris OS セキュリティー API の詳細については、『Oracle Solaris 10 セキュリティー開発者ガイド』の第 2 章「特権付きアプリケーションの開発」を参照してください。

Oracle Solaris OS で提供されている「任意アクセス制御」 (DAC) では、データの所有者が、データへのアクセスが許可されるユーザーを決定します。Trusted Extensions ソフトウェアは、必須アクセス制御 (MAC) と呼ばれる追加のアクセス制御が提供されています。MAC では、通常のユーザーが「セキュリティーポリシー」を指定したりオーバーライドしたりすることはできません。セキュリティー管理者がセキュリティーポリシーを設定します。

アプリケーションは Trusted Extensions API を使用して、ホスト、ゾーン、ユーザー、および役割のラベルを取得します。セキュリティーポリシーで許可される場合、API によって、ユーザープロセスまたは役割プロセスにラベルを設定することができます。ゾーンまたはホストへのラベルの設定は管理上の手順であり、プログラムによる手順ではありません。

ウィンドウラベルをカスタマイズするアプリケーションを作成できます。Trusted Extensions ソフトウェアには、基本的なラベル作成ユーザーインタフェースをアプリケーションに追加するための Motif ベースのプログラムインタフェースが提供されています。ラベル作成インタフェースによって、ユーザーは有効な機密ラベルおよび有効な認可上限を対話的に作成できます。

ラベル API は隠されたラベル上で動作します。「隠されたラベル」では、ラベルの内部構造は公開されません。隠されたラベルを使用することによって、API を使用して作成された既存のプログラムは、ラベルの内部構造が変更した場合でも機能できます。たとえば、ラベル API を使用してラベル内の特定のビットを指定することはできません。ラベル API によって、ラベルを取得したりラベルを設定したりできます。ラベルを設定できるのは、セキュリティーポリシーによって許可されている場合に限られます。

ラベル API

ラベル、ラベル範囲、およびラベル制限によって、Trusted Extensions で構成されたシステム上の情報にアクセスできるユーザーが決定されます。

ラベル API は、ラベル、ラベルの範囲と制限、およびラベル間の関係にアクセスしたり、これらを変換したり、比較を実行したりするために使用されます。あるラベルが別のラベルより優位であったり、ほかのラベルと無関係あったりする場合もあります。

label_encodings ファイルには、Trusted Extensions 環境に関する機密ラベル、認可上限ラベル、ラベル範囲、およびラベル関係が定義されています。このファイルはラベルの外観も制御します。セキュリティー管理者は label_encodings ファイルを作成および保守する役割を担っています。label_encodings(4) のマニュアルページを参照してください。

プロセスのラベルは、プロセスが実行されるゾーンによって決定されます。

すべてのオブジェクトはラベルに関連付けられているか、場合によってはラベル範囲に関連付けられています。オブジェクトには、定義されたラベル範囲内の特定のラベルでアクセスできます。ラベル範囲に関連付けられているオブジェクトには、次のものがあります。

ラベルの詳細については、「ラベルのタイプ」を参照してください。

アクセス制御の決定にラベルが使用される方法

MAC はアプリケーションを実行しているプロセスのラベルと、プロセスがアクセスしようとしているオブジェクトのラベルまたはラベル範囲とを比較します。MAC は低いラベルまでの読み取りをプロセスに許可し、同等のラベルへの書き込みをプロセスに許可します。

Label[Process] >= Label[Object]

マルチレベルポート (MLP) にバインドされたプロセスは、複数のラベルでリクエストを待機でき、リクエストの発信元に応答を送信できます。Trusted Extensions では、このような応答は同位書き込みです。

Label[Process] = Label[Object]

ラベル API のタイプ

機密ラベル API

機密ラベル API を使用して、次のことを実行できます。

これらの API の説明については、第 2 章ラベルと認可上限を参照してください。

認可上限ラベル API

ユーザー、デバイス、およびネットワークインタフェースには、ラベル範囲があります。範囲の上限が事実上の認可上限です。範囲の上限と下限が等しい場合、範囲は単一のラベルです。

認可上限ラベル API を使用して、次のことを実行できます。

これらの API の説明については、第 2 章ラベルと認可上限を参照してください。

ラベル範囲 API

ラベル範囲を使用して、次のラベルに制限を設定できます。

ラベル範囲は管理者によって割り当てられます。ラベル範囲は、ユーザー、役割、ホスト、ゾーン、ネットワークインタフェース、プリンタ、およびその他のオブジェクトに適用できます。

ラベル範囲に関する情報を取得するには、次の方法を使用できます。

これらの API の説明については、第 2 章ラベルと認可上限を参照してください。

Trusted X Window System API

Trusted X Window System バージョン 11 サーバーは、ログイン時に起動します。サーバーは信頼できるプロセス間通信 (IPC) パスを使用して、ワークステーションウィンドウシステムを処理します。ウィンドウ、プロパティー、選択、および ToolTalk セッションが、別々の個別オブジェクトとして複数の機密ラベルで作成されます。複数の機密ラベルでの個別オブジェクトの作成は、「ポリインスタンス化」と呼ばれます。Motif ウィジェット、Xt Intrinsics、Xlib、およびデスクトップインタフェースで作成されたアプリケーションは、セキュリティーポリシーの制約の範囲内で実行します。これらの制約は、X11 プロトコルの拡張によって強制されます。

第 6 章Trusted X Window Systemでは、「Trusted Extensions セキュリティーポリシー」に記載されているセキュリティー属性情報にアクセスできるプログラムインタフェースが記載されています。これらのプログラムインタフェースは、ラベルおよび認可上限をテキストに変換するためにも使用できます。テキストは、Trusted X Window System で表示する幅およびフォントリストを指定することによって制約を加えることができます。

Trusted X Window System は次のセキュリティー属性を格納します。

監査 ID
トラステッドパスフラグ
グループ ID
トラステッドパスウィンドウ
インターネットアドレス
ユーザー ID
プロセス ID
X Window Server 所有者 ID
機密ラベル
X Window Server 認可上限
セッション ID
X Window Server 最小ラベル

トラステッドパスフラグは、ウィンドウをトラステッドパスウィンドウとして識別します。トラステッドパスウィンドウは、信頼されていないプログラムによるアクセスからシステムを保護します。このウィンドウは、スクリーンストライプまたはログインウィンドウなどの常に最前面のウィンドウです。

付録 B Trusted Extensions API リファレンスに、信頼できる X11 IPC パスを作成するために使用できる拡張の一覧が示されています。

ラベルビルダー API

Trusted Extensions ソフトウェアには、アプリケーションのグラフィカルユーザーインタフェース (GUI) をユーザーが作成できる、ラベルビルダー API が提供されています。GUI によってユーザー入力を受け取り、その入力から有効なラベルを作成します。

Trusted Extensions で構成されたシステムでは、基本的なラベル作成ユーザーインタフェースをアプリケーションに追加するための Motif ベースのプログラムインタフェースが提供されています。ラベル作成インタフェースによって、ユーザーは有効な機密ラベルおよび有効な認可上限を対話的に作成できます。これらのプログラムインタフェースについては、第 7 章ラベルビルダー APIを参照してください。