This document outlines the specific IAM permissions required to deploy and operate each PDF accessibility solution.
- Amazon S3 - File storage and processing
- AWS Lambda - Serverless compute functions
- Amazon ECS - Containerized processing tasks
- Amazon ECR - Container image registry
- AWS Step Functions - Workflow orchestration
- Amazon EC2 - VPC and networking infrastructure
- AWS IAM - Role and policy management
- AWS CloudFormation - Infrastructure deployment
- Amazon Bedrock - AI/ML model access
- AWS Secrets Manager - Adobe API credentials storage
- Amazon CloudWatch - Monitoring and logging
- AWS Systems Manager - Parameter storage
{
"Sid": "S3FullAccess",
"Effect": "Allow",
"Action": ["s3:*"],
"Resource": "*"
}{
"Sid": "ECRFullAccess",
"Effect": "Allow",
"Action": ["ecr:*"],
"Resource": "*"
}{
"Sid": "LambdaFullAccess",
"Effect": "Allow",
"Action": ["lambda:*"],
"Resource": "*"
}{
"Sid": "ECSFullAccess",
"Effect": "Allow",
"Action": ["ecs:*"],
"Resource": "*"
}{
"Sid": "EC2FullAccess",
"Effect": "Allow",
"Action": ["ec2:*"],
"Resource": "*"
}{
"Sid": "StepFunctionsFullAccess",
"Effect": "Allow",
"Action": ["states:*"],
"Resource": "*"
}{
"Sid": "IAMFullAccess",
"Effect": "Allow",
"Action": ["iam:*"],
"Resource": "*"
}{
"Sid": "CloudFormationFullAccess",
"Effect": "Allow",
"Action": ["cloudformation:*"],
"Resource": "*"
}{
"Sid": "BedrockFullAccess",
"Effect": "Allow",
"Action": [
"bedrock:*",
"bedrock-data-automation:*",
"bedrock-data-automation-runtime:*"
],
"Resource": "*"
}{
"Sid": "CloudWatchLogsFullAccess",
"Effect": "Allow",
"Action": ["logs:*"],
"Resource": "*"
},
{
"Sid": "CloudWatchFullAccess",
"Effect": "Allow",
"Action": ["cloudwatch:*"],
"Resource": "*"
}{
"Sid": "SecretsManagerFullAccess",
"Effect": "Allow",
"Action": ["secretsmanager:*"],
"Resource": "*"
}{
"Sid": "STSAccess",
"Effect": "Allow",
"Action": [
"sts:GetCallerIdentity",
"sts:AssumeRole"
],
"Resource": "*"
}{
"Sid": "SSMParameterAccess",
"Effect": "Allow",
"Action": [
"ssm:GetParameter",
"ssm:GetParameters",
"ssm:PutParameter"
],
"Resource": "*"
}- Amazon S3 - File storage and processing
- AWS Lambda - Serverless compute functions
- Amazon ECR - Container image registry
- AWS IAM - Role and policy management
- AWS CloudFormation - Infrastructure deployment
- Amazon Bedrock - AI/ML model access and Data Automation
- Amazon CloudWatch - Monitoring and logging
- AWS Systems Manager - Parameter storage
{
"Sid": "S3FullAccess",
"Effect": "Allow",
"Action": ["s3:*"],
"Resource": "*"
}{
"Sid": "ECRFullAccess",
"Effect": "Allow",
"Action": ["ecr:*"],
"Resource": "*"
}{
"Sid": "LambdaFullAccess",
"Effect": "Allow",
"Action": ["lambda:*"],
"Resource": "*"
}{
"Sid": "IAMFullAccess",
"Effect": "Allow",
"Action": ["iam:*"],
"Resource": "*"
}{
"Sid": "CloudFormationFullAccess",
"Effect": "Allow",
"Action": ["cloudformation:*"],
"Resource": "*"
}{
"Sid": "BedrockFullAccess",
"Effect": "Allow",
"Action": [
"bedrock:*",
"bedrock-data-automation:*",
"bedrock-data-automation-runtime:*"
],
"Resource": "*"
}{
"Sid": "CloudWatchLogsFullAccess",
"Effect": "Allow",
"Action": ["logs:*"],
"Resource": "*"
}{
"Sid": "STSAccess",
"Effect": "Allow",
"Action": [
"sts:GetCallerIdentity",
"sts:AssumeRole"
],
"Resource": "*"
}{
"Sid": "SSMParameterAccess",
"Effect": "Allow",
"Action": [
"ssm:GetParameter",
"ssm:GetParameters",
"ssm:PutParameter"
],
"Resource": "*"
}- Bedrock: Full access for AI model inference
- S3: Read/write access to processing bucket
- Secrets Manager: Read access to Adobe API credentials
- S3: Read/write access to processing bucket
- Step Functions: Start execution permissions
- Bedrock: Full access for AI model inference
- CloudWatch: Metrics and logging permissions
- Secrets Manager: Read access to Adobe API credentials
- S3: Read/write access to processing bucket
- Bedrock: Full access including Data Automation
- CloudWatch: Logging permissions
- Adobe API credentials are stored securely in AWS Secrets Manager
- All S3 buckets use server-side encryption
- VPC configuration isolates ECS tasks in private subnets (PDF-to-PDF solution)
- CloudWatch logs capture all function executions
- CloudTrail can be enabled for API call auditing
- Custom CloudWatch dashboards provide operational visibility
- CDK Bootstrap Failures: Ensure CloudFormation and S3 permissions
- ECR Push Failures: Verify ECR repository permissions and Docker login
- Lambda Deployment Failures: Check Lambda and IAM role creation permissions
- Step Function Execution Failures: Verify Step Functions and ECS permissions
- Bedrock Access Denied: Ensure Bedrock model access is enabled in the console
Before deployment, verify your AWS credentials have the required permissions by running:
aws sts get-caller-identity
aws iam get-user
aws bedrock list-foundation-models --region your-region