

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# EventBridge スケジューラでのアイデンティティベースのポリシーの使用
<a name="security_iam_id-based-policy-examples"></a>

デフォルトでは、ユーザーおよびロールには、EventBridge スケジューラのリソースを作成または変更するアクセス許可がありません。IAM 管理者は、リソースで必要なアクションを実行するための権限をユーザーに付与する IAM ポリシーを作成できます。

これらのサンプルの JSON ポリシードキュメントを使用して IAM アイデンティティベースのポリシーを作成する方法については、「*IAM ユーザーガイド*」の「[IAM ポリシーを作成する (コンソール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html)」を参照してください。

EventBridge スケジューラが定義するアクションとリソースタイプ (リソースタイプごとの ARN の形式を含む) の詳細については、「*サービス認可リファレンス*」の「[Amazon EventBridge スケジューラのアクション、リソース、および条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoneventbridgescheduler.html)」を参照してください。

**Topics**
+ [ポリシーに関するベストプラクティス](#security_iam_id-based-policies-best-practices)
+ [EventBridge スケジューラのアクセス許可](#security_iam_id-based-policies-permissions)
+ [AWS EventBridge スケジューラの マネージドポリシー](#security_iam_id-based-policies-managed-policies)
+ [EventBridge スケジューラのカスタマー管理ポリシー](#security_iam_id-based-policies-customer-managed-policies)
+ [AWS マネージドポリシーの更新](#security_iam_id-based-policies-updates)

## ポリシーに関するベストプラクティス
<a name="security_iam_id-based-policies-best-practices"></a>

アイデンティティベースのポリシーは、ユーザーのアカウントで誰かが EventBridge スケジューラのリソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションでは、 AWS アカウントに費用が発生する場合があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:
+ ** AWS 管理ポリシーを開始し、最小特権のアクセス許可に移行する** – ユーザーとワークロードにアクセス許可の付与を開始するには、多くの一般的なユースケースにアクセス許可を付与する*AWS 管理ポリシー*を使用します。これらは で使用できます AWS アカウント。ユースケースに固有の AWS カスタマー管理ポリシーを定義することで、アクセス許可をさらに減らすことをお勧めします。詳細については、*IAM ユーザーガイド* の [AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) または [ジョブ機能のAWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) を参照してください。
+ **最小特権を適用する** – IAM ポリシーでアクセス許可を設定する場合は、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、*最小特権*アクセス許可とも呼ばれています。IAM を使用して許可を適用する方法の詳細については、*IAM ユーザーガイド* の [IAM でのポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) を参照してください。
+ **IAM ポリシーで条件を使用してアクセスをさらに制限する** - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。たとえば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。条件を使用して、サービスアクションが などの特定の を通じて使用されている場合に AWS のサービス、サービスアクションへのアクセスを許可することもできます CloudFormation。詳細については、*IAM ユーザーガイド* の [IAM JSON ポリシー要素:条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) を参照してください。
+ **IAM アクセスアナライザー を使用して IAM ポリシーを検証し、安全で機能的な権限を確保する** - IAM アクセスアナライザー は、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、*IAM ユーザーガイド* の [IAM Access Analyzer でポリシーを検証する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) を参照してください。
+ **多要素認証 (MFA) を要求する** – で IAM ユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、MFA をオンにしてセキュリティを強化します。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、*IAM ユーザーガイド* の [MFA を使用した安全な API アクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) を参照してください。

IAM でのベストプラクティスの詳細については、*IAM ユーザーガイド* の [IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) を参照してください。

## EventBridge スケジューラのアクセス許可
<a name="security_iam_id-based-policies-permissions"></a>

 IAM プリンシパル (ユーザー、グループ、またはロール) が EventBridge スケジューラでスケジュールを作成し、コンソールまたは API から EventBridge スケジューラのリソースにアクセスするには、プリンシパルのアクセス権限ポリシーに一連の権限を追加する必要があります。これらの権限は、プリンシパルの職務に応じて設定できます。例えば、EventBridge スケジューラのコンソールのみを使用して既存のスケジュールのリストを表示するユーザーまたはロールには、`CreateSchedule` API オペレーションを呼び出すために必要な権限は必要ありません。アイデンティティベースの権限を調整して、最も権限の低いアクセス権のみを提供することをおすすめします。

 次のリストは、EventBridge スケジューラのリソースと、それに対応してサポートされているアクションを示しています。
+ **スケジュール**
  + `scheduler:ListSchedules`
  + `scheduler:GetSchedule`
  + `scheduler:CreateSchedule`
  + `scheduler:UpdateSchedule`
  + `scheduler:DeleteSchedule`
+ **スケジュールグループ**
  + `scheduler:ListScheduleGroups`
  + `scheduler:GetScheduleGroup`
  + `scheduler:CreateScheduleGroup`
  + `scheduler:DeleteScheduleGroup`
  + `scheduler:ListTagsForResource`
  + `scheduler:TagResource`
  + `scheduler:UntagResource`

 EventBridge スケジューラの権限を使用して、EventBridge スケジューラで使用する独自のカスタマー管理ポリシーを作成できます。次のセクションで説明する AWS 管理ポリシーを使用して、独自のポリシーを管理することなく、一般的なユースケースに必要なアクセス許可を付与することもできます。

## AWS EventBridge スケジューラの マネージドポリシー
<a name="security_iam_id-based-policies-managed-policies"></a>

 AWS は、 が AWS 作成および管理するスタンドアロン IAM ポリシーを提供することで、多くの一般的なユースケースに対処します。*管理ポリシー*、つまり事前定義ポリシーは、一般的ユースケースに必要なアクセス許可を付与するため、どの許可が必要なのかをユーザーが調査する必要はありません。詳細については、「**IAM ユーザーガイド」の「[AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)」を参照してください。アカウントのユーザーにアタッチできる以下の AWS 管理ポリシーは、EventBridge スケジューラに固有です。
+  **AmazonEventBridgeSchedulerFullAccess**

  スケジュールおよびスケジュールグループのすべての EventBridge スケジューラアクションを使用する権限を付与します。

  このポリシーの許可を確認するには、「*AWS マネージドポリシーリファレンス*」の「[AmazonEventBridgeSchedulerFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEventBridgeSchedulerFullAccess.html)」を参照してください。
+  **AmazonEventBridgeSchedulerReadOnlyAccess** 

  スケジュールとスケジュールグループに関する詳細を表示する読み取り専用の権限を付与します。

  このポリシーのアクセス許可を確認するには、「*AWS マネージドポリシーリファレンス*」の「[AmazonEventBridgeSchedulerReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEventBridgeSchedulerReadOnlyAccess.html.html)」を参照してください。

## EventBridge スケジューラのカスタマー管理ポリシー
<a name="security_iam_id-based-policies-customer-managed-policies"></a>

 以下の例を使用して、EventBridge スケジューラの独自のカスタマー管理ポリシーを作成します。[カスタマー管理ポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)を使用すると、プリンシパルの職務に応じて、チーム内のアプリケーションとユーザーに必要なアクションとリソースのみにアクセス許可を付与できます。

**Topics**
+ [例: `CreateSchedule`](#security_iam_id-based-policies-customer-managed-policies-create-schedule)
+ [例: `GetSchedule`](#security_iam_id-based-policies-customer-managed-policies-get-schedule)
+ [例: `UpdateSchedule`](#security_iam_id-based-policies-customer-managed-policies-update-schedule)
+ [例: `DeleteScheduleGroup`](#security_iam_id-based-policies-customer-managed-policies-delete-schedule-group)

### 例: `CreateSchedule`
<a name="security_iam_id-based-policies-customer-managed-policies-create-schedule"></a>

 新しいスケジュールを作成するときに、EventBridge スケジューラ上のデータを暗号化するのに [AWS 所有のキー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) を使用するか、または[カスタマーマネージドキー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)を使用するかを選択します。

 次のポリシーでは、プリンシパルはスケジュールを作成し、 AWS 所有のキーを使用して暗号化を適用できます。を使用すると AWS 所有のキー、 は AWS Key Management Service (AWS KMS) のリソース AWS を管理するため、 を操作するための追加のアクセス許可は必要ありません AWS KMS。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Action":
            [
                "scheduler:CreateSchedule"
            ],
            "Effect": "Allow",
            "Resource":
            [
                "arn:aws:scheduler:us-west-2:123456789012:schedule/{{my-group}}/{{my-schedule-name}}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::123456789012:role/*",
            "Condition": {
                "StringLike": {
                    "iam:PassedToService": "scheduler.amazonaws.com"
                }
            }
        }
    ]
}
```

------

 次のポリシーを使用して、プリンシパルがスケジュールを作成し、 AWS KMS カスタマーマネージドキーを暗号化に使用できるようにします。カスタマーマネージドキーを使用するには、プリンシパルにアカウントの AWS KMS リソースへのアクセス許可が必要です。このポリシーは、EventBridge スケジューラ上のデータを暗号化するために使用される単一の指定された KMS キーへのアクセスを許可します。または、ワイルドカード (`*`) 文字を使用して、アカウント内のすべてのキー、または特定の名前パターンに一致するサブセットへのアクセスを許可することもできます。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Action":
            [
                "scheduler:CreateSchedule"
            ],
            "Effect": "Allow",
            "Resource":
            [
            "arn:aws:scheduler:us-east-1:123456789012:schedule/{{my-group}}/{{my-schedule-name}}"
            ]
        },
        {
            "Action":
            [
                "kms:DescribeKey",
                "kms:GenerateDataKey",
                "kms:Decrypt"
            ],
            "Effect": "Allow",
            "Resource":
            [
                "arn:aws:kms:us-west-2:123456789012:key/my-key-id"
            ],
            "Condition": {
                "StringLike": {
                "kms:ViaService": "scheduler.us-east-1.amazonaws.com",
                    "kms:EncryptionContext:aws:scheduler:schedule:arn": "arn:aws:scheduler:us-west-2:123456789012:schedule/{{my-group}}/{{my-schedule-name}}"
            }
        }
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::123456789012:role/*",
            "Condition": {
                "StringLike": {
                    "iam:PassedToService": "scheduler.amazonaws.com"
                }
            }
        }
    ]
}
```

------

### 例: `GetSchedule`
<a name="security_iam_id-based-policies-customer-managed-policies-get-schedule"></a>

 以下のポリシーを使用して、プリンシパルがスケジュールに関する情報を取得できるようにします。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Action":
            [
                "scheduler:GetSchedule"
            ],
            "Effect": "Allow",
            "Resource":
            [
                "arn:aws:scheduler:us-west-2:123456789012:schedule/{{my-group}}/{{my-schedule-name}}"
            ]
        }
    ]
}
```

------

### 例: `UpdateSchedule`
<a name="security_iam_id-based-policies-customer-managed-policies-update-schedule"></a>

 以下のポリシーを使用して、プリンシパルが `scheduler:UpdateSchedule` アクションを呼び出してスケジュールを更新できるようにします。と同様に`CreateSchedule`、ポリシーは、スケジュールが暗号化に AWS KMS AWS 所有のキー を使用するか、カスタマーマネージドキーを使用するかによって異なります。で設定されたスケジュールの場合は AWS 所有のキー、次のポリシーを使用します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Action":
            [
                "scheduler:UpdateSchedule"
            ],
            "Effect": "Allow",
            "Resource":
            [
                "arn:aws:scheduler:us-west-2:123456789012:schedule/{{my-group}}/{{my-schedule-name}}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::123456789012:role/*",
            "Condition": {
                "StringLike": {
                    "iam:PassedToService": "scheduler.amazonaws.com"
                }
            }
        }
    ]
}
```

------

 カスタマーマネージドキーを使用して設定されたスケジュールの場合は、以下のポリシーを使用します。このポリシーには、プリンシパルがアカウントの AWS KMS リソースにアクセスできるようにする追加のアクセス許可が含まれています。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Action":
            [
                "scheduler:UpdateSchedule"
            ],
            "Effect": "Allow",
            "Resource":
            [
            "arn:aws:scheduler:us-east-1:123456789012:schedule/{{my-group}}/{{my-schedule-name}}"
    ]
        },
        {
            "Action":
            [
                "kms:DescribeKey",
                "kms:GenerateDataKey",
                "kms:Decrypt"
            ],
            "Effect": "Allow",
            "Resource":
            [
                "arn:aws:kms:us-west-2:123456789012:key/{{my-key-id}}"
            ],
            "Condition": {
                "StringLike": {
                "kms:ViaService": "scheduler.us-east-1.amazonaws.com",
                    "kms:EncryptionContext:aws:scheduler:schedule:arn": "arn:aws:scheduler:us-east-1:123456789012:schedule/{{my-group}}/{{my-schedule-name}}"
            }
        }
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::123456789012:role/*",
            "Condition": {
                "StringLike": {
                    "iam:PassedToService": "scheduler.amazonaws.com"
                }
            }
        }
    ]
}
```

------

### 例: `DeleteScheduleGroup`
<a name="security_iam_id-based-policies-customer-managed-policies-delete-schedule-group"></a>

 以下のポリシーを使用して、プリンシパルがスケジュールグループを削除できるようにします。グループを削除すると、そのグループに関連付けられているスケジュールも削除されます。グループを削除するプリンシパルには、そのグループに関連付けられているスケジュールも削除する権限が必要です。このポリシーは、指定されたスケジュールグループとグループ内のすべてのスケジュールに対して `scheduler:DeleteScheduleGroup` アクションを呼び出す権限をプリンシパルに付与します。

**注記**  
 EventBridge スケジューラは、個々のスケジュールにリソースレベルの権限を指定することをサポートしていません。例えば、次の記述は無効であり、ポリシーには含めないでください。  
 `"Resource": "arn:aws:scheduler:us-west-2:123456789012:schedule/{{my-group}}/{{my-schedule-name}}"` 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "scheduler:DeleteSchedule",
            "Resource": "arn:aws:scheduler:us-west-2:123456789012:schedule/{{my-group}}/*"
        },
        {
            "Effect": "Allow",
            "Action": "scheduler:DeleteScheduleGroup",
            "Resource": "arn:aws:scheduler:us-west-2:123456789012:schedule/{{my-group}}/*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::123456789012:role/*",
            "Condition": {
                "StringLike": {
                    "iam:PassedToService": "scheduler.amazonaws.com"
                }
            }
        }
    ]
}
```

------

## AWS マネージドポリシーの更新
<a name="security_iam_id-based-policies-updates"></a>


| 変更 | 説明 | 日付 | 
| --- | --- | --- | 
| [AmazonEventBridgeSchedulerFullAccess](#security_iam_id-based-policies-managed-policies) – 新しい管理ポリシー | EventBridge スケジューラは、スケジュールやスケジュールグループを含むすべてのリソースへのフルアクセスをユーザーに許可する新しいマネージドポリシーのサポートを追加しました。 | 2022 年 11 月 10 日 | 
| [AmazonEventBridgeSchedulerReadOnlyAccess](#security_iam_id-based-policies-managed-policies) – 新しい管理ポリシー | EventBridge スケジューラは、スケジュールやスケジュールグループを含むすべてのリソースへの読み取り専用アクセスをユーザーに許可する新しいマネージドポリシーのサポートを追加しました。 | 2022 年 11 月 10 日 | 
| [AmazonEventBridgeSchedulerReadOnlyAccess](#security_iam_id-based-policies-managed-policies) – 管理ポリシーの更新 | EventBridge スケジューラは、ワイルドカードアクション (`scheduler:List*` および `scheduler:Get*`) を使用するように`AmazonEventBridgeSchedulerReadOnlyAccess`管理ポリシーを更新し、新しい読み取り専用アクションが追加されてもポリシーが最新のままになるようにしました。 | 2026 年 3 月 25 日 | 
| EventBridge スケジューラが変更の追跡を開始 | EventBridge スケジューラは AWS 、管理ポリシーの変更の追跡を開始しました。 | 2022 年 11 月 10 日 | 