4.13. Multi-Level Security (MLS)
マルチレベルセキュリティーテクノロジーは、Bell-La Padula Mandatory Access Model を強制するセキュリティースキームを指します。MLS では、ユーザーとプロセスは サブジェクト と呼ばれ、ファイル、デバイス、およびシステムの他のパッシブコンポーネントは オブジェクト と呼ばれます。サブジェクトとオブジェクトの両方がセキュリティーレベルでラベル付けされ、これはサブジェクトのクリアランスとオブジェクトの分類を必要とします。各セキュリティーレベルは、sensitivity と category で設定されます。たとえば、内部リリーススケジュールは、機密扱いの内部文書カテゴリーに保管されます。
図4.1「クリアランスのレベル」 は、US 防衛コミュニティーが当初設計したクリアランス (機密情報取扱許可) レベルを示しています。上記の内部スケジュールの例に関連して、コンフィデンシャルクリアランスを取得したユーザーのみが、機密カテゴリーのドキュメントを表示できます。ただし、コンフィデンシャルクリアランスのみを有するユーザーは、より高いレベルまたはクリアランスを必要とする文書を表示することはできません。読み取りアクセスは、より低いレベルのクリアランスを有する文書に対してのみ許可され、より高いレベルのクリアランスを有する文書への書き込みアクセスは許可されます。
図4.1 クリアランスのレベル
![クリアランスのレベル](https://access.redhat.com/webassets/avalon/d/Red_Hat_Enterprise_Linux-7-SELinux_Users_and_Administrators_Guide-ja-JP/images/b953b8da897a789a16edabb43a591b25/security-intro-to-mls.png)
[D]
図4.2「MLS を使用した許可されたデータフロー」 "Secret" セキュリティーレベルで実行しているサブジェクトと、セキュリティーレベルが異なるさまざまなオブジェクトとの間で許可されているデータフローをすべて表示します。簡単に言うと、Bell-LaPadula モデルでは、no read up と no write down の 2 つのプロパティーが適用されます。
図4.2 MLS を使用した許可されたデータフロー
![MLS を使用した許可されたデータフロー](https://access.redhat.com/webassets/avalon/d/Red_Hat_Enterprise_Linux-7-SELinux_Users_and_Administrators_Guide-ja-JP/images/c35ff86deb9e18cc190fc8c00aa9c526/security-mls-data-flow.png)
[D]
4.13.1. MLS およびシステム権限
MLS アクセスルールは、常に従来のアクセス権限 (ファイル権限) と組み合わせられます。たとえば、セキュリティーレベルが Secret のユーザーが、DAC (Discretionary Access Control) を使用して他のユーザーによるファイルへのアクセスをブロックした場合、セキュリティーレベルのユーザーによるアクセスもブロックされます。SELinux ポリシールールは、DAC ルールの 後に チェックされることを覚えておくことが重要になります。より高いセキュリティークリアランスを設定しても、ファイルシステムを任意にブラウズするパーミッションは自動的には付与されません。
トップレベルの許可があるユーザーは、マルチレベルのシステムで自動的に管理者権限を取得しません。コンピューターのすべての情報にアクセスできる場合もありますが、管理者権限を設定するのとは異なります。