Configurar Pagamento pelo solicitante em um bucket - Amazon Simple Storage Service

Configurar Pagamento pelo solicitante em um bucket

Você pode configurar um bucket do Amazon S3 para ser um bucket de Pagamento pelo solicitante, de modo que o solicitante pague o custo da solicitação e do download de dados em vez do proprietário do bucket.

Esta seção fornece exemplos de como configurar o pagamento pelo solicitante em um bucket do Amazon S3 usando o console e a API REST.

Como habilitar o Pagamento pelo solicitante para um bucket do S3
  1. Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

  2. Na lista Buckets escolha o nome do bucket para o qual você deseja habilitar Pagamento pelo solicitante.

  3. Escolha Properties (Propriedades).

  4. Em Requester pays (Pagamento pelo solicitante), escolha Edit (Editar).

  5. Escolha Enable (Habilitar) e Save changes (Salvar alterações).

    O Amazon S3 habilitará o Pagamento pelo solicitante para o bucket e exibirá a Bucket overview (Visão geral do bucket). Em Requester pays (Pagamento pelo solicitante), você verá a opção Enabled (Habilitado).

Somente o proprietário do bucket pode definir o valor de configuração RequestPaymentConfiguration.payer de um bucket como BucketOwner (o padrão) ou Requester. A definição do recurso requestPayment é opcional. Por padrão, o bucket não é um bucket de Pagamento pelo solicitante.

Para reverter um bucket de Pagamento pelo solicitante para um bucket regular, use o valor BucketOwner. Normalmente, você usaria BucketOwner ao fazer upload de dados para o bucket do Amazon S3 e definiria o valor como Requester antes da publicação de objetos no bucket.

Para definir requestPayment
  • Use uma solicitação PUT para definir o valor Payer como Requester em um bucket especificado.

    PUT ?requestPayment HTTP/1.1 Host: [BucketName].s3.amazonaws.com Content-Length: 173 Date: Wed, 01 Mar 2009 12:00:00 GMT Authorization: AWS [Signature] <RequestPaymentConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Payer>Requester</Payer> </RequestPaymentConfiguration>

Se houver êxito na solicitação, o Amazon S3 retornará uma resposta similar ao seguinte:

HTTP/1.1 200 OK x-amz-id-2: [id] x-amz-request-id: [request_id] Date: Wed, 01 Mar 2009 12:00:00 GMT Content-Length: 0 Connection: close Server: AmazonS3 x-amz-request-charged:requester

Você pode definir pagamentos do solicitante somente no nível de bucket. Você não pode definir pagamentos pelo solicitante para objetos específicos dentro do bucket.

Você pode configurar um bucket para ser BucketOwner ou Requester a qualquer momento. No entanto, pode haver alguns minutos antes que o novo valor de configuração entre em vigor.

nota

Proprietários de bucket que abrem mão de URLs pré-assinadas devem pensar duas vezes antes de configurar um bucket para ser de pagamento pelo solicitante, especialmente se o URL tiver um ciclo de vida bem longo. O proprietário do bucket é cobrado cada vez que o solicitante usa um pre-signed URL que usa as credenciais do proprietário do bucket.