👺

Azure Roleについて整理してみた(AWSとの比較)

2025/02/27に公開

Roleという単語の概念が、awsとazureで異なるので整理してみました。

Azureには2種類のRoleがありますが、本記事はAzure Roleに関する整理になります。

  • Azure Role : 仮想マシンやストレージなどの Azure リソースへのアクセスを制御
  • Microsoft Entra Role : ユーザー、グループ、アプリケーションなどの Microsoft Entra リソースへのアクセスを制御

結論として

Azure RoleがAWSのIAM Policy、Azure Managed IDがAWSのIAM Roleに該当します。

また、ややこしいことにAzureにもPolicyという概念が存在します。
AzureにおけるRoleとPolicyとの比較をすると

  • Azure Roleはリソースに紐づいて存在し、そのリソースに対する操作権限が記載されています。
    RoleをUserやGroupといったPrincipal(AWSでいうIAM UserやGroup)に紐付けることで、Principalごとのリソース操作権限を管理します。
    (例:ストレージのアクセスを特定のグループに絞る)
  • Azure Policyはpolicy単体で存在し、それをリソース/リソースグループ/サブスクリプション等に紐づけることで、紐付け先に対する制約を設けます。そのためPrincipalとの紐付けはありません。
    (例:リソース作成のリージョンを絞る、virtual machineのインスタンスサイズを絞る)

注意点として、AWSではIAM Policyは単体で定義されそれをIAM Userに割り当てるのに対し、
Azureでは Azure Roleはリソースごとに定義され、それをPrincipalに割り当てるという違いがあります。
(そのため、AWSではコンソールから全policy一覧を確認できるのに対して、Azureではリソースごとにリソースの設定画面からroleを確認する必要があります。)

以下対応表です。

Azure の概念 AWS の対応する概念
Azure Role (RBAC) IAM Policy
Azure Managed ID IAM Role
Azure Policy リソースに関するルール
Azure Role Definition IAM Policyのドキュメント
Azure Role Assignment IAM Policyのアタッチ

Discussion