aws-samples / generative-ai-use-cases-jp

すぐに業務活用できるビジネスユースケース集付きの安全な生成AIアプリ実装
MIT No Attribution
637 stars 115 forks source link

複数リージョンに deploy すると WebSearchAgentStack で IAMロール AmazonBedrockExecutionRoleForAgents_SearchEngine の重複エラーが発生する #500

Open r3-yamauchi opened 4 months ago

r3-yamauchi commented 4 months ago

AmazonBedrockExecutionRoleForAgents_SearchEngine ロールや このロールのインラインポリシーである BedrockAgentBedrockModelPolicy と BedrockAgentS3BucketPolicy の作成時に 既に存在している旨のエラーが発生します。

AmazonBedrockExecutionRoleForAgents_SearchEngine ロールを削除してから deploy すればエラーは生じませんが、 BedrockAgentS3BucketPolicy に 先に deploy 済みリージョンの websearchagentstack-agentbucket へのアクセス権を追加し直す手間が生じます。

各リージョン用にロールを分けて作成していただくのが良いのでないかと思います。

kazuhitogo commented 4 months ago

ありがとうございます。内部で検討します。 とりいそぎお困りのようでしたら、衝突するポリシーやロールの部分にリージョン名をprefixとして追加していただければ回避できるかと思います。 roleName: 'AmazonBedrockExecutionRoleForAgents_SearchEngine', を 事前にconst region: string = cdk.Stack.of(this).region;等でリージョンを取得しておいた上で、 roleName: 'AmazonBedrockExecutionRoleForAgents_SearchEngine_{$region}', とするなどのイメージです。