ロールベースアクセス制御(RBAC)とは? メリットとABACとの比較

ロールベースアクセス制御(RBAC)システムは、システム内のユーザーのロールに応じてアクセスとアクションを割り当てます。同じロールを付与されたすべてのユーザーは、同じ権限セットを持ちます。異なるロールを付与されたユーザーは、異なる権限を持ちます。

システムにRBACが必要な理由

すべての企業には、機密の文書、プログラム、記録があります。それらを保護しようとする際、保護が厳しすぎると業務が滞ります。逆に保護が緩すぎると、壊滅的なセキュリティの問題が発生する可能性があります。

そこで重要となるのが、ロールベースアクセス制御(RBAC)です。

このRBACを使用することで、ユーザーに必要なアクセス権を付与し、アクセスを必要としないユーザーをブロックできます。個人の属性ではなく、その個人のロールに基づいて変更を行います。ロールごとにアクセスを変更することで、これらの変更を迅速に実行できます。

ITで働く場合、ロールベースアクセス制御(RBAC)について詳細を理解することが重要です。2004年、米国国家規格協会(ANSI)は、業界のコンセンサス標準としてRBACの原則を採択しました。したがって、ITで働く中で、RBACを適用しなければならない状況や、RBACが自社に適していないと考えられる根拠を説明しなければならない状況に遭遇する方が多いのではないでしょうか。

Role-Based Access Control

ロールベースアクセス制御(RBAC)とは具体的に何か?

RBACシステムは、すべて以下の中核的要素を共有します。

  • 管理者:ロールの特定、アクセス許可の付与、セキュリティシステムの保守を担います。
  • ロール:従業員は、それぞれの業務内容に応じてグループ化されます。
  • アクセス許可:アクセスとアクションが各ロールに付加され、ユーザーが実行できること、実行できないことを概説します。

RBACシステムでは、以下は必要とされません。

  • 個人の自由の区別:アクセスは、個人の好みや希望ではなく、個人の役割(ロール)によって定義されます。これにより、アクセス許可の管理が簡単になります。
  • 集中的な保守:アクセス許可はロールに従います。新しいジョブ機能は、数十人(または数百人、場合によっては数千人)の従業員に適用される新しいロールになり、管理者の作業が大幅に軽減されます。プロモーションで必要となるのは、アクセス許可をラインアイテムとして編集することではなく、ロールを変更することです。

RBACシステムは、何十年も前から使用されています。1992年、全米コンピューターセキュリティ会議でRBACの概念が導入されました。考案者は、特定のニーズとセキュリティ要件が多様であるため、強制的なアクセス制御と裁量アクセス制御が民間企業や民間人にとってうまく機能しないと考えました。この新しい手法は、非軍事目的の民間の環境でより効果的に機能すると主張されました。

それ以来、多くの企業が、最も機密性の高いドキュメントのセキュリティを管理するために、RBACの概念を適用してきました。

RBACにおけるロールの仕組み

ロールは、RBACシステム内の認可を指示します。ロールを適切に定義しなければ、社内の大規模なユーザーグループの業務に支障が及びます。

ロールは、以下により定義されます。

  • 権限:上級のマネジメントは、インターンが決して見るべきではないファイルにアクセスする必要があります。
  • 責任:取締役会のメンバーとCEOは、社内で類似する権限を持つ場合がありますが、それぞれが異なるコア機能に対して責任を負っています。
  • コンピテンス:熟練労働者は、エラーを起こさずに機密文書を扱うという点において信頼でき、新人は致命的なミスを犯す可能性があります。それに応じてアクセスを調整することが重要です。

ロールは、重複する責任と権限を持つこともできます。たとえば、「外科医」のロールを付与された人が、「医師」または「レントゲン読影医」として働く場合があるかもしれません。ロール階層は、他の多くの人の属性を保持する1タイプの人物を定義します。つまり、1つのロールが他の多くのロールを包含できます。

ロールベースアクセス制御(RBAC)におけるアクセス許可とは?

アクセス許可は、ユーザーがアクセスできる対象と、システム内で実行できることを指定します。アクセス許可は、管理者が定義したロールに基づいて、ユーザーが従うルールであると考えることができます。

アクセス許可には以下が関与します。

  • アクセス:「特定のドライブ、プログラム、ファイル、またはレコードを開くことができるのは誰か?」「これらの存在すら知ってはいけないのは誰か?」といった問題に関連します。アクセスは、ユーザーが見ることができるものを制限します。
  • 読み取り:「文書の内容を変更できないが、スキャンできるのは誰か?」といった問題に関連します。一部のロールは、データを参照できても変更できないことがあります。
  • 書き込み:「ドキュメントを変更できるのは誰か?」「変更は他者による承認を必要とするか、または永続的か?」といった問題に関連します。これはアクセス許可で定義します。
  • 共有:「ドキュメントをダウンロードしたり、メール添付として送信したりできるのは誰か?」といった問題に関連します。他のアクセス許可と同様に、一部のユーザーはデータを参照できても共有できないことがあります。
  • 財務:「支払いを請求できるのは誰か?」「払い戻しを提供できるのは誰か?」といった問題に関連します。アクセス許可には、請求や払い戻しの処理、掛売勘定の設定、支払いの取消といった能力が関与することがあります。

アクセス許可はロールに従いますが、その逆は起こらない点に留意することが重要です。各ロールが何をすべきかを決定し、それに応じてアクセス許可を適用します。

現在のロールの制限を超えるアクセス許可を要求することを、従業員に認めてはなりません。アクセス許可を個別に変更し始めると、システムがたちまち扱いにくくなる可能性があります。

ロールベースアクセス制御(RBAC)のメリット

多くのセキュリティオプションがある中で、自社に最適な選択肢を見極めることは必ずしも容易ではありません。しかし、RBACには他の手法とは一線を画す実証済みのさまざまなメリットがあります。

RBACシステムは、以下のメリットを提供します。

  • 複雑さを軽減:新入社員は、サーバーやドキュメントの詳細な要件ではなく、ロールに基づいてアクセス権を付与されます。これにより、ポリシーの作成、保守、監査が簡素化されます。
  • グローバルな管理:ロールに関連付けられたアクセス許可を変更することで、多数の従業員のアクセス権を一括で変更できます。
  • 容易なオンボーディング:組織内での従業員の入社、異動、昇進の際に、個人のアクセス許可に気をもむ必要はありません。適切なロールを割り当てるだけで、ロールがその他すべてを処理します。
  • エラーの削減:従来のセキュリティ管理にはエラーがつきものです。個人のアクセス許可を追加するだけでも、さまざまな間違いを犯す可能性が発生します。ロールのアクセスの変更では、過剰(または過小)な権限を付与する可能性が低減されます。
  • 全体的なコスト削減:管理者の作業量が少なくなるので、企業はセキュリティ管理のコストを削減できます。これにより、組織の時間とコストを節約できます。

RBACとABACとの比較:優れているのはどちらか?

ロールベースアクセス制御(RBAC)モデルの適用について詳細を掘り下げる前に、代替の手法について検討しましょう。ABACは、企業の検討対象として最も知られたモデルの1つであり、状況によっては有用です。

属性ベースのアクセス制御(ABAC)では、ロールの多様なオプションを利用できます。役職、年功などの属性ではなく、以下の要素を考慮します。

  • ユーザータイプ:セキュリティの許可、財務の知識、市民権のステータスといった要素を使用してロールを作成できます。
  • 時刻:業務が行われない夜間にドキュメントをロックダウンする、スーパーバイザーが対応できない時間帯に編集を制限する、週末にデータへのアクセスを制限するといった制御が可能です。
  • 場所:たとえば、キャンパス内または国内でのみドキュメントにアクセスできるように指定できます。また、必要に応じて、ユーザーが自宅からドキュメントにアクセスする権限を制限できます。

このようなシステムは、静的なアクセス許可タイプではなく、セキュリティを適用するポリシーを活用します。関与する変数が多くなるため、適切なバランスを取ることが若干難しくなります。組織のセキュリティ環境によっては、賢明な選択となります。

RBACシステムの実装方法

ほとんどのセキュリティタスクと同様、ロールベースアクセス制御(RBAC)システムの作成は秩序立ったプロセスであり、各ステップを順番に完了する必要があります。正しく完了させるには、多くの入力が必要になる場合があります。

適切なシステムを作成するには、以下を実行する必要があります。

  • システムのインベントリを作成する。ビジネス環境に含まれるプログラム、サーバー、ドキュメント、ファイル、レコードを特定します。見落としがないように、時間をかけて検討する必要があります。
  • ロールを特定する。マネジメントや人事と連携します。自社にとって意味のあるロール数を見極め、それらのロールに基づいてアクセス許可を特定します。
  • 統合のタイムラインを作成する。プログラムを稼働させるために必要な時間を判断し、同僚に準備する時間を与えます。進捗が滞らないように、変更を展開する前に必ず従業員に通知します。
  • フィードバックを受け入れる。ロールとアクセス許可の計画を社内に伝達します。前提が正しいかどうかをマネージャーに尋ね、フィードバックに応じて調整します。

セットアップのプロセスでは試行錯誤があります。計画どおりに進まない場合も、後戻りすることを恐れてはなりません。

  • 計画を実行に移す。ロールとアクセス許可を特定したら、計画を実行に移します。ネットワークを注意深く監視し、不具合が発生したら修正します。

プロジェクトを成功させるには、以下のベストプラクティスに従います。

  • 時間をかける。小規模な企業ですら、何百ものロール/アクセス許可の組み合わせがあります。慎重の上にも慎重を重ねて計画します。また、計画を実行する前に調整する時間を確保します。
  • 揺らがない信念を持つ。ユーザーの中には、自分に付与されたロールの範囲を超えてアクセス許可を要求する人がいるかもしれません。追加のアクセス許可を付与する前に、個々の要求を慎重に検討してください。

これらの要求を記録し、同じロールを持つ全員が要求されたファイルにアクセスできるようにすべきかどうか、マネジメントに問い合わせます。ロールが同じユーザーが大きく異なるアクセスレベルを持つ状況は、回避する必要があります。

  • 頻繁に連携する。セキュリティルールが厳しすぎると、システムがエンドユーザーにとって役に立たないものとなります。徹底的な調査と連携なしに要求を却下すべきではありません。ビジネスを安全に推進できる体制を実現するため、バランスを取ることが重要です。

エキスパートの支援を受ける

このようなプログラムの実装は気後れするかもしれません。しかし、少しばかりの支援を受けることで、作業の管理が驚くほど楽になります。Oktaのようなプラットフォームを利用することで、プロセスを簡素化できます。Oktaは、6,500を超えるアプリとの統合を提供しているので、すべてが一元化され、プロセスが簡単になります。

参考文献

Role Based Access Control (RBAC). (June 2020). National Institute of Standards and Technology, U.S. Department of Commerce. 

Conference Proceedings: Role-Based Access Controls. (November 1992). National Institute of Standards and Technology, U.S. Department of Commerce.

An Introduction to Role-Based Access Control. (December 1995). National Institute of Standards and Technology, U.S. Department of Commerce.

Role-Based Access Control (RBAC): Permissions vs. Roles. (February 2018). Medium. 

Role-Based Access Control Project Overview. (June 2020). National Institute of Standards and Technology, U.S. Department of Commerce.

Role-Based Access Control (Presentation). National Institute of Standards and Technology. 

An Evolution of Role-Based Access Control Towards Easier Management Compared to Tight Security. (July 2017). ICFNDS '17: Proceedings of the International Conference on Future Networks and Distributed Systems.

Authorization and Access Control. (2014). The Basics of Information Security (Second Edition).

Security for Distributed Systems: Foundations of Access Control. (2008). Information Assurance: Dependability and Security in Networked Systems.

Access Controls. (2013). Computer and Information Security Handbook (Third Edition).

How to Implement Role-Based Access Control. (October 2007). Computer Weekly.

Role-Based Access Control: Meek or Monster. Wired.

Guide to Role-Based Access Control (RBAC). IBM Support.

Extending RBAC for Large Enterprises and Its Quantitative Risk Evaluation. Mitsubishi Electric Corporation.

Restricting Database Access Using Role-Based Access Control (Built-In Roles). Amazon Web Services (AWS).

An Enhancement of the Role-Based Access Control Model to Facilitate Information Access Management in Context of Team Collaboration and Workflow. (December 2012). Journal of Biomedical Informatics.

Identify Governance and Role-Based Access Control. University of Michigan Information and Technology Services.

読む

従業員やサードパーティのアクセスを効果的に制御する方法について、詳細をご確認ください。