Oracle Solaris Trusted Extensions 管理の手順

第 19 章 Trusted Extensions のソフトウェア管理 (手順)

この章では、Solaris Trusted Extensions が設定されたシステムで、他社製のソフトウェアを信頼できる方法で実行する方法について説明します。

Trusted Extensions へのソフトウェアの追加

Solaris システムに追加できるソフトウェアは、Trusted Extensions が設定されたシステムにも追加できます。また、Trusted Extensions API を使用するプログラムも追加できます。Trusted Extensions システムへのソフトウェアの追加は、非大域ゾーンを実行している Solaris システムにソフトウェアを追加する場合と同様です。

たとえば、パッケージの問題は、非大域ゾーンをインストールしたシステムに影響します。パッケージのパラメータにより、次のことが定義されます。

Trusted Extensions では、プログラムは一般ユーザーがラベル付きのゾーンで使用できるように、一般的に大域ゾーンにインストールされます。ゾーンでのパッケージのインストールについては、『System Administration Guide: Oracle Solaris Containers-Resource Management and Oracle Solaris Zones』の第 25 章「About Packages and Patches on a Solaris System With Zones Installed (Overview)」を参照してください。また、pkgadd(1M) のマニュアルページも参照してください。

Trusted Extensions サイトでは、システム管理者とセキュリティー管理者がソフトウェアをインストールします。セキュリティー管理者は、セキュリティーポリシーを厳守するために、ソフトウェアの追加を評価します。ソフトウェアの実行に特権や承認が必要な場合、セキュリティー管理者役割はソフトウェアのユーザーに適切な権利プロファイルを割り当てます。

リムーバブルメディアからソフトウェアをインポートするには、承認が必要です。「デバイスの割り当て」承認を持つアカウントは、リムーバブルメディアを使用したデータのインポートやエクスポートを実行できます。データには実行可能コードが含まれることがあります。一般ユーザーは、ユーザーの認可上限内のラベルでデータをインポートすることのみ可能です。

システム管理者役割は、セキュリティー管理者が承認したプログラムを追加します。

Solaris のソフトウェアセキュリティー機構

Trusted Extensions は、Solaris OS と同じセキュリティー機構を使用します。セキュリティー機構には、次の機能が含まれます。

ソフトウェアのセキュリティーの評価

ソフトウェアに特権が割り当てられた場合や、代替のユーザー ID またはグループ ID での実行時には、そのソフトウェアが「トラステッド」とみなされます。信頼されたソフトウェアは、Trusted Extensions のセキュリティーポリシーによる制約を必ずしも受けません。信頼できないソフトウェアでも、「トラステッド」にできることに注意してください。慎重な調査によってソフトウェアが信頼できる方法で特権を使用することが明らかになるまで、セキュリティー管理者はソフトウェアに特権を与えることを保留します。

トラステッドシステムでは、プログラムは次の 3 つのカテゴリに分類されます。

トラステッドプログラムを作成する開発者の役割

プログラムの開発者がソースコードで特権のセットを操作できても、セキュリティー管理者が必要な特権をプログラムに割り当てていなければ、プログラムは正常に動作しません。トラステッドプログラムの作成では、開発者とセキュリティー管理者が共同で作業する必要があります。

    トラステッドプログラムを作成する開発者には、次のタスクが必要です。

  1. プログラムを正常に動作させるために、どこで特権が必要かを理解する。

  2. 特権ブラケットなどの、プログラムで特権を安全に使用するための技術を習得して使用する。

  3. 特権をプログラムに割り当てるときに、セキュリティーの関連性に注意する。プログラムはセキュリティーポリシーに違反してはならない。

  4. トラステッドディレクトリからプログラムにリンクされた共有ライブラリを使用して、プログラムをコンパイルする。

    詳細は、『Oracle Solaris セキュリティーサービス開発ガイド』を参照してください。Trusted Extensions のコード例については、『Solaris Trusted Extensions 開発ガイド』を参照してください。

トラステッドプログラムにおけるセキュリティー管理者の役割

セキュリティー管理者は、新しいソフトウェアをテストおよび評価します。ソフトウェアを信頼できると判断したら、セキュリティー管理者はプログラムの権利プロファイルとその他のセキュリティーに関する属性を構成します。

    セキュリティー管理者には次のような責任があります。

  1. プログラマやプログラム配布プロセスが信頼できることを確認する。

  2. 次の情報源のいずれかから、プログラムに必要な特権を決定する。

    • プログラマに確認する。

    • ソースコードを調べて、プログラムが使用する予定の特権を検索する。

    • ソースコードを調べて、プログラムがユーザーに要求する承認を検索する。

    • ppriv コマンドにデバッグオプションを使用して、特権の使用を検索する。この例は、ppriv(1) のマニュアルページを参照してください。

  3. ソースコードを調査し、プログラムの動作に必要な特権に関して信頼できる方法で処理していることを確認します。

    プログラムが信頼できる方法で特権を使用していない場合、プログラムのソースコードを修正できるときはコードを修正します。セキュリティーについて熟知しているセキュリティーコンサルタントや開発者は、コードを修正できます。修正には、特権ブラケットや承認の検査が含まれる場合があります。

    特権の割り当ては、手動で行う必要があります。特権の不足によりエラーが発生するプログラムには、特権を割り当てることができます。また、セキュリティー管理者が、特権を不要にする実効 UID または実効 GID を割り当てるように決定する場合もあります。

ウィンドウシステムでのトラステッドプロセス

Solaris Trusted Extensions (CDE) では、次のウィンドウシステムのプロセスが信頼されます。

ウィンドウシステムのトラステッドプロセスはだれでも利用できますが、管理アクションへのアクセスは大域ゾーンの役割に制限されます。

アクションがアカウントのプロファイルのいずれにもない場合、ファイルマネージャーにアクションのアイコンは表示されません。ワークスペースメニューでは、アクションがアカウントのプロファイルのいずれにもない場合、アクションは表示されますが、アクションを実行するとエラーが表示されます。

Trusted CDE では、ウィンドウマネージャーの dtwmXtsolusersession スクリプトを呼び出します。このスクリプトはウィンドウマネージャーとともに動作し、ウィンドウシステムから起動されるアクションを呼び出します。Xtsolusersession スクリプトは、アカウントがアクションを起動しようとしたときに、アカウントの権利プロファイルを確認します。いずれの場合も、アクションが割り当てられた権利プロファイルに指定されている場合、アクションはプロファイルに指定されているセキュリティー属性で実行されます。

Trusted CDE アクションの追加

Trusted Extensions で CDE アクションを作成および使用する手順は、Solaris OS における手順と同様です。アクションの追加については、『Solaris 共通デスクトップ環境上級ユーザ及びシステム管理者ガイド』の第 4 章「アプリケーションの追加と管理」で説明されています。

Solaris OS と同様、アクションの使用は権利プロファイルで管理できます。Trusted Extensions では、管理役割の権利プロファイルで、いくつかのアクションにセキュリティー属性が割り当てられています。セキュリティー管理者は、「権利」ツールを使用して、新しいアクションにセキュリティー属性を割り当てることもできます。

次の表では、管理者がアクションを作成し使用する場合の、Solaris システムと Solaris Trusted Extensions システムの主な相違点について説明します。

表 19–1 Trusted Extensions での CDE アクションの制約

Solaris CDE アクション 

Trusted CDE アクション 

新しいアクションは、だれでも自分のホームディレクトリ内に作成できます。 

作成者は、新しいアクションを自動的に使用できるようになります。 

アクションは、ユーザーに割り当てられた権利プロファイルである場合のみ使用可能です。アクションの検索パスは異なります。ユーザーのホームディレクトリにあるアクションは、最初ではなく最後に処理されます。したがって、既存のアクションをカスタマイズすることはできません。 

ユーザーは自分のホームディレクトリに新しいアクションを作成できますが、アクションを使用できない場合があります。 

 

All プロファイルを持つユーザーは、作成したアクションを使用することができます。それ以外の場合は、セキュリティー管理者が、アカウントの権利プロファイルのいずれかに新しいアクションの名前を追加する必要があります。 

 

アクションを起動するには、ユーザーはファイルマネージャーを使用します。システム管理者は、アクションを公開ディレクトリに配置できます。 

アクションはフロントパネルにドラッグ&ドロップできます。 

フロントパネルはトラステッドパスの一部です。ウィンドウマネージャーは、/usr/dt/etc/dt サブディレクトリにある、管理者が追加したアクションだけを認識します。All プロファイルが割り当てられていても、ユーザーはフロントパネルに新しいアクションをドラッグできません。ユーザーのホームディレクトリにあるアクションは、ウィンドウマネージャーでは認識されません。マネージャーは公開ディレクトリだけを確認します。

root によって実行された場合、アクションは特権処理を実行できます。

ユーザーに割り当てられた権利プロファイルでアクションに特権が割り当てられている場合、アクションは特権を必要とする処理を実行できます。 

アクションは Solaris 管理コンソール では管理されません。 

アクションは Solaris 管理コンソール の「権利」ツールで権利プロファイルに割り当てられます。新しいアクションが追加されると、セキュリティー管理者は新しいアクションを利用可能にすることができます。 

Trusted Extensions でのソフトウェアの管理 (手順)

Trusted Extensions でのソフトウェアの管理は、非大域ゾーンがインストールされた Solaris システムでのソフトウェアの管理タスクと同様です。ゾーンについては、『System Administration Guide: Oracle Solaris Containers-Resource Management and Oracle Solaris Zones』のパート II「Zones」を参照してください。

ProcedureTrusted Extensions でソフトウェアパッケージを追加する

始める前に

デバイスを割り当てることができる役割になる必要があります。

  1. 適切なワークスペースで作業を開始します。

  2. CD-ROM ドライブを割り当てます。

    詳細は、『Oracle Solaris Trusted Extensions ユーザーズガイド』「Trusted Extensions でデバイスを割り当てる」を参照してください。

  3. ソフトウェアをインストールします。

    詳細は、『System Administration Guide: Basic Administration』「Where to Find Software Management Tasks」を参照してください。

  4. 転送が終了したら、デバイスの割り当てを解除します。

    詳細は、『Oracle Solaris Trusted Extensions ユーザーズガイド』「Trusted Extensions でデバイスを割り当てる」を参照してください。

ProcedureTrusted Extensions で Java Archive ファイルをインストールする

この手順では、Java archive (JAR) ファイルを大域ゾーンにダウンロードします。大域ゾーンから、管理者はファイルを一般ユーザーが利用できるようにできます。

始める前に

セキュリティー管理者は、Java プログラムのソースが信頼できること、配信方法が安全であること、およびプログラムを信頼できる方法で実行できることを確認しています。

大域ゾーンでセキュリティー管理者役割になります。Trusted CDE で、Software Installation 権利プロファイルに、Java コードの「開く」アクションが含まれています。

  1. JAR ファイルを /tmp ディレクトリにダウンロードします。

    たとえば、http://www.sunfreeware.com のソフトウェアを選択する場合、そのサイトの「Solaris pkg-get tool」の指示に従います。

  2. ファイルマネージャーを開き、/tmp ディレクトリに移動します。

  3. ダウンロードしたファイルをダブルクリックします。

  4. ダイアログボックスの質問に答えて、ソフトウェアをインストールします。

  5. インストールログを確認します。


例 19–1 ユーザーラベルへの JAR ファイルのダウンロード

セキュリティーリスクを小さくするため、システム管理者は一般ユーザーの認可範囲内でシングルラベルにソフトウェアをダウンロードします。続いてセキュリティー管理者は、そのラベルで JAR ファイルをテストします。このソフトウェアがテストに合格したら、セキュリティー管理者はラベルを ADMIN_LOW にダウングレードします。システム管理者は、このソフトウェアを NFS サーバーにインストールし、すべてのユーザーが利用できるようにします。

  1. 最初に、システム管理者は、ユーザーラベルでワークスペースを作成します。

  2. システム管理者は、作成したワークスペースで、JAR ファイルをダウンロードします。

  3. ユーザーラベルで、セキュリティー管理者は JAR ファイルをテストします。

  4. 次に、セキュリティー管理者は、このファイルのラベルを ADMIN_LOW に変更します。

  5. 最後に、システム管理者は、ラベルが ADMIN_LOW の NFS サーバーにこのファイルをコピーします。