web-dev-qa-db-ja.com

MAC vs DAC vs RBAC

誰かが、DAC(随意アクセス制御)またはRBAC(役割ベースのアクセス制御)の代わりにMAC(強制アクセス制御)を使用するほうがよい実際の状況を私に提案できますか?そして、どのDACが他のDACより優れていますか?そして、どのRBACが最高ですか?

私は理論的な概念を知っています。また、RBACは、人ではなく特定の仕事に権利を割り当てたい場合に適しています。 MACとRBACは、ユーザーが権限を管理できることを避けたい状況でより良いことも知っています。

15
mcfan

[〜#〜] dac [〜#〜]は、ユーザーが所有するコンテンツを管理できるようにするための方法です。当たり前のように聞こえるかもしれませんが、たとえば、DACは、オンラインソーシャルネットワークのユーザーがデータにアクセスするユーザーを選択できるようにするのに非常に適しています。それは人々が特権を簡単にそしてすぐに取り消すかまたは転送することを可能にします。 リアクティブアクセス制御詳細 および Laissez-faireファイル共有 は、ユーザーとのDACに関する素晴らしい研究例を提供します。

[〜#〜] rbac [〜#〜]は、あなたが言ったように、複数の役割が存在するシステムで責任を分離するのに適した形式のアクセス制御です満たされます。これは明らかに企業に当てはまります(しばしば Brewer and Nash または [〜#〜] mcs [〜#〜] などの区分化とともに)が、単一で使用することもできます 最小特権の原則 を実装するユーザーオペレーティングシステム。 RBACは、特定のタスクに必要な役割をユーザーが選択できるようにすることで、 職務の分離 用に設計されています。重要な問題は、ロールを使用してシステムで実行されるタスクを表し、中央の権限でロールを割り当てるかどうかです(この場合、RBACはMACの形式です)。または、ロールを使用してユーザーが自分のオブジェクトの権限を制御できるようにする場合(オブジェクトごとに複数のロールがあり、ロールにセマンティクスがまったくない 理論的には可能 )。

[〜#〜] mac [〜#〜]自体は曖昧であり、多くのシステムに実装する方法はたくさんあります。実際には、さまざまなパラダイムを組み合わせて使用​​することがよくあります。たとえば、UNIXシステムはほとんどDACを使用しますが、ルートアカウントはDAC特権をバイパスします。企業では、MAC/RBACを使用してさまざまな部門やチームを分離するだけでなく、一部のDACで同僚が企業のファイルシステムの情報を共有できるようにすることができます。


質問を具体的にして、保護したいシステムがあればそれを教えてください。使用するアクセス制御は常に、検討している特定の状況とコンテキストによって異なります。

13

各システムは、異なるオーバーライドセキュリティ要件に使用されます。 3つの主要なセキュリティ要件は、機密性、整合性、および可用性です。

MACは、他よりも機密性のセキュリティ要件をサポートしています。 DACは、可用性のセキュリティ要件を他のものよりもサポートしています。 RBACは、整合性のセキュリティ要件を他のものよりもサポートしています。もう一つの...がある...

MACは、ラベル付けとアクセス許可に基づいて決定を行います。 DACは、権限のみに基づいて決定を行います。 RBACは、機能/役割に基づいて決定を行います。

システムまたは実装が決定を行うと(正しくプログラムされている場合)、セキュリティ要件が適用されます。間違ったシステムを使用すると、思い通りに実行できなくなります。これはかなり頻繁に発生します。

DACとMACを除いて、これらは相互に排他的ではありません。このActive Directoryの役割とアクセス許可の最適な例として、DAC/RBACの組み合わせの実装があります。

RBAC-データベースの傾向-他のシステムのいずれかを使用できず、RBACを使用する必要がある典型的な例は、顧客サービスと請求です。ペイパービューを取得するためにケーブル会社に電話すると、カスタマーサービスの担当者から申し訳ありませんが、請求書に転送させていただき、延滞請求書を支払うことができると言われます。彼らはあなたのクレジットカード情報を直接取得することから。あなたが請求書に転送されたら、あなたはあなたの請求書を支払い、私は私のサービスを受けることができると言います。このサービスを希望しているようですが、それは私の役目ではありません。したがって、両方のロールはすべてのデータを見ることができ(機密性はありません)、特定の一連の責任(完全性)を持っているフィールドのみを操作できます。 -あなたはDACを主張することができます:しかし、「もっとそう」ルールに適合します。

MAC-軍事システムまたは非常に狭く定義された高セキュリティ要件の実装に向かう傾向があります。 2よく使用されるTRusted-SolarisおよびLINUX- MACカーネルモジュール(これは以前はSELinuxでした)には他にもありますが、気にしないでください。 MACにのみ表示される重要な要素の1つは、支配の構成要素です。シークレットレベルのクリアランスがある場合、トップシークレットドキュメントを表示するための権限はありません。商用エンティティでは、この構成が必要になることはまれです。ただし、MACに固有の2番目のポイントが表示されます。アクティビティが特に許可されていない場合は、実行できません。 (これにより、主にミッションまたはシステム要件が急速に変更されるため、多くの商用利用が中断されます)MACの優れた使用法は、カスタムポリシーを作成するWebサーバー上です(これは、その実装に対して非常に狭義に定義されています)。コアプロセスはシステムアカウントでのみ実行できると述べています。それから生成されたすべてのプロセスは、特定の権限を満たす必要があります。

DAC-誰もがそれを使用し、私の前の人は十分に答えます。

4
D0c0z