Exemplos de controle do Amazon S3 usando AWS CLI - AWS SDKExemplos de código

Há mais AWS SDK exemplos disponíveis no GitHub repositório AWS Doc SDK Examples.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Exemplos de controle do Amazon S3 usando AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o controle do AWS Command Line Interface Amazon S3.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, é possível ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, onde você pode encontrar instruções sobre como configurar e executar o código no contexto.

Tópicos

Ações

O código de exemplo a seguir mostra como usar create-access-point.

AWS CLI

Para criar um ponto de acesso

O create-access-point exemplo a seguir cria um ponto de acesso com o nome finance-ap do bucket business-records na conta 123456789012. Antes de executar esse exemplo, substitua o nome do ponto de acesso, o nome do bucket e o número da conta pelos valores apropriados para seu caso de uso.

aws s3control create-access-point \ --account-id 123456789012 \ --bucket business-records \ --name finance-ap

Este comando não produz saída.

Para obter mais informações, consulte Criação de pontos de acesso no Guia do desenvolvedor do Amazon Simple Storage Service.

  • Para API obter detalhes, consulte CreateAccessPointna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar create-job.

AWS CLI

Para criar um trabalho de operações em lote do Amazon S3

O create-job exemplo a seguir cria um trabalho de operações em lote do Amazon S3 para marcar objetos como. confidential` in the bucket ``employee-records

aws s3control create-job \ --account-id 123456789012 \ --operation '{"S3PutObjectTagging": { "TagSet": [{"Key":"confidential", "Value":"true"}] }}' \ --report '{"Bucket":"arn:aws:s3:::employee-records-logs","Prefix":"batch-op-create-job", "Format":"Report_CSV_20180820","Enabled":true,"ReportScope":"AllTasks"}' \ --manifest '{"Spec":{"Format":"S3BatchOperations_CSV_20180820","Fields":["Bucket","Key"]},"Location":{"ObjectArn":"arn:aws:s3:::employee-records-logs/inv-report/7a6a9be4-072c-407e-85a2-ec3e982f773e.csv","ETag":"69f52a4e9f797e987155d9c8f5880897"}}' \ --priority 42 \ --role-arn arn:aws:iam::123456789012:role/S3BatchJobRole

Saída:

{ "JobId": "93735294-df46-44d5-8638-6356f335324e" }
  • Para API obter detalhes, consulte CreateJobna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar delete-access-point-policy.

AWS CLI

Para excluir uma política de ponto de acesso

O delete-access-point-policy exemplo a seguir exclui a política de ponto de acesso do ponto de acesso nomeado finance-ap na conta 123456789012. Antes de executar este exemplo, substitua o nome do ponto de acesso e o número da conta pelos valores apropriados para seu caso de uso.

aws s3control delete-access-point-policy \ --account-id 123456789012 \ --name finance-ap

Este comando não produz saída.

Para obter mais informações, consulte Gerenciamento do acesso a dados com pontos de acesso do Amazon S3 no Guia do desenvolvedor do Amazon Simple Storage Service.

O código de exemplo a seguir mostra como usar delete-access-point.

AWS CLI

Para excluir um ponto de acesso

O delete-access-point exemplo a seguir exclui um ponto de acesso chamado finance-ap na conta 123456789012. Antes de executar este exemplo, substitua o nome do ponto de acesso e o número da conta pelos valores apropriados para seu caso de uso.

aws s3control delete-access-point \ --account-id 123456789012 \ --name finance-ap

Este comando não produz saída.

Para obter mais informações, consulte Gerenciamento do acesso a dados com pontos de acesso do Amazon S3 no Guia do desenvolvedor do Amazon Simple Storage Service.

  • Para API obter detalhes, consulte DeleteAccessPointna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar delete-public-access-block.

AWS CLI

Para excluir as configurações de bloqueio de acesso público de uma conta

O delete-public-access-block exemplo a seguir exclui as configurações de bloqueio de acesso público para a conta especificada.

aws s3control delete-public-access-block \ --account-id 123456789012

Este comando não produz saída.

O código de exemplo a seguir mostra como usar describe-job.

AWS CLI

Para descrever um trabalho de operações em lote do Amazon S3

A seguir, describe-job são apresentados os parâmetros de configuração e o status da tarefa de operações em lote especificada.

aws s3control describe-job \ --account-id 123456789012 \ --job-id 93735294-df46-44d5-8638-6356f335324e

Saída:

{ "Job": { "TerminationDate": "2019-10-03T21:49:53.944Z", "JobId": "93735294-df46-44d5-8638-6356f335324e", "FailureReasons": [], "Manifest": { "Spec": { "Fields": [ "Bucket", "Key" ], "Format": "S3BatchOperations_CSV_20180820" }, "Location": { "ETag": "69f52a4e9f797e987155d9c8f5880897", "ObjectArn": "arn:aws:s3:::employee-records-logs/inv-report/7a6a9be4-072c-407e-85a2-ec3e982f773e.csv" } }, "Operation": { "S3PutObjectTagging": { "TagSet": [ { "Value": "true", "Key": "confidential" } ] } }, "RoleArn": "arn:aws:iam::123456789012:role/S3BatchJobRole", "ProgressSummary": { "TotalNumberOfTasks": 8, "NumberOfTasksFailed": 0, "NumberOfTasksSucceeded": 8 }, "Priority": 42, "Report": { "ReportScope": "AllTasks", "Format": "Report_CSV_20180820", "Enabled": true, "Prefix": "batch-op-create-job", "Bucket": "arn:aws:s3:::employee-records-logs" }, "JobArn": "arn:aws:s3:us-west-2:123456789012:job/93735294-df46-44d5-8638-6356f335324e", "CreationTime": "2019-10-03T21:48:48.048Z", "Status": "Complete" } }
  • Para API obter detalhes, consulte DescribeJobna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar get-access-point-policy-status.

AWS CLI

Para recuperar o status da política do ponto de acesso

O get-access-point-policy-status exemplo a seguir recupera o status da política de ponto de acesso para o ponto de acesso nomeado finance-ap na conta 123456789012. O status da política do ponto de acesso indica se a política do ponto de acesso permite acesso público. Antes de executar este exemplo, substitua o nome do ponto de acesso e o número da conta pelos valores apropriados para seu caso de uso.

aws s3control get-access-point-policy-status \ --account-id 123456789012 \ --name finance-ap

Saída:

{ "PolicyStatus": { "IsPublic": false } }

Para obter mais informações sobre quando uma política de ponto de acesso é considerada pública, consulte The Meaning of “Public” no Amazon Simple Storage Service Developer Guide.

O código de exemplo a seguir mostra como usar get-access-point-policy.

AWS CLI

Para recuperar uma política de ponto de acesso

O get-access-point-policy exemplo a seguir recupera a política de ponto de acesso do ponto de acesso nomeado finance-ap na conta 123456789012. Antes de executar este exemplo, substitua o nome do ponto de acesso e o número da conta pelos valores apropriados para seu caso de uso.

aws s3control get-access-point-policy \ --account-id 123456789012 \ --name finance-ap

Saída:

{ "Policy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::123456789012:role/Admin\"},\"Action\":\"s3:GetObject\",\"Resource\":\"arn:aws:s3:us-west-2:123456789012:accesspoint/finance-ap/object/records/*\"}]}" }

Para obter mais informações, consulte Gerenciamento do acesso a dados com pontos de acesso do Amazon S3 no Guia do desenvolvedor do Amazon Simple Storage Service.

O código de exemplo a seguir mostra como usar get-access-point.

AWS CLI

Para recuperar detalhes da configuração do ponto de acesso

O get-access-point exemplo a seguir recupera os detalhes da configuração do ponto de acesso nomeado finance-ap na conta 123456789012. Antes de executar este exemplo, substitua o nome do ponto de acesso e o número da conta pelos valores apropriados para seu caso de uso.

aws s3control get-access-point \ --account-id 123456789012 \ --name finance-ap

Saída:

{ "Name": "finance-ap", "Bucket": "business-records", "NetworkOrigin": "Internet", "PublicAccessBlockConfiguration": { "BlockPublicAcls": false, "IgnorePublicAcls": false, "BlockPublicPolicy": false, "RestrictPublicBuckets": false }, "CreationDate": "2020-01-01T00:00:00Z" }

Para obter mais informações, consulte Gerenciamento do acesso a dados com pontos de acesso do Amazon S3 no Guia do desenvolvedor do Amazon Simple Storage Service.

  • Para API obter detalhes, consulte GetAccessPointna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar get-multi-region-access-point-routes.

AWS CLI

Para consultar a configuração atual da rota do ponto de acesso multirregional

O get-multi-region-access-point-routes exemplo a seguir retorna a configuração de roteamento atual para o ponto de acesso multirregional especificado.

aws s3control get-multi-region-access-point-routes \ --region Region \ --account-id 111122223333 \ --mrap MultiRegionAccessPoint_ARN

Saída:

{ "Mrap": "arn:aws:s3::111122223333:accesspoint/0000000000000.mrap", "Routes": [ { "Bucket": "DOC-EXAMPLE-BUCKET-1", "Region": "ap-southeast-2", "TrafficDialPercentage": 100 }, { "Bucket": "DOC-EXAMPLE-BUCKET-2", "Region": "us-west-1", "TrafficDialPercentage": 0 } ] }

O código de exemplo a seguir mostra como usar get-public-access-block.

AWS CLI

Para listar as configurações públicas de bloqueio de acesso de uma conta

O get-public-access-block exemplo a seguir exibe as configurações de bloqueio de acesso público para a conta especificada.

aws s3control get-public-access-block \ --account-id 123456789012

Saída:

{ "PublicAccessBlockConfiguration": { "BlockPublicPolicy": true, "RestrictPublicBuckets": true, "IgnorePublicAcls": true, "BlockPublicAcls": true } }

O código de exemplo a seguir mostra como usar list-access-points.

AWS CLI

Exemplo 1: Para recuperar uma lista de todos os pontos de acesso de uma conta

O list-access-points exemplo a seguir exibe uma lista de todos os pontos de acesso conectados aos buckets pertencentes à conta 123456789012.

aws s3control list-access-points \ --account-id 123456789012

Saída:

{ "AccessPointList": [ { "Name": "finance-ap", "NetworkOrigin": "Internet", "Bucket": "business-records" }, { "Name": "managers-ap", "NetworkOrigin": "Internet", "Bucket": "business-records" }, { "Name": "private-network-ap", "NetworkOrigin": "VPC", "VpcConfiguration": { "VpcId": "1a2b3c" }, "Bucket": "business-records" }, { "Name": "customer-ap", "NetworkOrigin": "Internet", "Bucket": "external-docs" }, { "Name": "public-ap", "NetworkOrigin": "Internet", "Bucket": "external-docs" } ] }

Exemplo 2: Para recuperar uma lista de todos os pontos de acesso de um bucket

O list-access-points exemplo a seguir recupera uma lista de todos os pontos de acesso anexados ao bucket de external-docs propriedade da conta 123456789012.

aws s3control list-access-points \ --account-id 123456789012 \ --bucket external-docs

Saída:

{ "AccessPointList": [ { "Name": "customer-ap", "NetworkOrigin": "Internet", "Bucket": "external-docs" }, { "Name": "public-ap", "NetworkOrigin": "Internet", "Bucket": "external-docs" } ] }

Para obter mais informações, consulte Gerenciamento do acesso a dados com pontos de acesso do Amazon S3 no Guia do desenvolvedor do Amazon Simple Storage Service.

  • Para API obter detalhes, consulte ListAccessPointsna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar list-jobs.

AWS CLI

Para listar os trabalhos de operações em lote do Amazon S3 de uma conta

O list-jobs exemplo a seguir lista todos os trabalhos recentes de operações em lote para a conta especificada.

aws s3control list-jobs \ --account-id 123456789012

Saída:

{ "Jobs": [ { "Operation": "S3PutObjectTagging", "ProgressSummary": { "NumberOfTasksFailed": 0, "NumberOfTasksSucceeded": 8, "TotalNumberOfTasks": 8 }, "CreationTime": "2019-10-03T21:48:48.048Z", "Status": "Complete", "JobId": "93735294-df46-44d5-8638-6356f335324e", "Priority": 42 }, { "Operation": "S3PutObjectTagging", "ProgressSummary": { "NumberOfTasksFailed": 0, "NumberOfTasksSucceeded": 0, "TotalNumberOfTasks": 0 }, "CreationTime": "2019-10-03T21:46:07.084Z", "Status": "Failed", "JobId": "3f3c7619-02d3-4779-97f6-1d98dd313108", "Priority": 42 }, ] }
  • Para API obter detalhes, consulte ListJobsna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar put-access-point-policy.

AWS CLI

Para definir uma política de ponto de acesso

O put-access-point-policy exemplo a seguir coloca a política de ponto de acesso especificada para o ponto de acesso finance-ap na conta 123456789012. Se o ponto de acesso finance-ap já tiver uma política, esse comando substituirá a política existente pela especificada nesse comando. Antes de executar este exemplo, substitua o número da conta, o nome do ponto de acesso e as declarações de política pelos valores apropriados para seu caso de uso.

aws s3control put-access-point-policy \ --account-id 123456789012 \ --name finance-ap \ --policy file://ap-policy.json

Conteúdo de ap-policy.json:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:user/Alice" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/finance-ap/object/Alice/*" } ] }

Este comando não produz saída.

Para obter mais informações, consulte Gerenciamento do acesso a dados com pontos de acesso do Amazon S3 no Guia do desenvolvedor do Amazon Simple Storage Service.

O código de exemplo a seguir mostra como usar put-public-access-block.

AWS CLI

Para editar as configurações de bloqueio de acesso público de uma conta

O put-public-access-block exemplo a seguir alterna todas as configurações de bloqueio de acesso público true para a conta especificada.

aws s3control put-public-access-block \ --account-id 123456789012 \ --public-access-block-configuration '{"BlockPublicAcls": true, "IgnorePublicAcls": true, "BlockPublicPolicy": true, "RestrictPublicBuckets": true}'

Este comando não produz saída.

O código de exemplo a seguir mostra como usar submit-multi-region-access-point-routes.

AWS CLI

Para atualizar sua configuração de roteamento de pontos de acesso multirregionais

O submit-multi-region-access-point-routes exemplo a seguir atualiza os status de roteamento de DOC-EXAMPLE-BUCKET-1 e DOC-EXAMPLE-BUCKET-2 na ap-southeast-2 região do seu ponto de acesso multirregional.

aws s3control submit-multi-region-access-point-routes \ --region ap-southeast-2 \ --account-id 111122223333 \ --mrap MultiRegionAccessPoint_ARN \ --route-updates Bucket=DOC-EXAMPLE-BUCKET-1,TrafficDialPercentage=100 Bucket=DOC-EXAMPLE-BUCKET-2,TrafficDialPercentage=0

Este comando não produz saída.

O código de exemplo a seguir mostra como usar update-job-priority.

AWS CLI

Para atualizar a prioridade de um trabalho de operações em lote do Amazon S3

O update-job-priority exemplo a seguir atualiza o trabalho especificado para uma nova prioridade.

aws s3control update-job-priority \ --account-id 123456789012 \ --job-id 8d9a18fe-c303-4d39-8ccc-860d372da386 \ --priority 52

Saída:

{ "JobId": "8d9a18fe-c303-4d39-8ccc-860d372da386", "Priority": 52 }
  • Para API obter detalhes, consulte UpdateJobPriorityna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar update-job-status.

AWS CLI

Para atualizar o status de um trabalho de operações em lote do Amazon S3

O update-job-status exemplo a seguir cancela o trabalho especificado que está aguardando aprovação.

aws s3control update-job-status \ --account-id 123456789012 \ --job-id 8d9a18fe-c303-4d39-8ccc-860d372da386 \ --requested-job-status Cancelled

Saída:

{ "Status": "Cancelled", "JobId": "8d9a18fe-c303-4d39-8ccc-860d372da386" }

O update-job-status exemplo a seguir confirma e executa o especificado que está aguardando aprovação.

aws s3control update-job-status \ --account-id 123456789012 \ --job-id 5782949f-3301-4fb3-be34-8d5bab54dbca \ --requested-job-status Ready Output:: { "Status": "Ready", "JobId": "5782949f-3301-4fb3-be34-8d5bab54dbca" }

O update-job-status exemplo a seguir cancela o trabalho especificado que está sendo executado.

aws s3control update-job-status \ --account-id 123456789012 \ --job-id 5782949f-3301-4fb3-be34-8d5bab54dbca \ --requested-job-status Cancelled Output:: { "Status": "Cancelling", "JobId": "5782949f-3301-4fb3-be34-8d5bab54dbca" }
  • Para API obter detalhes, consulte UpdateJobStatusna Referência de AWS CLI Comandos.