Configurar CORS
Ao usar arquivos de buckets S3 em recursos externos, como um site, você pode encontrar um erro de CORS (Cross-Origin Resource Sharing). Esse erro ocorre quando o navegador bloqueia requisições entre origens diferentes para os recursos do seu bucket.
Para resolver esse problema, é necessário configurar regras específicas de CORS para o bucket, permitindo requisições de outras origens. Você pode configurar o CORS no painel de controle da Hostman ou via AWS CLI.
Configurar no Painel de Controle Copiar link
-
Vá até a seção Armazenamento S3 e clique no bucket desejado.
-
Na aba Configurações, clique em Alterar ao lado do parâmetro CORS.

-
Preencha os parâmetros necessários para a regra de CORS:
-
- Allowed Origins: Especifica as origens de onde as requisições para o bucket são permitidas. Exemplo:
https://example.com. Você pode usar*para permitir requisições de todos os domínios. - Allowed Methods: Define os métodos HTTP permitidos para requisições CORS.
- Allowed Headers: Especifica os cabeçalhos permitidos nas requisições. Exemplo:
Authorization,Content-Type. Você pode usar*para permitir todos os cabeçalhos. - Expose Headers: Lista de cabeçalhos que estarão acessíveis ao cliente na resposta. Por padrão, o acesso a alguns cabeçalhos é bloqueado pelo navegador. Exemplo:
ETag,x-amz-meta-custom-header. - Max Age Seconds: Define o tempo, em segundos, em que os resultados das requisições CORS podem ser armazenados em cache pelo cliente. Exemplo:
3600(1 hora).
- Allowed Origins: Especifica as origens de onde as requisições para o bucket são permitidas. Exemplo:
Você pode criar múltiplas regras (por exemplo, permitir métodos diferentes para origens diferentes) clicando em Adicionar regra.

-
Salve as alterações clicando em Salvar.
Configurar via AWS CLI Copiar link
Veja como configurar CORS para um bucket S3 usando a ferramenta AWS CLI.
Criar um arquivo de regras CORS Copiar link
Primeiro, crie um arquivo cors.json com a configuração de CORS desejada. Este arquivo permitirá requisições GET e HEAD aos objetos do bucket. Exemplo:
{
"CORSRules": [
{
"AllowedHeaders": ["*"],
"AllowedMethods": ["GET", "HEAD"],
"AllowedOrigins": ["*"]
}
]
}-
AllowedMethods: Especifica os métodos HTTP permitidos. Neste exemplo, GET e HEAD estão autorizados. -
AllowedOrigins:*significa que requisições são permitidas de qualquer domínio. Para restringir o acesso a um domínio específico, substitua o asterisco pelo nome do domínio. Por exemplo, se seu site estiver hospedado emhttps://example.com, substitua a linha por:
"AllowedOrigins": ["https://example.com"]Enviar regras CORS para o bucket Copiar link
Após criar o arquivo de regras CORS, envie-o para o bucket usando o comando:
aws s3api put-bucket-cors --bucket <bucket_name> --endpoint-url https://s3.hmstorage.net --cors-configuration file://cors.jsonSubstitua <bucket_name> pelo nome do seu bucket.
Verificar regras CORS Copiar link
Para confirmar que as regras CORS foram aplicadas corretamente, use o comando:
aws s3api get-bucket-cors --bucket <bucket_name> --endpoint-url https://s3.hmstorage.netExcluir regras CORS Copiar link
Se for necessário remover as regras atuais, execute o comando:
aws s3api delete-bucket-cors --bucket <bucket_name> --endpoint-url https://s3.hmstorage.netEste comando excluirá todas as regras CORS existentes para o bucket.