Go to main content

Oracle® Solaris 11.4 でのユーザーとプロセスのセキュリティー保護

印刷ビューの終了

更新: 2018 年 8 月
 
 

のプロセスラベルおよび認可上限について

は、ファイルとプロセスにラベルを付けます。デフォルトポリシーは透過的で、システムはラベルが存在しない場合と同様に動作します。ラベルポリシーを作成する管理者は、情報の機密性を指定するためにラベルをファイルに割り当てることができます。代表的なラベルとして「Public」と「Confidential - Restricted」があります。ラベルエンコーディングファイルはシステムのラベルを定義します。ラベルポリシーの作成とラベルの定義については、Oracle Solaris 12 でのファイルのセキュリティー保護とファイル整合性の検証 の ラベル付けを構成するためのプロセス全体を参照してください。

ラベルポリシーは、ユーザープロセスおよび SMF サービスの開始ラベルの定義を含んでいます。システムのラベルを定義するラベルエンコーディングファイルは、ユーザープロセスの初期ラベルも定義します。エンコーディングファイル内の clearance 値は、「Confidential - Internal」などの組織内のユーザーに適したユーザー指定のラベルです。account-policy サービスの login_policy/clearance 値は、ほとんどのプロセスが実行するときに指定されるラベルです。ラベルポリシーを作成するとき、CLEARANCE 値を ADMIN_LOW に設定します。リブート後、ユーザープロセスはエンコーディングファイルの clearance 値で開始し、SMF サービスはADMIN_LOW で開始します。承認されたユーザーおよび機密性の高いプロセスをさらに高いラベルで開始するには、承認されたユーザーおよび選択された SMF サービスに高い認可上限を構成する必要があります。ユーザーおよびプロセスに認可上限を割り当てるときに考慮すべき問題については、Oracle Solaris 12 でのファイルのセキュリティー保護とファイル整合性の検証 の ラベルポリシーのカスタマイズを参照してください。

ラベルが構成されていないときのデフォルトの認可上限はもっとも高いラベル「ADMIN_HIGH」であるため、ラベルによってアクセスは制限されません。

エンコーディングファイル内の clearance の値は、clearance セキュリティー属性の明示的なキー値が設定されていないユーザーまたは役割に適用されます。root 役割と、 のインストール中に作成された初期アカウントには、明示的な認可上限「ADMIN_HIGH」が割り当てられています。


Caution

注意  -  root アカウントの明示的な「ADMIN_HIGH」認可上限は決して変更しないでください。


ユーザープロセスは、そのユーザーのプライマリログインプロセスの認可上限を継承します。現在のプロセスの認可上限を表示するには、端末ウィンドウで「plabel」と入力します。ユーザーは、自分の認可上限から「ADMIN_LOW」までのすべてのラベルにアクセスできます。次の例は、初期ユーザーおよび rootplabel コマンドを実行したときの表示内容を示します。

$ plabel
ADMIN_HIGH

ラベル付きファイルへのアクセスについて

プロセスのラベルが認可上限と呼ばれるのは、これらのラベルが、プロセスが認可されるもっとも高いラベルを示すためです。認可上限はラベル範囲の上限を示します。ユーザーがラベル付きデータにアクセスできるのは、ユーザーのプロセスのラベルが、そのデータを含むファイルのラベルよりも優位な場合です。同じように、ほかのプロセスがデータにアクセスできるのは、プロセスのラベルがファイルのラベルよりも優位な場合です。「優位である」とは、プロセスのラベルがデータのラベルと少なくとも同等か、それよりも高い可能性があることを意味します。たとえば、「Confidential - Restricted」の認可上限を持つユーザーは、そのラベルおよび「Confidential - Internal」や「Public」などのそれより低いすべてのラベルのデータにアクセスできます。

アクセス試行中に、 はテキスト文字列を内部表現に変換したり、その逆方向に変換したりします。プロセスが、そのプロセスのラベルと同等か、またはそれより優位なラベルを変換しようとした場合、変換は許可されません。この制限をオーバーライドするには、sys_trans_label 特権が必要です。

通常のユーザーは組織のデフォルトの認可上限を継承するため、機密データへのアクセスは認可されません。管理者は、このデータにアクセスすることが必要なサービスおよびユーザーのみにより高い認可上限を割り当てます。ユーザー認可上限は、ユーザーが最初にログインしたときに有効になります。役割の引き受けなどの 2 回目のログインでは、最初のログインから認可上限が保持されます。

高い認可上限を持つユーザーは、低い認可上限で新しいプロセスを開始する sandbox コマンドを使用して、低い認可上限で動作できます。サンドボックス内で実行中のプロセスは分離されているため、サンドボックス外のプロセスを監視できません。詳細情報および例については、プロジェクトの分離のためのサンドボックスの構成使用例 43, アプリケーションプロセスからのシステム上のディレクトリの保護、および sandbox(1)sandboxing(7) のマニュアルページを参照してください。