Amazon Bedrock において、AWS Organizations アカウントの推論プロファイルを使用して複数 AWS リージョン内の基盤モデルを呼び出すと、"AccessDeniedException" エラーが発生します。
簡単な説明
"AccessDeniedException" エラーは、AWS Identity and Access Management (IAM) ロールには宛先リージョン内の API リクエストを呼び出す権限が欠けている場合に発生します。AWS Organizations のメンバーである AWS アカウントには、Amazon Bedrock サービスへのアクセスを制限するサービスコントロールポリシー (SCP) が適用されている可能性があります。この問題を解決するには、IAM ポリシーの権限を変更します。
解決策
前提条件: ソースリージョンからモデルアクセスをリクエストすること。
IAM ポリシーを変更する
SCP を更新し、次のいずれかのポリシーステートメント例を含めます。
注: 次のポリシーステートメントに含まれる aa-example-1、aa-example-2、aa-example-3 を目的のリージョンに置き換えてください。
Amazon Bedrock 以外の、指定したリージョンからの AWS サービスとリソースへのアクセスを拒否します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"NotAction": "bedrock:*",
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:RequestedRegion": [
"aa-example-1",
"aa-example-2",
"aa-example-3"
]
}
}
}
]
}
指定したリージョンの推論プロファイルを経由せずに、基盤モデルを呼び出すアクションを拒否します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream"
],
"Resource": "arn:aws:bedrock:*::foundation-model/*",
"Condition": {
"StringEquals": {
"aws:RequestedRegion": [
"aa-example-1",
"aa-example-2",
"aa-example-3"
]
},
"ArnNotLike": {
"bedrock:InferenceProfileArn": [
"arn:aws:bedrock:*:*:application-inference-profile/*",
"arn:aws:bedrock:*:*:inference-profile/*"
]
}
}
}
]
}
関連情報
Amazon Bedrock の ID ベースポリシー例
推論プロファイルの前提条件
Amazon Bedrock に最小権限アクセスを実装する
マルチアカウント環境で Amazon Bedrock のクロスリージョン推論を有効にする