Obter ACL de Contentor

A Get Container ACL operação obtém as permissões para o contentor especificado. As permissões indicam se os dados de contentor podem ser acedidos publicamente.

A partir da versão 2009-09-19, as permissões de contentor fornecem as seguintes opções para gerir o acesso ao contentor:

  • Acesso de leitura público completo: os dados de contentor e blob podem ser lidos através de um pedido anónimo. Os clientes podem enumerar blobs no contentor através de um pedido anónimo, mas não podem enumerar contentores na conta de armazenamento.

  • Acesso de leitura público apenas para blobs: os dados de blobs neste contentor podem ser lidos através de um pedido anónimo, mas os dados do contentor não estão disponíveis. Os clientes não podem enumerar blobs no contentor através de um pedido anónimo.

  • Sem acesso de leitura público: os dados de contentores e blobs só podem ser lidos pelo proprietário da conta.

Get Container ACL também devolve detalhes sobre quaisquer políticas de acesso ao nível do contentor especificadas no contentor que possam ser utilizadas com assinaturas de acesso partilhado. Para obter mais informações, veja Definir uma política de acesso armazenada.

Todo o acesso público ao contentor é anónimo, tal como o acesso através de uma assinatura de acesso partilhado.

Pedir

O Get Container ACL pedido pode ser construído da seguinte forma. Recomendamos que utilize HTTPS. Substitua myaccount pelo nome da sua conta de armazenamento:

Método URI do pedido Versão HTTP
GET/HEAD https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=acl HTTP/1.1

Pedido de serviço de armazenamento emulado

Quando estiver a fazer um pedido relativamente ao serviço de armazenamento emulado, especifique o nome do anfitrião do emulador e a porta do Armazenamento de Blobs como 127.0.0.1:10000, seguido do nome da conta de armazenamento emulada:

Método URI do pedido Versão HTTP
GET/HEAD http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=acl HTTP/1.1

Para obter mais informações, veja Utilizar o emulador do Azurite para o desenvolvimento local do Armazenamento do Azure.

Parâmetros do URI

Os seguintes parâmetros adicionais podem ser especificados no URI do pedido:

Parâmetro Description
timeout Opcional. O timeout parâmetro é expresso em segundos. Para obter mais informações, veja Set time-outs for Blob Storage operations (Definir tempos limite para operações de Armazenamento de Blobs).

Pedir códigos de erro

Os cabeçalhos de pedido obrigatórios e opcionais estão descritos na tabela seguinte:

Cabeçalho do pedido Description
Authorization Obrigatório. Especifica o esquema de autorização, o nome da conta e a assinatura. Para obter mais informações, veja Autorizar pedidos para o Armazenamento do Azure.
Date ou x-ms-date Obrigatório. Especifica a Hora Universal Coordenada (UTC) do pedido. Para obter mais informações, veja Autorizar pedidos para o Armazenamento do Azure.
x-ms-lease-id: <ID> Opcional, versão 2012-02-12 e posterior. Se for especificado, Get Container ACL só será bem-sucedido se a concessão do contentor estiver ativa e corresponder a este ID. Se não existir nenhuma concessão ativa ou o ID não corresponder, 412 (Precondition Failed) será devolvido.
x-ms-version Necessário para todos os pedidos autorizados. Especifica a versão da operação a utilizar para este pedido. Para obter mais informações, veja Controlo de versões dos serviços de Armazenamento do Azure.
x-ms-client-request-id Opcional. Fornece um valor opaco gerado pelo cliente com um limite de carateres de 1 kibibyte (KiB) que é registado nos registos quando o registo é configurado. Recomendamos vivamente que utilize este cabeçalho para correlacionar as atividades do lado do cliente com os pedidos que o servidor recebe. Para obter mais informações, veja Monitorizar Armazenamento de Blobs do Azure.

Corpo do pedido

Nenhum.

Resposta

A resposta inclui um código de estado HTTP, um conjunto de cabeçalhos de resposta e um corpo de resposta.

Código de estado

Uma operação bem-sucedida devolve o código de estado 200 (OK).

Para obter informações sobre códigos de estado, veja Códigos de estado e de erro.

Códigos de erro de resposta

A resposta para esta operação inclui os seguintes cabeçalhos. A resposta também pode incluir cabeçalhos HTTP padrão adicionais. Todos os cabeçalhos padrão estão em conformidade com a especificação do protocolo HTTP/1.1.

Cabeçalho de resposta Descrição
x-ms-blob-public-access Indica se os dados no contentor podem ser acedidos publicamente e o nível de acesso. Valores possíveis incluem:

- container: indica o acesso de leitura público completo para dados de contentores e blobs. Os clientes podem enumerar blobs no contentor através de um pedido anónimo, mas não podem enumerar contentores na conta de armazenamento.
- blob: Indica o acesso de leitura público para blobs. Os dados de blobs neste contentor podem ser lidos através de um pedido anónimo, mas os dados de contentor não estão disponíveis. Os clientes não podem enumerar blobs no contentor através de um pedido anónimo.
- true: Versões anteriores apenas a 2016-05-31. Indica que o contentor foi marcado para acesso de leitura público completo com uma versão anterior a 2009-09-19. A partir da versão 2016-05-31, este valor é devolvido como container alternativa.

Se este cabeçalho não for devolvido na resposta, o contentor é privado para o proprietário da conta.
ETag A etiqueta de entidade para o contentor. Se a versão do pedido for 2011-08-18 ou posterior, o valor ETag estará entre aspas.
Last-Modified Devolve a data e hora em que o contentor foi modificado pela última vez. O formato de data segue RFC 1123. Para obter mais informações, veja Representar valores de data/hora em códigos de erro.

Qualquer operação que modifique o contentor ou as respetivas propriedades ou metadados atualiza a hora da última modificação. As operações em blobs não afetam a hora da última modificação do contentor.
x-ms-request-id Identifica exclusivamente o pedido que foi feito e pode ser utilizado para resolver o pedido. Para obter mais informações, veja Resolver problemas de operações da API.
x-ms-version Indica a versão do serviço que foi utilizada para executar o pedido. Este cabeçalho é devolvido para pedidos efetuados na versão 2009-09-19 e posterior.
Date Um valor de data/hora UTC gerado pelo serviço, que indica a hora em que a resposta foi iniciada.
x-ms-client-request-id Pode ser utilizado para resolver problemas de pedidos e respostas correspondentes. O valor deste cabeçalho é igual ao valor do x-ms-client-request-id cabeçalho se estiver presente no pedido e o valor não contiver mais de 1024 carateres ASCII visíveis. Se o x-ms-client-request-id cabeçalho não estiver presente no pedido, este cabeçalho não está presente na resposta.

Corpo da resposta

Se tiver sido especificada uma política de acesso ao nível do contentor para o contentor, Get Container ACL devolve o identificador assinado e a política de acesso no corpo da resposta.

<?xml version="1.0" encoding="utf-8"?>  
<SignedIdentifiers>  
  <SignedIdentifier>  
    <Id>unique-value</Id>  
    <AccessPolicy>  
      <Start>start-time</Start>  
      <Expiry>expiry-time</Expiry>  
      <Permission>abbreviated-permission-list</Permission>  
    </AccessPolicy>  
  </SignedIdentifier>  
</SignedIdentifiers>  

Resposta de amostra

Response Status:  
HTTP/1.1 200 OK  
  
Response Headers:  
Transfer-Encoding: chunked  
x-ms-blob-public-access: container  
Date: Sun, 25 Sep 2011 20:28:22 GMT  
ETag: "0x8CAFB82EFF70C46"  
Last-Modified: Sun, 25 Sep 2011 19:42:18 GMT  
x-ms-version: 2011-08-18  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  
  
<?xml version="1.0" encoding="utf-8"?>  
<SignedIdentifiers>  
  <SignedIdentifier>   
    <Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>  
    <AccessPolicy>  
      <Start>2009-09-28T08:49:37.0000000Z</Start>  
      <Expiry>2009-09-29T08:49:37.0000000Z</Expiry>  
      <Permission>rwd</Permission>  
    </AccessPolicy>  
  </SignedIdentifier>  
</SignedIdentifiers>  
  

Autorização

A Get Container ACL operação só suporta autorização de Chave Partilhada.

Observações

Apenas o proprietário da conta pode ler dados numa conta de armazenamento específica, a menos que o proprietário da conta tenha especificado que os blobs no contentor estão disponíveis para acesso de leitura público ou que disponibilizou recursos no contentor através de uma assinatura de acesso partilhado.

Faturação

Os pedidos de preços podem ter origem em clientes que utilizam APIs de Armazenamento de Blobs, diretamente através da API REST do Armazenamento de Blobs ou a partir de uma biblioteca de cliente do Armazenamento do Azure. Estes pedidos acumulam custos por transação. O tipo de transação afeta a forma como a conta é cobrada. Por exemplo, as transações de leitura acumulam-se numa categoria de faturação diferente das transações de escrita. A tabela seguinte mostra a categoria de faturação dos Get Container ACL pedidos com base no tipo de conta de armazenamento:

Operação Tipo de conta de armazenamento Categoria de faturação
Obter ACL de Contentor Blob de bloco premium
Standard para fins gerais v2
Outras operações
Obter ACL de Contentor Standard para fins gerais v1 Operações de leitura

Para saber mais sobre os preços da categoria de faturação especificada, veja Armazenamento de Blobs do Azure Preços.

Ver também

Restringir o acesso a contentores e blobs
Definir uma política de acesso armazenada
Definir ACL de Contentor
Autorizar pedidos para o Armazenamento do Azure
Códigos de estado e de erro
Códigos de erro do Armazenamento de Blobs