Step Functions での他の AWS アカウント のリソースへのアクセス - AWS Step Functions

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

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 サフィックスを追加します。

クロスアカウントリソースの呼び出し

ワークフローで、クロスアカウントリソースを呼び出すには次の操作を行います。

  1. リソースを含む IAMロールをターゲットアカウントに作成します。このロールは、ステートマシンを含むソースアカウントに、ターゲットアカウントのリソースにアクセスするアクセス許可を付与します。

  2. Task 状態の定義で、クロスアカウントリソースを呼び出す前に、ステートマシンが引き受けるターゲットIAMロールを指定します。

  3. ターゲットIAMロールの信頼ポリシーを変更して、ソースアカウントがこのロールを一時的に引き受けることを許可します。信頼ポリシーには、ソースアカウントで定義されたステートマシンの Amazon リソースネーム (ARN) を含める必要があります。また、 AWS リソースを呼び出すための適切なアクセス許可をターゲットIAMロールに定義します。

  4. ソースアカウントの実行ロールを更新して、ターゲットIAMロールを引き受けるために必要なアクセス許可を含めます。

例については、チュートリアル: Step Functions でのクロスアカウント AWS リソースへのアクセスを参照してください。

注記

複数の からリソースにアクセスするための IAMロールを引き受けるようにステートマシンを設定できます AWS アカウント。ただし、ステートマシンは一度に 1 つのIAMロールのみを引き受けることができます。

クロスアカウントリソースへのアクセス概念図