このようなシステムでは、管理者は細かな区別を使用して制御を実行できます。さまざまな属性に基づいてアクセス許可を設定でき、それらが連携してドキュメントを安全に保ちます。理論的には、ログインした場所や、曜日によって、同じ人に対してアクセス許可を変化させることも可能です。
ABACでは、各要素が連携して動作します。
- 主体:誰が作業しようとしているのか?
- 対象:ユーザーはネットワーク内のどのファイルを操作しようとしているのか?
- 操作:その人は、そのファイルで何をしようとしているのか?
関係性は、以下のようにif/then文で定義されます。
- ユーザーが会計部門に所属している場合、その人は会計ファイルにアクセスできます。
- その人がマネージャーである場合、ファイルの読み書きを実行できます。
- 会社の方針で「土曜日は作業しない」と定められており、今日が土曜日である場合、今日は誰もファイルにアクセスできません。
RBACとABACの比較:長所と短所
RBACとABACは、どちらも制御とアクセスに関係しています。どちらのアプローチもシステムを保護しますが、それぞれに明確な長所と短所があります。
ABACの長所
|
ABACの短所
|
明確に定義された制御
管理者は多くの変数を定義、強化、管理でき、高度な制御を確保できます。資産を守るための、非常に具体的で細かなルールを作成できます。
|
時間の制約
変数を定義し、ルールを設定することは、特にプロジェクトのキックオフ時には大変な労力を必要とします。
|
専門知識
研究者が指摘するように、適切なABACルールを実現するには、正確な実装が求められます。最初にシステムの設定を間違えると、修正に時間がかかります。
|
RBACの長所
|
RBACの短所
|
シンプルさ:
RBACシステム内のルールは、シンプルで実行が簡単です。作業が早く終わるので、処理能力も少なくて済みます。
|
ロールの爆発的増加
システムに粒度を加えるために、ロールを増やす管理者もいます。これは、ロールの爆発的増加と呼ばれる状態につながり、そうなると何百、何千ものルールを管理しなければなりません。
|
5つのアイデンティティ管理シナリオ
以下の例は、どのような場合にRBACシステムが最適で、どのような場合にABACシステムがよりよく機能するかを理解するのに役立ちます。また、両者を併用した例も紹介します。
以下を参考に、RBACとABACを比較・検討してください。
1. 少人数の作業グループ:RBACが最適です。会社の規模が小さく、ファイルの数が少ない場合は、ロールごとに作業を定義することがシンプルです。
たとえば、15人が従業員しかいない建設会社であれば、RBACシステムを効率的かつ簡単にセットアップできます。
2. 地理的に分散した作業グループ:ABACが適しています。従業員のタイプ別、場所別、業務時間別にアクセスを定義できます。たとえば、支店のタイムゾーンにおける業務時間中のみアクセスを許可できます。
3. 時間で定義される作業グループ:ABACの使用が望ましいと言えます。機密文書やシステムの中には、営業時間外にアクセスできないように指定すべきものもあり、そのような場合にABACシステムによって時間ベースのルールを設定できます。
4. 単純に構造化された作業グループ:RBACが最適です。大規模な組織で、職務に応じてアクセスを定義できます。
たとえば、医院では受付担当者にスケジュールの読み書きを許可していますが、その従業員は医療検査結果や請求情報を見る必要はありません。このような場合には、RBACシステムが有用です。
5. クリエイティブな企業:クリエイティブな企業では、ファイルを独自の方法で使用することが多いため、ABACが理想的です。ドキュメントによって、全員が見る必要がある場合もあれば、一部の人だけが見る必要がある場合もあります。アクセスのニーズは、役割ではなくドキュメントに応じて変わります。
たとえば、社内のアーティストやライターなどのクリエイティブスタッフは、他の従業員が配布しやすいようにファイルを作成します。しかし、請求部門やアカウントエグゼクティブなどの従業員も、それらのファイルを見る必要があるかもしれません。また、マーケティングチームが共有する場合もあるでしょう。
これらのドキュメントを誰が見るべきか、どのように扱うべきかという複雑なアクセスは、ABACで管理するのが最善です。
多くの場合、RBACもABACも、必要なすべてのユースケースに対応する完璧なソリューションではありません。そのため、一般的には、大局的なアクセスにRBACを使用し、その構造の中で細かい制御にABACを使用するというハイブリッドシステムが採用されます。
たとえば、RBACシステムを使って、機密性の高いサーバーを新入社員から隠すことができます。さらに、アクセス権を持つ人がどのようにドキュメントを操作できるかを、ABACシステムを使って管理できます。
RBACとABACを組み合わせることで、管理者は両方のシステムの長所を活かすことができることが、研究で示されています。RBACは機密ファイルを緊密に保護し、ABACは動的な動作を可能にします。組み合わせによって、両者のメリットを生かすことができます。
賢い選択をするために
どのアイデンティティ管理モデルが自社に最適か、わからなくても心配無用です。
。
Oktaが、きめ細かなアクセス許可とユーザーのアクセス要素を使用して、アクセスと認可のための安全なパスを作成します。Oktaの活用法をご確認ください。
参考文献
The NIST Model for Role-Based Access Control: Towards a Unified Standard. (July 2007). National Institute of Standards and Technology.
Policy Engineering in RBAC and ABAC. (November 2018). From Database to Cyber Security.
Adding Attributes to Role-Based Access Control. (June 2010). IEEE Computer.
Role-Based ABAC Model for Implementing Least Privileges. (February 2019).ICSCA '19: Proceedings of the 2019 8th International Conference on Software and Computer Applications.