翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon EventBridge Scheduler のセットアップ
スケ EventBridge ジューラを使用する前に、次のステップを完了する必要があります。
にサインアップする AWS
がない場合は AWS アカウント、次のステップを実行して作成します。
にサインアップするには AWS アカウント
オンラインの手順に従います。
サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。
にサインアップすると AWS アカウント、 AWS アカウントのルートユーザー が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。
IAM ユーザーを作成する
管理者ユーザーを作成するには、以下のいずれかのオプションを選択します。
管理者を管理する方法を 1 つ選択します | 目的 | 方法 | 以下の操作も可能 |
---|---|---|---|
IAM Identity Center 内 (推奨) |
短期の認証情報を使用して AWSにアクセスします。 これはセキュリティのベストプラクティスと一致しています。ベストプラクティスの詳細については、「 IAMユーザーガイド」の「 のセキュリティのベストプラクティスIAM」を参照してください。 |
AWS IAM Identity Center ユーザーガイドの「開始方法」の手順に従います。 | AWS Command Line Interface ユーザーガイドの を使用する AWS CLI ように を設定 AWS IAM Identity Centerして、プログラムによるアクセスを設定します。 |
IAM 内 (非推奨) |
長期認証情報を使用して AWSにアクセスする。 | 「 ユーザーガイド」の「緊急アクセス用の IAM ユーザーを作成する」の手順に従います。 IAM | IAM ユーザーガイドのIAM「ユーザーのアクセスキーを管理する」でプログラムによるアクセスを設定します。 |
マネージドポリシーを使用する
前のステップでは、 AWS リソースにアクセスするための認証情報を使用して IAM ユーザーを設定します。ほとんどの場合、スケ EventBridge ジューラを安全に使用するには、ス EventBridge ケジューラを使用するために必要なアクセス許可のみを持つ個別のユーザー、グループ、またはロールを作成することをお勧めします。 EventBridge スケジューラは、一般的なユースケースで次の管理ポリシーをサポートしています。
-
AmazonEventBridgeSchedulerFullAccess – コンソールと を使用してスケ EventBridge ジューラへのフルアクセスを許可しますAPI。
-
AmazonEventBridgeSchedulerReadOnlyAccess – スケ EventBridge ジューラへの読み取り専用アクセスを許可します。
これらの管理ポリシーは、前のステップでAdministratorAccess
ポリシーをアタッチしたのと同じ方法でIAMプリンシパルにアタッチできます。ID ベースのIAMポリシーを使用してスケ EventBridge ジューラへのアクセスを管理する方法の詳細については、「」を参照してくださいス EventBridge ケジューラでのアイデンティティベースのポリシーの使用。
実行ロールを設定する
実行ロールは、ユーザーに代わって他の とやり取りするためにスケ EventBridge ジューラが引き受ける IAMロール AWS のサービス です。このロールにアクセス許可ポリシーをアタッチして、ターゲットを呼び出すアクセス許可をスケ EventBridge ジューラに付与します。
コンソールを使用して新しいスケジュールを作成するときに、新しい実行ロールを作成することもできます。コンソールを使用する場合、スケ EventBridge ジューラは選択したターゲットに基づいてアクセス許可を持つロールをユーザーに代わって作成します。ス EventBridge ケジューラがロールを作成すると、ロールの信頼ポリシーには、ユーザーに代わってロールを引き受けることができるプリンシパルを制限する条件キーが含まれます。これにより、混乱した代理のセキュリティ問題を防ぐことができます。
次の手順では、新しい実行ロールを作成する方法と、ターゲットを呼び出すためのアクセス許可をスケ EventBridge ジューラに付与する方法について説明します。このトピックでは、一般的なテンプレート化されたターゲットの権限について説明します。他のターゲットに権限を追加する方法については、「ス EventBridge ケジューラでのテンプレート化されたターゲットの使用」を参照してください。
を使用して実行ロールを作成するには AWS CLI
-
次のロール継承JSONポリシーをコピーし、 としてローカルに保存します
Scheduler-Execution-Role.json
。この信頼ポリシーにより、スケ EventBridge ジューラはユーザーに代わってロールを引き受けることができます。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
重要
実稼働環境で実行ロールを設定する場合は、混乱した代理の問題を防ぐための追加の保護手段を導入することをお勧めします。詳細およびポリシーの例については、「ス EventBridge ケジューラでの混乱した代理の防止」を参照してください。
-
AWS Command Line Interface (AWS CLI) から、次のコマンドを入力して新しいロールを作成します。
をこのロールに割り当てる名前に置き換えます。SchedulerExecutionRole
$
aws iam create-role --role-name
SchedulerExecutionRole
--assume-role-policy-document file://Scheduler-Execution-Role.json成功すると、 次の出力が表示されます。
{ "Role": { "Path": "/", "RoleName": "Scheduler-Execution-Role", "RoleId": "BR1L2DZK3K4CTL5ZF9EIL", "Arn": "arn:aws:iam::123456789012:role/SchedulerExecutionRole", "CreateDate": "2022-03-10T18:45:01+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } } }
-
スケ EventBridge ジューラがターゲットを呼び出すことを許可する新しいポリシーを作成するには、次のいずれかの一般的なターゲットを選択します。アクセスJSON許可ポリシーをコピーし、ローカルに
.json
ファイルとして保存します。 -
次のコマンドを実行して、新しいアクセス許可ポリシーを作成します。
をこのポリシーに割り当てる名前に置き換えます。PolicyName
$
aws iam create-policy --policy-name
PolicyName
--policy-document file://PermissionPolicy.json成功すると、次の出力が表示されます。ポリシー を書き留めますARN。次のステップARNでこれを使用して、ポリシーを実行ロールにアタッチします。
{ "Policy": { "PolicyName": "PolicyName", "CreateDate": "2022-03-015T19:31:18.620Z", "AttachmentCount": 0, "IsAttachable": true, "PolicyId": "ZXR6A36LTYANPAI7NJ5UV", "DefaultVersionId": "v1", "Path": "/", "Arn": "arn:aws:iam::123456789012:policy/PolicyName", "UpdateDate": "2022-03-015T19:31:18.620Z" } }
-
次のコマンドを実行して、ポリシーを実行ロールにアタッチします。を、前のステップで作成したポリシーARNの
に置き換えます。your-policy-arn
を実行ロールの名前に置き換えます。SchedulerExecutionRole
$
aws iam attach-role-policy --policy-arn
your-policy-arn
--role-nameSchedulerExecutionRole
attach-role-policy
オペレーションはコマンドラインにレスポンスを返しません。
ターゲットをセットアップする
スケ EventBridge ジューラのスケジュールを作成する前に、スケジュールが呼び出すターゲットが少なくとも 1 つ必要です。既存のリソースを使用するか、新しい AWS リソースを作成できます。次の手順は、 を使用して新しい標準 Amazon SQSキューを作成する方法を示しています AWS CloudFormation。
新しい Amazon SQSキューを作成するには
-
次のJSON AWS CloudFormation テンプレートをコピーし、 としてローカルに保存します
SchedulerTargetSQS.json
。{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MyQueue": { "Type": "AWS::SQS::Queue", "Properties": { "QueueName": "
MyQueue
" } } }, "Outputs": { "QueueName": { "Description": "The name of the queue", "Value": { "Fn::GetAtt": [ "MyQueue", "QueueName" ] } }, "QueueURL": { "Description": "The URL of the queue", "Value": { "Ref": "MyQueue" } }, "QueueARN": { "Description": "The ARN of the queue", "Value": { "Fn::GetAtt": [ "MyQueue", "Arn" ] } } } } -
から次のコマンドを実行して AWS CLI、
Scheduler-Target-SQS.json
テンプレートから AWS CloudFormation スタックを作成します。$
aws cloudformation create-stack --stack-name
Scheduler-Target-SQS
--template-body file://Scheduler-Target-SQS.json成功すると、次の出力が表示されます。
{ "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/Scheduler-Target-SQS/1d2af345-a121-12eb-abc1-012e34567890" }
-
次のコマンドを実行して、 AWS CloudFormation スタックの概要情報を表示します。この情報には、スタックの状態とテンプレートで指定されている出力が含まれます。
$
aws cloudformation describe-stacks --stack-name
Scheduler-Target-SQS
成功すると、コマンドは Amazon SQSキューを作成し、次の出力を返します。
{ "Stacks": [ { "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/Scheduler-Target-SQS/1d2af345-a121-12eb-abc1-012e34567890", "StackName": "Scheduler-Target-SQS", "CreationTime": "2022-03-17T16:21:29.442000+00:00", "RollbackConfiguration": {}, "StackStatus": "CREATE_COMPLETE", "DisableRollback": false, "NotificationARNs": [], "Outputs": [ { "OutputKey": "QueueName", "OutputValue": "MyQueue", "Description": "The name of the queue" }, { "OutputKey": "QueueARN", "OutputValue": "arn:aws:sqs:us-west-2:123456789012:MyQueue", "Description": "The ARN of the queue" }, { "OutputKey": "QueueURL", "OutputValue": "https://sqs.us-west-2.amazonaws.com/123456789012/MyQueue", "Description": "The URL of the queue" } ], "Tags": [], "EnableTerminationProtection": false, "DriftInformation": { "StackDriftStatus": "NOT_CHECKED" } } ] }
このガイドの後半では、 の値を使用してキューをスケ EventBridge ジューラのターゲットとして
QueueARN
設定します。
次のステップ
セットアップステップが完了したら、開始方法ガイドを使用して最初のス EventBridge ケジューラスケジューラを作成し、ターゲットを呼び出します。