Exemplos de controle do Amazon S3 usando AWS CLI - AWS Command Line Interface

Esta documentação é para a AWS CLI única versão 1. Para obter a documentação relacionada à versão 2 do AWS CLI, consulte o Guia do usuário da versão 2.

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, você pode 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

O seguinte describe-job fornece parâmetros de configuração e status para o trabalho de operações em lote especificado.

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.