remotion-dev/remotion · error · Error
Since April 2023, more AWS permissions are required to creat
Error message
Since April 2023, more AWS permissions are required to create an S3 bucket. You need to update your user policy to continue. See https://remotion.dev/docs/lambda/s3-public-access for instructions on how to resolve this issue.
What it means
While creating a bucket, Remotion calls DeleteBucketOwnershipControls to disable Object Writer ownership so ACLs can be used. If that call is denied (error message contains 'Access Denied'), the IAM user lacks s3:PutBucketOwnershipControls. Since April 2023 AWS requires these extra permissions to fully configure a bucket, so the client surfaces a dedicated, link-bearing message.
Source
Thrown at packages/lambda-client/src/create-bucket.ts:38
new CreateBucketCommand({
Bucket: bucketName,
}),
);
try {
await getS3Client({
region,
customCredentials: null,
forcePathStyle,
requestHandler,
}).send(
new DeleteBucketOwnershipControlsCommand({
Bucket: bucketName,
}),
);
} catch (err) {
if ((err as Error).message.includes('Access Denied')) {
throw new Error(
'Since April 2023, more AWS permissions are required to create an S3 bucket. You need to update your user policy to continue. See https://remotion.dev/docs/lambda/s3-public-access for instructions on how to resolve this issue.',
);
}
throw err;
}
try {
await getS3Client({
region,
customCredentials: null,
forcePathStyle,
requestHandler,
}).send(
new DeletePublicAccessBlockCommand({
Bucket: bucketName,
}),
);View on GitHub (pinned to 78fe4bb3fd)
Solutions
- Attach the current recommended Remotion IAM policy (linked in the message) which includes s3:PutBucketOwnershipControls, s3:PutBucketPublicAccessBlock, s3:PutBucketPolicy, s3:PutBucketAcl
- Re-run the bucket creation once the policy is updated
Defensive patterns
Strategy: try-catch
Try / catch
try {
await getOrCreateBucket({...});
} catch (err) {
if ((err as Error).message.includes('more AWS permissions are required to create an S3 bucket')) {
// update IAM policy per https://remotion.dev/docs/lambda/s3-public-access
}
throw err;
} Prevention
- Attach the current recommended Remotion IAM policy before first bucket creation
- Audit the IAM policy for s3:PutBucketOwnershipControls / PutBucketPublicAccessBlock / PutBucketPolicy / PutBucketAcl
- Re-test bucket creation in a scratch account after policy changes
When it happens
Trigger: getOrCreateBucket / createBucket invoked with an IAM user whose policy lacks s3:PutBucketOwnershipControls.
Common situations: Pre-April-2023 IAM policy still attached; minimal hand-rolled policy; corporate restricted policy.
Related errors
- PARTIAL SUCCESS: The s3:PutBucketOwnershipControls was found
- You don't have the required permissions to create lifecycle
- You don't have the required permissions to delete lifecycle
- Bucket owner mismatch: Expected the bucket ${bucketName} to
- Unable to access item "${objectKey}" from bucket "${bucketNa
AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12).
Data as JSON: /api/errors/eb6dccffc3ccc59c.
Report an issue: GitHub.