ある開発者が Azure CLI で az role assignment create コマンドを使ってサービスプリンシパルにリソースグループスコープで「共同作成者(Contributor)」ロールを割り当てようとした。しかしコマンドがエラーになった。最小限の追加権限で問題を解決するために付与すべきロールはどれか。
- A. Entra ID で「グローバル管理者(Global Administrator)」ロールを付与する
- B. 対象リソースグループのスコープで「共同作成者(Contributor)」ロールを割り当てる
- C. 対象リソースグループのスコープで「所有者(Owner)」ロールを割り当てる
- D. 対象リソースグループのスコープで「ユーザーアクセス管理者(User Access Administrator)」ロールを割り当てる
解答と解説を見る
正解: D
RBAC ロール割り当ては「Microsoft.Authorization/roleAssignments/write」アクションが必要で、このアクションが含まれるロールは「所有者(Owner)」または「ユーザーアクセス管理者(User Access Administrator)」である。最小特権の観点では、ロールの割り当てだけが目的であれば所有者よりも範囲の狭い「ユーザーアクセス管理者」が適切。ユーザーアクセス管理者はリソースへのアクセス管理(ロール割り当て)専用のロールで、リソース自体の操作権限は持たない。選択肢Cの所有者は RBAC 割り当てに加えてリソースの全操作権限も含まれており、最小特権に反する。選択肢AのEntra ID グローバル管理者は Azure RBAC とは別の権限体系であり、Azure リソースへのロール割り当て権限は自動的には付与されない(別途昇格が必要)。選択肢Bの共同作成者にはMicrosoft.Authorization/roleAssignments/write は含まれない。