Criar política de intervalo no intervalo AWS S3 com Python
A política de intervalo do intervalo s3 significa permissão e ação que pode ser aplicada ao intervalo específico. O AWS S3 tem uma política opcional que pode ser usada para restringir ou conceder acesso a um recurso de bucket do S3. É importante observar que as políticas de bucket são definidas no formato JSON.
Para criar uma política de intervalo em python, seguiremos as etapas abaixo:
- Etapa 1: a primeira etapa para criar uma política de intervalo é importar o boto3 do SDK do python. Isso nos fornecerá métodos pelos quais podemos acessar os recursos da AWS. E para o despejo de string de política, também precisamos importar JSON.
import json import boto3
- Etapa 2: A segunda etapa será a criação de uma string de política. A string de política é um dicionário de par de valores-chave. Em que a primeira chave será a versão. E a segunda chave será a instrução na primeira chave da instrução será o sid que armazenará como digitar a política que queremos adicionar. E a segunda chave será o Efeito que irá armazenar o status de acesso e a terceira chave será a permissão que irá armazenar quem tem permissão para acessar e a quarta chave será uma ação que irá determinar o tipo de operação que podemos realizar e a última parâmetro neste recurso no qual aplicaremos esta política.
Exemplo:
bucket_policy = { "Version": "2012-10-17", "Statement": [ { "Sid": "AddPerm", "Effect": "Allow", "Principal": "*", "Action": ["s3:*"], "Resource": ["arn:aws:s3:::gfgbucket/*"] } ] }
Etapa 3: a terceira etapa precisará converter a string de política do intervalo em JSON.
json.dumps(bucket_policy)
Etapa 4: a quarta etapa será colocar a política do intervalo no intervalo, precisamos chamar a função put_bucket_policy() . Essa função terá o primeiro parâmetro, o nome do intervalo, e o segundo parâmetro será a string da política.
put_bucket_policy(Bucket,policy)
Etapa 5: a última etapa será ir para AWS-> S3-> Bucket-> Permission-> Bucket policy e verificar .
Código completo:
import json
import boto3
BUCKET_NAME='gfgbucket'
def create_bucket_policy():
bucket_policy = {
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": "*",
"Action": ["s3:*"],
"Resource": ["arn:aws:s3:::gfgbucket/*"]
}
]
}
policy_string = json.dumps(bucket_policy)
s3_client().put_bucket_policy(
Bucket=BUCKET_NAME,
Policy=policy_string
)
Saída:
Atenção geek! Fortaleça suas bases com o Python Programming Foundation Course e aprenda o básico.
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva