翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
実行ロールは、EventBridge スケジューラとやり取りし、Event Bridge スケジューラが FIS Experiment を開始するために が AWS FIS 引き受ける IAM ロールです。このロールに権限ポリシーをアタッチして、FIS Experiment を起動するためのアクセス権限を EventBridge スケジューラーに与えます。次のステップでは、EventBridge による実験の開始を許可する新しい実行ロールとポリシーの作成方法を説明します。
AWS CLI でスケジューラーロールを作成する
これは、Event Bridge がお客様に代わって実験をスケジュールするために必要な IAM ロールです。
-
次のロール JSON ポリシーを引き受けるためにコピーし、
fis-execution-role.json
という名前でローカルに保存します。この信頼ポリシーにより、EventBridge スケジューラーは、ユーザーに代わってロールを引き受けることができます。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
AWS コマンドラインインターフェイス (AWS CLI) を開き、次のコマンドを実行して新しいロールを作成します。
FisSchedulerExecutionRole
をこのロールに割り当てる名前に置き換えます。aws iam create-role --role-name FisSchedulerExecutionRole --assume-role-policy-document file://fis-execution-role.json
成功すると、 次の出力が表示されます。
{ "Role": { "Path": "/", "RoleName": "FisSchedulerExecutionRole", "RoleId": "AROAZL22PDN5A6WKRBQNU", "Arn": "arn:aws:iam::123456789012:role/FisSchedulerExecutionRole", "CreateDate": "2023-08-24T17:23:05+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } } }
-
EventBridge スケジューラ―が実験を呼び出すことを許可する新しいポリシーを作成するには、次の JSON をコピーして、ローカルに
fis-start-experiment-permissions.json
という名前で保存します。次のポリシーは、EventBridge スケジューラーが、ユーザーのアカウントですべての実験テンプレート上のfis:StartExperiment
アクションを呼び出すためのポリシーです。ロールを 1 つのテストテンプレートに限定したい場合は、"arn:aws:fis:*:*:experiment-template/*"
末尾にある*
を実験テンプレートの ID に置き換えてください。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": [ "arn:aws:fis:*:*:experiment-template/*", "arn:aws:fis:*:*:experiment/*" ] } ] }
-
次のコマンドを実行して、新しい権限ポリシーを作成します。
FisSchedulerPolicy
をこのポリシーに割り当てる名前に置き換えます。aws iam create-policy --policy-name FisSchedulerPolicy --policy-document file://fis-start-experiment-permissions.json
成功すると、次の出力が表示されます。ポリシーの ARN を書き留めておきます。この ARN を使用して、次のステップで、このポリシーを実行ロールにアタッチします。
{ "Policy": { "PolicyName": "FisSchedulerPolicy", "PolicyId": "ANPAZL22PDN5ESVUWXLBD", "Arn": "arn:aws:iam::123456789012:policy/FisSchedulerPolicy", "Path": "/", "DefaultVersionId": "v1", "AttachmentCount": 0, "PermissionsBoundaryUsageCount": 0, "IsAttachable": true, "CreateDate": "2023-08-24T17:34:45+00:00", "UpdateDate": "2023-08-24T17:34:45+00:00" } }
-
次のコマンドを実行して、ポリシーを実行ロールにアタッチします。
your-policy-arn
を、前のステップで作成したポリシーの ARN に置き換えます。FisSchedulerExecutionRole
を実行ロールの名前に置き換えます。aws iam attach-role-policy --policy-arn your-policy-arn --role-name FisSchedulerExecutionRole
attach-role-policy
オペレーションはコマンドラインにレスポンスを返しません。 -
特定のタグ値を持つ AWS FIS 実験テンプレートのみを実行するようにスケジューラを制限できます。例えば、次のポリシーでは、すべての AWS FIS 実験に対する アクセス
fis:StartExperiment
許可を付与しますが、スケジューラが というタグの付いた実験テンプレートのみを実行するように制限しますPurpose=Schedule
。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": "arn:aws:fis:*:*:experiment/*" }, { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": "arn:aws:fis:*:*:experiment-template/*", "Condition": { "StringEquals": { "aws:ResourceTag/Purpose": "Schedule" } } } ] }