Amazon S3 storage
Configure Casdoor to store files (e.g. avatars) in Amazon S3.
1. Create credentials
Create and save an access key and secret access key in the AWS console. See Managing access keys.
2. Configure the bucket
- In the bucket Permissions, turn off “Block all public access” (or configure a policy that allows Casdoor) and save.
- In Object Ownership, enable ACLs and set ownership as needed.

3. Add the provider in Casdoor
| Casdoor field | In AWS / S3 | Required |
|---|---|---|
| Client ID | Access key | Yes |
| Client secret | Secret access key | Yes |
| Endpoint | Endpoint | Yes |
| Endpoint (intranet) | VPC endpoint | No |
| Bucket | Bucket name | Yes |
| Path prefix | — | No |
| Domain | CloudFront domain | No |
| Region ID | AWS region | Yes |
Endpoint format: Website endpoints.

Optional
- VPC access: Access AWS services through AWS PrivateLink.
- CloudFront: Create a distribution, then set Domain in the provider to the distribution domain.
