RBAC(ロールベースアクセス制御) あーるばっくあくせすせいぎょ
簡単に言うとこんな感じ!
「営業部は顧客データだけ見られる」「経理部は請求書を編集できる」みたいに、役職(ロール)ごとにできることを決める仕組みだよ。人ひとりに個別で権限を設定するんじゃなく、役職にまとめて設定するから管理がラクになるってこと!
RBACとは
RBAC(Role-Based Access Control)とは、「ロール(役割・役職)」を軸にしてシステムへのアクセス権限を管理する仕組みのことです。日本語ではロールベースアクセス制御と呼ばれます。
従来は「Aさんにはこの権限、Bさんにはあの権限」とユーザー一人ひとりに権限を設定していました。しかしこれでは社員が増えるほど管理が煩雑になり、設定ミスやアクセス権の野放しが起きやすくなります。RBACでは「営業担当」「経理担当」「システム管理者」といったロールに権限をまとめて付与し、ユーザーをそのロールに割り当てるだけで管理できます。
情報システムの発注・運用を担うビジネスパーソンにとって、RBACは「誰がどこまで操作できるか」を整理する内部統制・セキュリティ管理の基本中の基本です。クラウドサービス・ERPシステム・社内ポータルなど、ほぼすべてのビジネスシステムで採用されている考え方です。
RBACの構造と仕組み
RBACは「ユーザー」「ロール」「パーミッション(権限)」という3つの要素とその関係で成り立っています。
| 要素 | 意味 | 例 |
|---|---|---|
| ユーザー(User) | システムを使う人 | 田中さん、鈴木さん |
| ロール(Role) | 役割・役職のグループ | 営業担当、経理担当、管理者 |
| パーミッション(Permission) | 何ができるかの権限 | 顧客データ閲覧、請求書編集、ユーザー追加 |
| オブジェクト(Object) | 操作対象のリソース | ファイル、DB、API |
| オペレーション(Operation) | 操作の種類 | 読む・書く・削除する |
ユーザー → ロールに割り当て → ロールはパーミッションを持つ → リソースを操作できる
田中さん ──────→ [営業担当ロール] ──→ 顧客DB「閲覧のみ」
鈴木さん ──────→ [経理担当ロール] ──→ 請求書「閲覧・編集」
山本さん ──────→ [管理者ロール] ──→ すべての操作
覚え方:「人に直接あげない、役職を通す」
RBAC の本質は「権限を人に直接渡さず、必ずロールを仲介させる」点にあります。「役職を通す = Role-Based」と覚えるとシンプルです。異動・退職のときもユーザーのロール割り当てを変えるだけでOK、権限の設定自体はそのままなのでミスが起きにくくなります。
RBACの4つのモデル(RBAC0〜RBAC3)
NIST(米国国立標準技術研究所)は以下の4段階のRBACモデルを定義しています。
| モデル | 名称 | 特徴 |
|---|---|---|
| RBAC0 | コアRBAC | 最小構成。ユーザー・ロール・パーミッションの基本関係のみ |
| RBAC1 | 階層RBAC | ロール間の継承(上位ロールは下位の権限を引き継ぐ)を追加 |
| RBAC2 | 制約RBAC | 同一人物が相反するロールを同時に持てないルール(SoD)を追加 |
| RBAC3 | 統合RBAC | RBAC1+RBAC2の統合。最も高度 |
歴史と背景
- 1970年代:アクセス制御の概念が登場。当初は「DAC(任意アクセス制御)」「MAC(強制アクセス制御)」が主流
- 1992年:David Ferraiolo と D. Richard Kuhn(NIST)が論文でRBACを体系化・提唱
- 1996年:Ravi Sandhu らが「RBAC96」モデルとして理論を精緻化し、現在のRBAC標準の基礎を確立
- 2004年:NISTがRBACをアメリカ国家規格(ANSI/INCITS 359-2004)として標準化
- 2010年代〜:クラウドの普及とともにAWS IAM・Azure AD・Google Cloud IAMなどに広く実装され、ビジネスシステムの標準的な権限管理手法に
- 現在:ゼロトラストセキュリティの文脈でRBACをさらに細かくした**ABAC(属性ベースアクセス制御)やPBAC(ポリシーベース)**との組み合わせも増加
他のアクセス制御モデルとの比較
RBACは代表的なアクセス制御モデルの一つです。それぞれの違いを整理します。
| モデル | 正式名称 | 権限の決め方 | 向いているシステム |
|---|---|---|---|
| DAC | 任意アクセス制御 | リソースのオーナーが個別に設定 | ファイルサーバー・共有フォルダ |
| MAC | 強制アクセス制御 | システム管理者がルールを強制 | 軍・政府の機密システム |
| RBAC | ロールベースアクセス制御 | 役職(ロール)単位で設定 | 企業システム・SaaS全般 |
| ABAC | 属性ベースアクセス制御 | 属性(時間・場所・部署など)を組み合わせてポリシーで判断 | ゼロトラスト・複雑な条件が必要な環境 |
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| ANSI/INCITS 359-2004 | NISTが策定したRBACのアメリカ国家規格。RBAC0〜RBAC3の定義を標準化 |
| NIST SP 800-162 | ABACガイドライン。RBACとの使い分けや移行方針も解説 |
| NIST SP 800-53 | 連邦政府向けセキュリティ管理策。アクセス制御(AC)ファミリーにRBACが含まれる |
関連用語
- IAM(Identity and Access Management) — 認証・認可・権限管理を統合的に扱う仕組み全体
- ABAC(属性ベースアクセス制御) — 部署・時間・場所などの属性を組み合わせてアクセスを制御するより柔軟なモデル
- 最小権限の原則 — 必要最低限の権限だけを付与するセキュリティの基本原則
- ゼロトラストセキュリティ — 「社内だから信頼」をやめ、常に認証・認可を求めるセキュリティモデル
- SSO(シングルサインオン) — 一度のログインで複数システムを使えるようにする仕組み
- Active Directory — Windowsネットワークでユーザーとグループ(ロール)を一元管理するサービス
- OAuth 2.0 — APIへのアクセス権限委譲を標準化したプロトコル。RBACと組み合わせて使われる
- SoD(職務分離) — 承認者と実行者を分けるなど、一人に権限を集中させないガバナンス原則