Skip to content

Storage: S3-Compatible

Summary

Common compatible providers include AWS S3 and other S3-compatible object storage services.

Outcome

After completing this guide, SkyCMS will store media and published artifacts in the configured S3-compatible bucket using the supplied credentials and endpoint.

Steps

  1. Set ConnectionStrings__StorageConnectionString in appsettings.json or as an environment variable with your bucket name, region, access key ID, and secret access key.
  2. Set AzureBlobStorageEndPoint to the public URL from which storage objects are served.
  3. Start or restart SkyCMS to load the new settings.
  4. Upload a test file and confirm it is accessible at the expected public URL.
  5. Verify operations using the checklist below.

Required settings

  • bucket name,
  • region,
  • access key ID,
  • secret access key,
  • optional endpoint override for non-AWS providers.

Example configuration

Use environment variables and secret stores for credentials. Keep keys scoped to required bucket operations only.

Validation checklist

  • upload, read, and delete operations succeed,
  • publish output is written to expected bucket paths,
  • region and endpoint values match the active provider,
  • IAM and bucket policies permit required operations.

Common pitfalls

  • wrong region or endpoint causing auth or signature errors,
  • insufficient IAM rights to read, write, or delete objects,
  • bucket policy blocking server-side operations.