コンテンツにスキップ

必要なIAM権限

デプロイするIAMユーザーまたはロールには、複数のAWSサービスにわたるリソースの作成と管理の権限が必要です。以下はデプロイに必要な最小IAM権限です。

サービスアクション用途
CloudFormationcloudformation:*CDKスタックデプロイ
IAMiam:*Lambda、ECS、Step Functionsなどのロール/ポリシー作成
SSMssm:GetParameter, ssm:PutParameter, ssm:DeleteParameterスタック間リソース参照
KMSkms:Create*, kms:Describe*, kms:Enable*, kms:List*, kms:Put*, kms:GenerateDataKey*, kms:DecryptS3、DynamoDB、SQS暗号化
CloudWatchcloudwatch:*, logs:*モニタリング、アラーム、ロググループ
サービスアクション用途
EC2ec2:*VPC、サブネット、NATゲートウェイ、セキュリティグループ、VPCエンドポイント
ELBelasticloadbalancing:*バックエンド用Private ALB
サービスアクション用途
Lambdalambda:*すべてのLambda関数およびレイヤー
ECSecs:*バックエンドFargateサービス
ECRecr:*LambdaおよびECSコンテナイメージ
CodeBuildcodebuild:*Rust Lambdaビルド(cargo-lambda)
Step Functionsstates:*ドキュメント分析ワークフロー
サービスアクション用途
S3s3:*, s3express:*ドキュメントストレージ、LanceDB、セッション、フロントエンドホスティング
DynamoDBdynamodb:*ワークフロー状態、バックエンドデータ
ElastiCacheelasticache:*WebSocket接続用Redis
Neptuneneptune-db:*, rds:*ナレッジグラフデータベース
サービスアクション用途
Bedrockbedrock:*Claude、Nova Embed、Cohere Rerank、BDA
Bedrock AgentCorebedrock-agentcore:*IDP Agent、Voice Agent、WebCrawler Agent、MCP Gateway
SageMakersagemaker:*PaddleOCR GPUエンドポイント
Transcribetranscribe:*音声/動画の文字起こし
サービスアクション用途
API Gatewayapigateway:*, apigatewayv2:*REST、HTTP、WebSocket API
CloudFrontcloudfront:*フロントエンドCDN
Cognitocognito-idp:*, cognito-identity:*ユーザー/IDプール
サービスアクション用途
SQSsqs:*ワークフローキュー、LanceDBライター、グラフ削除
SNSsns:*OCR完了通知
EventBridgeevents:*S3アップロード検出、SFN障害キャッチ
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudformation:*",
"iam:*",
"ssm:*",
"kms:*",
"cloudwatch:*",
"logs:*",
"ec2:*",
"elasticloadbalancing:*",
"lambda:*",
"ecs:*",
"ecr:*",
"codebuild:*",
"states:*",
"s3:*",
"s3express:*",
"dynamodb:*",
"elasticache:*",
"neptune-db:*",
"rds:*",
"bedrock:*",
"bedrock-agentcore:*",
"sagemaker:*",
"transcribe:*",
"apigateway:*",
"apigatewayv2:*",
"cloudfront:*",
"cognito-idp:*",
"cognito-identity:*",
"sqs:*",
"sns:*",
"events:*",
"sts:*",
"application-autoscaling:*",
"aws-marketplace:Subscribe",
"aws-marketplace:Unsubscribe",
"aws-marketplace:ViewSubscriptions"
],
"Resource": "*"
}
]
}

このポリシーはサービスレベルのワイルドカードを使用しています。本番環境ではResourceを特定のARNに制限することを推奨します。

2025年9月より、Amazon Bedrockはすべてのサーバーレス基盤モデルへのアクセスを自動的に有効化します。Bedrockコンソールで手動でモデルを有効化する必要はなくなり、IAMポリシーとSCPでアクセスを制御します。

  • サードパーティモデル(Anthropic、Cohereなど):IAMロールにAWS Marketplace権限(aws-marketplace:Subscribeaws-marketplace:Unsubscribeaws-marketplace:ViewSubscriptions)が必要です。初回呼び出し時にBedrockがバックグラウンドで自動サブスクリプションします(最大15分)。
  • Anthropicモデル:初回呼び出し前にBedrockコンソールまたはPutUseCaseForModelAccess APIで**FTU(First Time Use)**フォームを1回提出する必要があります。
モデルモデルID用途
Claude Sonnet 4.6anthropic.claude-sonnet-4-6セグメント分析、ドキュメント要約、Webクローラー
Claude Haiku 4.5anthropic.claude-haiku-4-5-20251001-v1:0検索要約、説明、抽出
Amazon Nova Embedamazon.nova-2-multimodal-embeddings-v1:0ベクトル埋め込み (1024d)
Amazon Nova Lite 2amazon.nova-2-lite-v1:0動画スクリプト抽出

特定モデルへのアクセスを拒否するにはIAMポリシーを使用します:

{
"Effect": "Deny",
"Action": ["bedrock:*"],
"Resource": ["arn:aws:bedrock:*::foundation-model/<model-id>"]
}

アカウントによってはLambdaクォータが制限されており、デプロイまたは実行時に問題が発生する場合があります。Service Quotasダッシュボードで現在の値を確認してください。

クォータデフォルト上限必要値備考
Lambda関数メモリ10,240 MB(一部の新規アカウント: 3,008 MB)2,048 MBRust PaddleOCR Lambdaに必要。一部の新規アカウントは使用量に応じて自動増加、手動申請不可
Lambda同時実行数リージョンあたり1,000(低く設定されている場合あり)1,000Service Quotasで増加リクエスト可能。反映まで最大1日

詳細はFAQを参照してください。

初回デプロイ前にCDKブートストラップが必要です:

Terminal window
npx cdk bootstrap aws://{ACCOUNT_ID}/{REGION}

CDKブートストラップはデプロイ時に使用するS3バケットとIAMロールを作成します。ブートストラップユーザーには追加で以下の権限が必要です:

  • cloudformation:CreateStack
  • s3:CreateBucket
  • iam:CreateRole, iam:AttachRolePolicy
  • ecr:CreateRepository
  • ssm:PutParameter