ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Trusted Extensions 開発者ガイド Oracle Solaris 10 1/13 Information Library (日本語) |
1. Trusted Extensions API およびセキュリティーポリシー
9. Solaris Trusted Extensions ラベル API のための試験的な Java バインディング
ほとんどのアプリケーションはラベル対応である必要はありません。そのため、ほとんどの Oracle Solaris ソフトウェアアプリケーションは、変更せずに Trusted Extensions の下で動作します。Trusted Extensions のラベルベースのアクセス制限は、Oracle Solaris OS 標準と整合して機能するように設計されています。マルチレベルポートにバインドされるプロセスはどれも、複数のラベルでデータを受信し、信頼されてセキュリティーポリシーを強制するため、一般にラベル対応である必要があります。
たとえば、アプリケーションが、必要なリソースよりも下位のラベルで実行されているために、そのリソースにアクセスできないことがあります。ただし、そのリソースにアクセスしようとすることで特別なエラー状態が生じることはありません。代わりに、アプリケーションによって File not found というエラーが表示されることがあります。あるいは、アクセスが許可されていない上位のラベルを持つ情報にアプリケーションがアクセスしようとすることがあります。それに対し、セキュリティーポリシーでは、十分な特権がなければ、アプリケーションはより上位のラベルを持つリソースの存在を認識できないと定めています。したがって、アプリケーションのラベルよりも上位のラベルを持つリソースにそのアプリケーションがアクセスしようとした場合、結果となるエラー状態はラベルに固有ではありません。そのエラーメッセージは、存在しないリソースにアクセスしようとするアプリケーションに返されるエラーメッセージと同じです。「特別なエラー状態」がないことが、セキュリティー原則の強制に役立ちます。
Trusted Extensions では、アプリケーションではなく、オペレーティングシステムがセキュリティーポリシーを強制します。このセキュリティーポリシーは「必須アクセス制御 (MAC) ポリシー」と呼ばれます。たとえば、アプリケーションは、保護されているリソースにアクセス可能であるかどうかを判別しません。最終的に、オペレーティングシステムが MAC ポリシーを強制します。リソースにアクセスするのに十分な特権をアプリケーションが持たない場合、そのリソースはそのアプリケーションで使用できません。したがって、アプリケーションは、ラベル付きのリソースにアクセスするためにラベルに関する知識を持っている必要はありません。
同様に、ほとんどのラベル対応アプリケーションは、ラベル対応でないアプリケーションと一貫して動作するように設計されている必要があります。ラベル対応のアプリケーションは、単一ラベルのみを含む環境、ラベルなし環境、および複数のラベルを含む環境で基本的に同じように動作する必要があります。単一ラベル環境の例は、特定のラベルを持つユーザーセッションが同じラベルでデバイスをマウントする場合です。「ラベルなし環境」では、ラベルは明示的に設定されませんが、デフォルトラベルが tnrhdb データベースで指定されます。smtnrhdb(1M) のマニュアルページを参照してください。