翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Step Functions での他の AWS アカウント のリソースへのアクセス
Step Functions は、ワークフロー AWS アカウント のさまざまな で設定されたリソースへのクロスアカウントアクセスを提供します。Step Functions サービス統合を使用すると、 AWS リソースベースのポリシーやクロスアカウント呼び出しをサポート AWS サービス していない場合でも、クロスアカウントリソースを呼び出すことができます。
例えば、開発とテスト AWS アカウントという 2 つの を同じ に所有しているとします AWS リージョン。クロスアカウントアクセスを使用すると、「Development」アカウントのワークフローは、「Testing」アカウントで使用可能な Amazon S3 バケット、Amazon DynamoDB テーブル、Lambda 関数などのリソースにアクセスできます。
重要
IAM ロールとリソースベースのポリシーは、単一のパーティション内でのみアカウント間のアクセスを委任します。例えば、標準 aws
パーティションの米国西部 (北カリフォルニア)と、aws-cn
パーティションの中国 (北京) にアカウントがあるとします。中国 (北京) アカウントの Amazon S3 リソースベースのポリシーを使用して、標準 aws
アカウントのユーザーにアクセスを許可することはできません。
クロスアカウントアクセスの詳細については、「 ユーザーガイド」の「クロスアカウントポリシーの評価ロジックIAM」を参照してください。
各 AWS アカウント は独自のリソースを完全に制御しますが、Step Functions を使用すると、コードをカスタマイズしなくてもワークフロー内のステップを再編成、スワップ、追加、または削除できます。これは、プロセスが変わったりアプリケーションが進化したりしても可能です。
また、ネストしたステートマシンの実行を呼び出して、さまざまなアカウントで利用可能にすることもできます。これにより、ワークフローを効率的に分離して切り離すことができます。異なるアカウントの別の Step Functions ワークフローにアクセスするワークフローの中で、.sync サービス統合パターンを使用する場合、Step Functions のポーリングは自身の割り当てクオータを消費します。詳細については、「ジョブの実行 (.sync)」を参照してください。
注記
現在、クロスリージョン AWS SDK統合とクロスリージョン AWS リソースアクセスは Step Functions では使用できません。
このトピックの主要概念
- 実行ロール
-
Step Functions がコードを実行し、 AWS Lambda 関数の呼び出しアクションなどの AWS リソースにアクセスするために使用するIAMロール。
- サービス統合
-
ワークフロー内の
Task
状態内から呼び出すことができる AWS SDK統合APIアクション。 - ソースアカウント
ステートマシン AWS アカウント を所有し、実行を開始した 。
- ターゲットアカウント
クロスアカウント呼び出し AWS アカウント を行う 。
- ターゲットロール
ターゲットアカウントが所有するリソースを呼び出すためにステートマシンが引き受けるターゲットアカウントのIAMロール。
- ジョブの実行 (.sync)
などの サービスを呼び出すために使用されるサービス統合パターン AWS Batch。またこれにより、 Step Functions のステートマシンはジョブの完了まで待機してから次の状態に進みます。Step Functions の待機を指示するには、
Task
状態のResource
フィールドに.sync
サフィックスを追加します。
クロスアカウントリソースの呼び出し
ワークフローで、クロスアカウントリソースを呼び出すには次の操作を行います。
リソースを含む IAMロールをターゲットアカウントに作成します。このロールは、ステートマシンを含むソースアカウントに、ターゲットアカウントのリソースにアクセスするアクセス許可を付与します。
Task
状態の定義で、クロスアカウントリソースを呼び出す前に、ステートマシンが引き受けるターゲットIAMロールを指定します。ターゲットIAMロールの信頼ポリシーを変更して、ソースアカウントがこのロールを一時的に引き受けることを許可します。信頼ポリシーには、ソースアカウントで定義されたステートマシンの Amazon リソースネーム (ARN) を含める必要があります。また、 AWS リソースを呼び出すための適切なアクセス許可をターゲットIAMロールに定義します。
ソースアカウントの実行ロールを更新して、ターゲットIAMロールを引き受けるために必要なアクセス許可を含めます。
例については、チュートリアル: Step Functions でのクロスアカウント AWS リソースへのアクセスを参照してください。
注記
複数の からリソースにアクセスするための IAMロールを引き受けるようにステートマシンを設定できます AWS アカウント。ただし、ステートマシンは一度に 1 つのIAMロールのみを引き受けることができます。