Configurar políticas de bucket
Os recursos de gerenciamento de acesso do S3 permitem configurar regras de acesso de forma flexível para diferentes cenários. Abaixo estão alguns exemplos úteis de configuração de políticas de bucket do S3.
Restringir acesso apenas a HTTPS Copiar link
Para proteger a transmissão de dados, você pode restringir o acesso ao bucket apenas a conexões HTTPS. Isso impede tentativas de acesso usando requisições HTTP não seguras, reduzindo o risco de comprometimento dos dados.
-
Crie um arquivo de política chamado
ssl.json:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::<bucket_name>/*",
"Condition": {
"Bool": {
"aws:SecureTransport": "false"
}
}
}
]
}-
Aplique a política usando o seguinte comando:
aws s3api put-bucket-policy --bucket <bucket_name> --policy file://ssl.json --endpoint-url https://s3.hmstorage.netAgora, qualquer requisição HTTP retornará um erro 403.
Restringir acesso por endereços IP Copiar link
Para aumentar a segurança, você pode limitar o acesso ao bucket a endereços IP específicos. Isso é útil para proteger dados contra acesso externo não autorizado.
-
Crie um arquivo de política chamado
ip.json:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::<bucket_name>/*",
"Condition": {
"IpAddress": {
"aws:SourceIp": [
"<IP_address>"
]
}
}
}
]
}-
Aplique a política usando o seguinte comando:
aws s3api put-bucket-policy --bucket <bucket_name> --policy file://ip.json --endpoint-url https://s3.hmstorage.netConceder acesso a um prefixo específico Copiar link
Se você precisar fornecer acesso a objetos específicos em um bucket, como arquivos dentro de um determinado prefixo, use a política a seguir. Isso é ideal para buckets privados quando você quer permitir acesso apenas a dados específicos.
-
Crie um arquivo de política chamado
prefix.json:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::<bucket_name>/html/*"
}
]
}-
Aplique a política usando o seguinte comando:
aws s3api put-bucket-policy --bucket <bucket_name> --policy file://prefix.json --endpoint-url https://s3.hmstorage.netAgora, todos os arquivos sob o prefixo /html estarão acessíveis para leitura.