フォトシンス エンジニアブログ

株式会社Photosynth のテックブログです

AWS Control Tower でリージョン制限をしている環境で、Bedrock クロスリージョン(global)の推論プロファイルを使えるようにする

この記事は Akerun - Qiita Advent Calendar 2025 - Qiita の18日目の記事です。

皆さんこんにちは。フォトシンス エンジニアの ps-k-itoh - Qiita です。
フォトシンスで SREチームとして、SRE / AWS インフラ周りを担当しています。

1年間溜め込んだアウトプットのエナジーを、アドベントカレンダーの時期に一気に放出することに定評のある、
歳末大売り出し中な フォトシンス エンジニアブログ、
ここまで、SREチームの記事がなかったので、書きます。

Bedrock クロスリージョン(global)の推論プロファイルを使いたい

ある日、AI利用を推進する担当の部門からこんな問い合わせがありました。

「Claude Codeにて、最新モデル「Claude Opus 4.5」を使用しようとした際にSCP起因のエラーが発生しています。使えるようにできませんか?」

403 {"Message":"User: arn:aws:sts::xxxxxxxxxxxx:assumed-role/xxxxxxx/xxxxxx is not authorized to perform: bedrock:InvokeModel 
on resource: arn:aws:bedrock:::foundation-model/anthropic.claude-opus-4-5-20241201-v1:0 with an explicit deny in a service control policy"}

あー、Control Tower でリージョン制限しているからか。
といって、リージョン制限はセキュリティの観点から重要な設定なので外すわけにもいかず、何か回避方法あるかなと。

全体的なリージョン制限は維持しながら、Bedrockのクロスリージョン(グローバル)の推論プロファイルを使えるように

AWS公式のブログ記事を見つけました。

この記事の「オプション1」をもとに設定をしましたがうまくいかず、
いろいろと試行錯誤し、さらにAWSサポートへも問い合わせた結果、実現できました。
実施した設定を紹介します。

全リージョンControl Tower の管理対象内にし、「リージョン拒否コントロール」を無効化

私たちの環境では、元々「使ってよいリージョン以外のリージョンを Control Tower の管理対象外とする」ことで、リージョン制限を実現していました。
これを、一度すべて「管理対象」として登録し、「リージョン拒否コントロール」の無効化も行います。

まずは、AWS マネジメントコンソールの Control Tower のコンソールから「ランディングゾーン設定」を選択します。
「設定を変更する」ボタンをクリックします。

ランディングゾーン設定

設定のステップを進める中で「管理対象リージョン」を選択する箇所があるので、
全てのリージョンを選択して、管理対象とします。

追加リージョン

さらに、「リージョン拒否コントロール」を開き、「有効になっていません」を選択して次へ進みます。

リージョン拒否コントロール

そのまま設定を変更します。「ランディングゾーンの更新」ボタンをクリックしてランディングゾーンの更新も行います。

MULTISERVICE.PV.1 コントロールでリージョン制限する

Control Tower のコンソールから「Control Catalog」を選択します。
コントロールの検索フィールドに「MULTISERVICE.PV.1」と入力し、検索します。
表示された MULTISERVICE.PV.1 コントロールの名前のリンクをクリックします。

MULTISERVICEPV1

「コントロールを有効にする」ボタンをクリックします。

コントロールを有効にする

OUを選択するステップで、適用するOU(制限対象とするAWSアカウントが含まれるOU)を選択します。

OUを選択

リージョンアクセスを指定するステップで、利用を許可するリージョンを選択します。

利用を許可するリージョンを選択

サービスアクションを追加するステップで、NotActionsの追加フィールドに「bedrock:Invoke*」を入力し、追加します。

NotActions

そのままステップを進めて、コントロールを有効化します。

結果、エラーが解消された

以上の設定で、エラーが解消され、他リソース利用のリージョン制限についてもコントロールを用いて適用できました。

以上となります。
この記事が、何かのお役に立てれば幸いです。

フォトシンスのAWSマルチアカウントの管理、Control Tower や Organizations の運用には、 まだまだ改善の余地が多くあります。
プロダクトや組織の特性をふまえた、最適なマルチアカウント管理を目指し、日々楽しく取り組んでおります。


そんなわけで、一緒にAWS環境の改善、構築や運用を進めてくれる仲間を募集中です!
↓↓↓


株式会社フォトシンスでは、一緒にプロダクトを成長させる様々なレイヤのエンジニアを募集しています。
photosynth.co.jp

Akerunにご興味のある方はこちらから
akerun.com