IAMポリシーARN — マネージドポリシーの参照

IAMポリシーARNを解析し、マネージドポリシーの識別方法を理解します。AWSマネージドポリシーとカスタマーマネージドポリシーの違い、ポリシーのバージョニングについて解説。

IAM

詳細な説明

IAMポリシーARNの構造

IAMマネージドポリシーのARNは、AWSマネージド(AWSが作成)かカスタマーマネージド(ユーザーが作成)かを示します。主な違いはアカウントIDフィールドです。

AWSマネージドポリシーの例

arn:aws:iam::aws:policy/ReadOnlyAccess

カスタマーマネージドポリシーの例

arn:aws:iam::123456789012:policy/custom/MyAppPolicy

解析されたコンポーネント(カスタマーマネージド)

コンポーネント
Partition aws
Service iam
Region (空)
Account ID 123456789012
Resource Type policy
Resource ID custom/MyAppPolicy

AWSマネージドとカスタマーマネージドの比較

最も目に見える違いはアカウントIDフィールドです。AWSマネージドポリシーはアカウントIDとしてリテラル文字列awsを使用し、カスタマーマネージドポリシーは12桁のアカウント番号を使用します。AdministratorAccessReadOnlyAccessPowerUserAccessなどのAWSマネージドポリシーはAWSによって管理され、すべてのアカウントで利用可能です。

ポリシーパス

ユーザーやロールと同様に、ポリシーもパスを持つことができます。例のcustom/MyAppPolicyでは、パスcustom/が関連するポリシーをグループ化します。アプリケーション、チーム、環境ごとにポリシーを整理するのに便利です。

ポリシーバージョン

ARNはポリシー自体を識別しますが、各ポリシーは最大5つのバージョンを持つことができます。ARNは常にポリシーを指し、特定のバージョンを参照するにはARNではなくAPI呼び出しでバージョンID(v1v2など)を指定します。

ユースケース

CloudFormationやTerraformテンプレートでIAMロールにマネージドポリシーをアタッチする場合。ポリシーARNはAttachRolePolicy API呼び出しやインフラストラクチャ・アズ・コード定義のManagedPolicyArnsプロパティで使用される主要な参照です。

試してみる — AWS ARN Parser

フルツールを開く