AWS S3: Criar política de proteção por IP ou Domínio

As políticas proverão uma camada de proteção de acordo com as configurações especificadas.

AWS S3: Criar política de proteção por IP ou Domínio
Gunnar Correa
Gunnar Correa
19/09/2026 3 minutos

É muito comum um Bucket na AWS S3 ter restrições de acesso específicas, afinal, nem tudo deve ter acesso público. Em alguns casos é possível criar uma URL pré-assinada, que fornece uma nova URL pública com tempo de expiração.

A seguir a gente vai ver como criar regras para restrição de recursos via IP e domínio. Ambos os casos podem ter infinitas utilidades, como permitir que apenas um serviços faça solicitação a recursos ou liberar um PDF apenas a usuários de um site.

Primeiramente, acesse o Bucket que você deseja criar a nova regra, por fim, clique na aba Permission. Agora você deve rolar a página até encontrar a seção Política do Bucket (Policy Bucket) e clicar no botão editar.

Restrição ao Bucket S3 na AWS.

Restrição ao S3 por range de IP

Agora você deve entrar com o JSON fornecido abaixo, alterando os campos listados para as suas configurações.

  • Id - (Identificador) Um identificador opcional para a sua política;
  • Sid - (Statement ID) é usado para atribuir um identificador exclusivo a uma declaração dentro da política. Cada declaração (Statement) em uma política precisa ter um Sid único. O Sid é útil quando você deseja referenciar ou modificar uma declaração específica em uma política;
  • Resource - Forneça o Arn do seu Bucket;
  • aws:SourceIp - Um array com range de IP. Caso necessário você pode colocar um ou vários.
json
{
	"Version": "2012-10-17",
	"Id": "Policy1700226459732",
	"Statement": [
		{
			"Sid": "Stmt1700226438722",
			"Effect": "Allow",
			"Principal": "*",
			"Action": "s3:*",
			"Resource": "arn:aws:s3:::YOUR_BUCKET_HERE/*",
			"Condition": {
				"IpAddress": {
					"aws:SourceIp": [
						"173.245.48.0/20",
						"103.21.244.0/22"
					]
				}
			}
		}
	]
}

Restrição ao S3 a nível de domínio

Por outro lado, a gente também pode fazer restrições a nível de domínio, ou seja, o recurso vai estar disponível apenas dentro do nosso site. Acessos direto ao recurso serão negados.

Seguindo o mesmo passo anterior, edite e insira a política abaixo, alterando os campos necessários.

Actions - Quais são as ações que poderão ser executadas;

Resource - Forneça o Arn do seu Bucket;

StringLike/aws:Referer - Um array contendo um ou vários domínios autorizados.

json
{
    "Version": "2012-10-17",
    "Id": "HTTPS Policy allow",
    "Statement": [
        {
            "Sid": "Allow get requests originating from www.satellasoft.com.",
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": "arn:aws:s3:::video-player-test-satellasoft/*",
            "Condition": {
                "StringLike": {
                    "aws:Referer": [
                        "https://satellasoft.com"
                    ]
                }
            }
        }
    ]
}

Para aplicar a regra acima, em alguns casos pode ser necessário revisar as políticas do Bucket.

Bloquear acesso público.

Nossos cursos

Nossos cursos
Gunnar Correa
Gunnar Correa

Deixe um comentário

Para deixar um comentário, é necessário estar autenticado. Crie uma conta gratuita na SatellaSoft.

Entrar ou Registrar-se