Get Blob
A operação Get Blob
lê ou baixa um blob do sistema, incluindo seus metadados e propriedades. Você também pode chamar Get Blob
para ler um instantâneo.
Solicitação
Você pode construir a solicitação da Get Blob
seguinte maneira. Recomendamos que você use HTTPS. Substitua myaccount pelo nome da sua conta de armazenamento:
URI de solicitação de método GET | Versão HTTP |
---|---|
https://myaccount.blob.core.windows.net/mycontainer/myblob https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime> https://myaccount.blob.core.windows.net/mycontainer/myblob?versionid=<DateTime> |
HTTP/1.0 HTTP/1.1 |
URI do serviço de armazenamento emulado
Ao fazer uma solicitação no serviço de armazenamento emulado, especifique o nome do host do emulador e Armazenamento de Blobs do Azure porta como 127.0.0.1:10000
, seguido pelo nome da conta de armazenamento emulada:
URI de solicitação de método GET | Versão HTTP |
---|---|
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob |
HTTP/1.0 HTTP/1.1 |
Para saber mais, confira Usar o Emulador de Armazenamento do Azure para desenvolvimento e teste.
Parâmetros do URI
Os seguintes parâmetros adicionais podem ser especificados no URI de solicitação:
Parâmetro | Descrição |
---|---|
snapshot |
Opcional. O parâmetro instantâneo é um valor opaco DateTime que, quando está presente, especifica o blob instantâneo a ser recuperado. Para obter mais informações sobre como trabalhar com instantâneos de blob, consulte Create um instantâneo de um blob. |
versionid |
Opcional, versão 2019-12-12 e posterior. O versionid parâmetro é um valor opaco DateTime que, quando presente, especifica a versão do blob a ser recuperada. |
timeout |
Opcional. O parâmetro timeout é expresso em segundos. Para obter mais informações, consulte Definir tempos limite para operações de Armazenamento de Blobs. |
Cabeçalhos da solicitação
A tabela a seguir descreve os cabeçalhos de solicitação obrigatórios e opcionais.
Cabeçalho da solicitação | Descrição |
---|---|
Authorization |
Obrigatórios. Especifica o esquema de autorização, o nome da conta e a assinatura. Para saber mais, confira Autorizar solicitações para o Armazenamento do Azure. |
Date ou x-ms-date |
Obrigatórios. Especifica o UTC (Tempo Universal Coordenado) para a solicitação. Para saber mais, confira Autorizar solicitações para o Armazenamento do Azure. |
x-ms-version |
Necessário para todas as solicitações autorizadas. Opcional para solicitações anônimas. Especifica a versão da operação a ser usada para esta solicitação. Se esse cabeçalho for omitido para uma solicitação anônima, o serviço executará a solicitação com a versão 2009-09-19. Para obter mais informações, consulte Controle de versão para os Serviços de Armazenamento do Azure. |
Range |
Opcional. Retornar os bytes do blob somente no intervalo especificado. |
x-ms-range |
Opcional. Retornar os bytes do blob somente no intervalo especificado. Se Range e x-ms-range forem especificados, o serviço usará o valor de x-ms-range . Se nenhum dos intervalos for especificado, todo o conteúdo do blob será retornado. Para obter mais informações, consulte Especificar o cabeçalho de intervalo para operações de Armazenamento de Blobs. |
x-ms-lease-id: <ID> |
Opcional. Se esse cabeçalho for especificado, a operação será executada somente se ambas as seguintes condições forem atendidas: - A concessão do blob está ativa no momento. - A ID de concessão especificada na solicitação corresponde à ID de concessão do blob. Se esse cabeçalho for especificado, mas qualquer uma dessas condições não for atendida, a solicitação falhará e a Get Blob operação falhará com status código 412 (Falha na pré-condição). |
x-ms-range-get-content-md5: true |
Opcional. Quando esse cabeçalho é definido true como e especificado junto com o Range cabeçalho, o serviço retorna o hash MD5 para o intervalo, desde que o intervalo seja menor ou igual a 4 mebibytes (MiB) em tamanho.Se o cabeçalho for especificado sem o Range cabeçalho, o serviço retornará status código 400 (Solicitação Incorreta).Se o cabeçalho estiver definido true como quando o intervalo exceder 4 MiB, o serviço retornará status código 400 (Solicitação Incorreta). |
x-ms-range-get-content-crc64: true |
Opcional. Quando esse cabeçalho é definido true como e especificado junto com o Range cabeçalho, o serviço retorna o hash CRC64 para o intervalo, desde que o intervalo seja menor ou igual a 4 MiB de tamanho.Se o cabeçalho for especificado sem o Range cabeçalho, o serviço retornará status código 400 (Solicitação Incorreta).Se o cabeçalho estiver definido true como quando o intervalo exceder 4 MiB, o serviço retornará status código 400 (Solicitação Incorreta).Se os x-ms-range-get-content-md5 cabeçalhos e x-ms-range-get-content-crc64 estiverem presentes, a solicitação falhará com um 400 (Solicitação Incorreta).Esse cabeçalho tem suporte nas versões 2019-02-02 e posteriores. |
Origin |
Opcional. Especifica a origem da qual a solicitação será emitida. A presença desse cabeçalho resulta em recursos de origens cruzadas compartilhando (CORS) cabeçalhos na resposta. |
x-ms-upn |
Opcional. Versão 2023-11-03 e posterior. Válido para contas com namespace hierárquico habilitado. Se for true, os valores de identidade do usuário retornados nos x-ms-owner cabeçalhos de x-ms-group resposta e x-ms-acl serão transformados de Microsoft Entra IDs de objeto para Nomes de Entidade de Usuário. Se o valor for false, eles serão retornados como Microsoft Entra IDs de objeto. O valor padrão é false. Observe que as IDs de objeto de grupo e aplicativo não são convertidas, pois não têm nomes amigáveis exclusivos. |
x-ms-client-request-id |
Opcional. Fornece um valor opaco gerado pelo cliente com um limite de caracteres KiB (1 kibibyte), que é registrado nos logs de análise quando o log de análise de armazenamento está habilitado. É altamente recomendável que você use esse cabeçalho ao correlacionar atividades do lado do cliente com solicitações recebidas pelo servidor. Para obter mais informações, consulte Sobre o registro em log de Análise de Armazenamento do Azure. |
Essa operação também dará suporte ao uso de cabeçalhos condicionais para ler o blob somente se uma determinada condição for atendida. Para obter mais informações, consulte Especificar cabeçalhos condicionais para operações de Armazenamento de Blobs.
Cabeçalhos de solicitação (chaves de criptografia fornecidas pelo cliente)
A partir da versão 2019-02-02, você pode especificar os cabeçalhos a seguir na solicitação para ler um blob criptografado com uma chave fornecida pelo cliente. A criptografia com uma chave fornecida pelo cliente (e o conjunto correspondente de cabeçalhos) é opcional. Se um blob tiver sido criptografado anteriormente com uma chave fornecida pelo cliente, você deverá incluir esses cabeçalhos na solicitação para concluir a operação de leitura com êxito.
Cabeçalho da solicitação | Descrição |
---|---|
x-ms-encryption-key |
Obrigatórios. A chave de criptografia AES-256 codificada em Base64. |
x-ms-encryption-key-sha256 |
Opcional. O hash SHA256 codificado em Base64 da chave de criptografia. |
x-ms-encryption-algorithm: AES256 |
Obrigatórios. Especifica o algoritmo a ser usado para criptografia. O valor deste cabeçalho deve ser AES256 . |
Corpo da solicitação
Nenhum.
Resposta
A resposta inclui um código de status HTTP, um conjunto de cabeçalhos de resposta e o corpo de resposta, que tem o conteúdo do blob.
Código de status
Uma operação bem-sucedida para ler o blob completo retorna o código de status 200 (OK).
Uma operação bem-sucedida para ler um intervalo especificado retorna o código de status 206 (conteúdo parcial).
Para obter mais informações sobre códigos de status, consulte Códigos de status e de erro.
Cabeçalhos de resposta
A resposta para esta operação inclui os cabeçalhos a seguir. A resposta também pode incluir cabeçalhos padrão HTTP adicionais. Todos os cabeçalhos padrão estão em conformidade com a especificação do protocolo HTTP/1.1.
Sintaxe | Descrição |
---|---|
Last-Modified |
A data/hora em que o blob foi modificado pela última vez. O formato da data segue RFC 1123. Qualquer operação que modificar o blob, incluindo uma atualização dos metadados ou das propriedades do blob, alterará a hora da última modificação do blob. |
x-ms-creation-time |
Versão 2017-11-09 e posterior. A data/hora em que o blob foi criado. O formato da data segue RFC 1123. |
x-ms-meta-name:value |
Um conjunto de pares nome-valor associado a esse blob como metadados definidos pelo usuário. |
x-ms-tag-count |
Versão 2019-12-12 e posterior. Se o blob tiver marcas, esse cabeçalho retornará o número de marcas armazenadas no blob. O cabeçalho não será retornado se não houver marcas no blob. |
Content-Length |
O número de bytes presentes no corpo da resposta. |
Content-Type |
O tipo de conteúdo especificado para o blob. O tipo de conteúdo padrão é application/octet-stream . |
Content-Range |
Indica o intervalo de bytes retornados caso o cliente tenha solicitado um subconjunto do blob definindo o cabeçalho da Range solicitação. |
ETag |
Contém um valor que você pode usar para executar operações condicionalmente. Para obter mais informações, consulte Especificar cabeçalhos condicionais para operações de Armazenamento de Blobs. Se a versão da solicitação for 2011-08-18 ou posterior, o valor de ETag será colocado entre aspas. |
Content-MD5 |
Se o blob tiver um hash MD5 e essa operação Get Blob tiver o objetivo de ler todo o blob, esse cabeçalho de resposta será retornado de modo que o cliente possa verificar a integridade do conteúdo da mensagem.Na versão 2012-02-12 e posterior, Put Blob define o valor de hash MD5 de um blob de blocos mesmo quando a solicitação Put Blob não inclui um cabeçalho MD5.Se a solicitação for ler um intervalo especificado e o x-ms-range-get-content-md5 estiver definido true como , a solicitação retornará um hash MD5 para o intervalo, desde que o tamanho do intervalo seja menor ou igual a 4 MiB.Se nenhum desses conjuntos de condições for true , nenhum valor será retornado para o Content-MD5 cabeçalho.Se x-ms-range-get-content-md5 for especificado sem o cabeçalho Range , o serviço retornará o código de status 400 (Solicitação Incorreta).Se x-ms-range-get-content-md5 for definido true como quando o intervalo exceder 4 MiB, o serviço retornará status código 400 (Solicitação Incorreta). |
x-ms-content-crc64 |
Se a solicitação for ler um intervalo especificado e o x-ms-range-get-content-crc64 for definido true como , a solicitação retornará um hash CRC64 para o intervalo, desde que o tamanho do intervalo seja menor ou igual a 4 MiB. Se x-ms-range-get-content-crc64 for especificado sem o cabeçalho Range , o serviço retornará o código de status 400 (Solicitação Incorreta).Se x-ms-range-get-content-crc64 for definido true como quando o intervalo exceder 4 MiB, o serviço retornará status código 400 (Solicitação Incorreta). |
Content-Encoding |
Retorna o valor especificado para o cabeçalho da solicitação Content-Encoding . |
Content-Language |
Retorna o valor especificado para o cabeçalho da solicitação Content-Language . |
Cache-Control |
Retornado se o cabeçalho foi especificado anteriormente para o blob. |
Content-Disposition |
Retornado para solicitações na versão 2013-08-15 e mais recente. Esse cabeçalho retorna o valor que foi especificado para o cabeçalho x-ms-blob-content-disposition .O Content-Disposition campo de cabeçalho de resposta transmite informações adicionais sobre como processar o conteúdo da resposta e pode ser usado para anexar metadados adicionais. Por exemplo, se o cabeçalho estiver definido attachment como , ele indicará que o agente do usuário não deve exibir a resposta. Em vez disso, ele mostra uma caixa de diálogo Salvar como com um nome de arquivo diferente do nome de blob especificado. |
x-ms-blob-sequence-number |
O número de sequência atual de um blob de páginas. Esse cabeçalho não é retornado para blobs de blocos ou blobs de acréscimo. |
x-ms-blob-type: <BlockBlob | PageBlob | AppendBlob> |
Retorna o tipo de blob. |
x-ms-copy-completion-time: <datetime> |
Versão 2012-02-12 e posterior. A hora de conclusão da última tentativa Copy Blob de operação em que esse blob foi o blob de destino. Esse valor pode especificar a hora de uma tentativa de cópia concluída, cancelada o com falha. Esse cabeçalho não aparecerá se uma cópia estiver pendente, se esse blob nunca tiver sido o destino em uma Copy Blob operação ou se esse blob tiver sido modificado após uma operação concluída Copy Blob que usou Set Blob Properties , Put Blob ou Put Block List . |
x-ms-copy-status-description: <error string> |
Versão 2012-02-12 e posterior. Aparece somente quando x-ms-copy-status é failed ou pending . Descreve a causa da última falha fatal ou não fatal da operação de cópia. Esse cabeçalho não aparecerá se esse blob nunca tiver sido o destino em uma Copy Blob operação ou se esse blob tiver sido modificado após uma operação concluída Copy Blob que usou Set Blob Properties , Put Blob ou Put Block List . |
x-ms-copy-id: <id> |
Versão 2012-02-12 e posterior. Um identificador de cadeia de caracteres para a última tentativa Copy Blob de operação em que esse blob foi o blob de destino. Esse cabeçalho não aparecerá se esse blob nunca tiver sido o destino em uma Copy Blob operação ou se esse blob tiver sido modificado após uma operação concluída Copy Blob que usou Set Blob Properties , Put Blob ou Put Block List . |
x-ms-copy-progress: <bytes copied/bytes total> |
Versão 2012-02-12 e posterior. Contém o número de bytes que foram copiados e o total de bytes na origem na última tentativa Copy Blob de operação em que esse blob foi o blob de destino. Ele pode mostrar de 0 a Content-Length bytes copiados. Esse cabeçalho não aparecerá se esse blob nunca tiver sido o destino em uma Copy Blob operação ou se esse blob tiver sido modificado após uma operação concluída Copy Blob que usou Set Blob Properties , Put Blob ou Put Block List . |
x-ms-copy-source: url |
Versão 2012-02-12 e posterior. Uma URL de até 2 KiB de comprimento que especifica o blob de origem ou arquivo usado na última tentativa Copy Blob de operação em que esse blob foi o blob de destino. Esse cabeçalho não aparecerá se esse blob nunca tiver sido o destino em uma Copy Blob operação ou se esse blob tiver sido modificado após uma operação concluída Copy Blob que usou Set Blob Properties , Put Blob ou Put Block List . A URL retornada nesse cabeçalho contém todos os parâmetros de solicitação que foram usados na operação de cópia no blob de origem, incluindo o token SAS (assinatura de acesso compartilhado) que foi usado para acessar o blob de origem. |
x-ms-copy-status: <pending | success | aborted | failed> |
Versão 2012-02-12 e posterior. O estado da operação de cópia identificada por x-ms-copy-id, com estes valores: - success : cópia concluída com êxito.- pending : a cópia está em andamento. Verifique x-ms-copy-status-description se erros intermitentes não fatais retardam o progresso da cópia, mas não causam falha.- aborted : a cópia foi encerrada por Abort Copy Blob .- failed : falha na cópia. Consulte x-ms-copy-status-description para obter detalhes da falha.Esse cabeçalho não aparecerá se esse blob nunca tiver sido o destino em uma Copy Blob operação ou se esse blob tiver sido modificado após uma operação concluída Copy Blob que usou Set Blob Properties , Put Blob ou Put Block List . |
x-ms-lease-duration: <infinite | fixed> |
Versão 2012-02-12 e posterior. Quando um blob é concedido, especifica se a concessão tem duração infinita ou fixa. |
x-ms-lease-state: <available | leased | expired | breaking | broken> |
Versão 2012-02-12 e posterior. O estado de concessão do blob. |
x-ms-lease-status:<locked | unlocked> |
O status da concessão atual do blob. |
x-ms-request-id |
Identifica exclusivamente a solicitação que foi feita e pode ser usada para solucionar problemas da solicitação. Para obter mais informações, consulte Solucionar problemas de operações de API. |
x-ms-version |
Indica a versão do Armazenamento de Blobs que foi usada para executar a solicitação. Incluído para solicitações que foram feitas usando a versão 2009-09-19 e posterior. Esse cabeçalho também será retornado para solicitações anônimas sem uma versão especificada se o contêiner tiver sido marcado para acesso público usando o Armazenamento de Blobs versão 2009-09-19. |
Accept-Ranges: bytes |
Indica se o serviço oferece suporte a solicitações de conteúdo de blob parcial. Incluído para solicitações feitas usando a versão 2011-08-18 e posterior e para o serviço de armazenamento local no SDK versão 1.6 e posterior. |
Date |
Um valor de data/hora UTC gerado pelo serviço, que indica a hora em que a resposta foi iniciada. |
Access-Control-Allow-Origin |
Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra de correspondência. Este cabeçalho retorna o valor do cabeçalho de solicitação de origem no caso de uma correspondência. |
Access-Control-Expose-Headers |
Retornado se a solicitação incluir um cabeçalho Origin e CORS estiver habilitado com uma regra de correspondência. Retorna a lista de cabeçalhos de resposta que devem ser expostos ao cliente ou ao emissor da solicitação. |
Vary |
Retornado com o valor do cabeçalho Origin quando as regras de CORS são especificadas. Confira Suporte a CORS para os serviços de Armazenamento do Azure para obter detalhes. |
Access-Control-Allow-Credentials |
Retornado se a solicitação incluir um Origin cabeçalho e o CORS estiver habilitado com uma regra correspondente que não permita todas as origens. Esse cabeçalho será definido como true . |
x-ms-blob-committed-block-count |
O número de blocos confirmados presentes no blob. Esse cabeçalho é retornado somente para blobs de acréscimo. |
x-ms-server-encrypted: true/false |
Versão 2015-12-11 e posterior. O valor desse cabeçalho será definido true como se os dados de blob e os metadados do aplicativo forem completamente criptografados usando o algoritmo especificado. Caso contrário, o valor será definido false como (quando o blob for descriptografado ou se apenas partes dos metadados do blob ou do aplicativo forem criptografadas). |
x-ms-encryption-key-sha256 |
Versão 2019-02-02 e posterior. Esse cabeçalho será retornado se o blob for criptografado com uma chave fornecida pelo cliente. |
x-ms-encryption-context |
Versão 2021-08-06 e posterior. Se o valor da propriedade de contexto de criptografia for definido, ele retornará o valor definido. Válido somente quando o Namespace Hierárquico está habilitado para a conta. |
x-ms-encryption-scope |
Versão 2019-02-02 e posterior. Esse cabeçalho será retornado se o blob for criptografado com um escopo de criptografia. |
x-ms-blob-content-md5 |
Versão 2016-05-31 e posterior. Se o blob tiver um hash MD5 e se a solicitação contiver um cabeçalho de intervalo (Intervalo ou x-ms-range), esse cabeçalho de resposta será retornado com o valor do valor MD5 do blob inteiro. Esse valor pode ou não ser igual ao valor retornado no cabeçalho Content-MD5, com o último calculado do intervalo solicitado. |
x-ms-client-request-id |
Pode ser usado para solucionar problemas de solicitações e respostas correspondentes. O valor desse cabeçalho será igual ao valor do x-ms-client-request-id cabeçalho se ele estiver presente na solicitação e o valor não contiver mais de 1.024 caracteres ASCII visíveis. Se o x-ms-client-request-id cabeçalho não estiver presente na solicitação, esse cabeçalho não estará presente na resposta. |
x-ms-last-access-time |
Versão 2020-02-10 e posterior. Indica a última vez em que os dados do blob foram acessados com base na política de acompanhamento de hora do último acesso da conta de armazenamento. O cabeçalho não será retornado se a conta de armazenamento não tiver uma política de acompanhamento de hora do último acesso ou se a política estiver desabilitada. Para obter informações sobre como definir a política de acompanhamento de hora do último acesso da conta de armazenamento, consulte API do Serviço Blob. |
x-ms-blob-sealed |
Versão 2019-12-12 e posterior. Retornado somente para blobs de acréscimo. Se o blob de acréscimo tiver sido lacrado, o valor será true . Para obter mais informações, consulte Anexar selo de blob |
x-ms-immutability-policy-until-date |
Versão 2020-06-12 e posterior. Especifica a retenção até a data definida no blob. Essa é a data até a qual o blob pode ser protegido contra modificação ou exclusão. Retornado somente se uma política de imutabilidade estiver definida no blob. O valor desse cabeçalho está no formato RFC1123. |
x-ms-immutability-policy-mode: unlocked/locked |
Versão 2020-06-12 e posterior. Retornado se uma política de imutabilidade estiver definida no blob. Os valores são unlocked e locked .
unlocked indica que o usuário pode alterar a política aumentando ou diminuindo a retenção até a data.
locked indica que essas ações são proibidas. |
x-ms-legal-hold: true/false |
Versão 2020-06-12 e posterior. Esse cabeçalho não será retornado se não houver nenhuma retenção legal no blob. O valor desse cabeçalho será definido true como se o blob contiver uma retenção legal e seu valor for true . Caso contrário, o valor será definido false como se o blob contiver uma retenção legal e seu valor for false . |
x-ms-owner |
Versão 2020-06-12 e posterior, somente para contas com namespace hierárquico habilitado. Retorna o proprietário-usuário do arquivo ou diretório. |
x-ms-group |
Versão 2020-06-12 e posterior, somente para contas com namespace hierárquico habilitado. Retorna o grupo proprietário do arquivo ou diretório. |
x-ms-permissions |
Versão 2020-06-12 e posterior, somente para contas com namespace hierárquico habilitado. Retorna as permissões definidas para usuário, grupo e outros no arquivo ou diretório. Cada permissão individual está no [r,w,x,-]{3} formato . |
x-ms-acl |
Versão 2023-11-03 e posterior. Somente para contas com namespace hierárquico habilitado. Retorna a lista combinada de acesso e a lista de controle de acesso padrão definida para usuário, grupo e outros no arquivo ou diretório. Cada ACE (entrada de controle de acesso) consiste em um escopo, um tipo, um identificador de usuário ou grupo e permissões no formato [scope]:[type]:[id]:[permissions] . O default escopo indica que a ACE pertence à ACL padrão de um diretório; caso contrário, o escopo será implícito e a ACE pertence à ACL de acesso. Cada permissão individual está no [r,w,x,-]{3} formato . |
x-ms-resource-type |
Versão 2020-10-02 e posterior, somente para contas com namespace hierárquico habilitado. Retorna o tipo de recurso para o caminho, que pode ser file ou directory . |
Corpo da resposta
O corpo da resposta tem o conteúdo do blob.
Resposta de exemplo
Status Response:
HTTP/1.1 200 OK
Response Headers:
x-ms-blob-type: BlockBlob
x-ms-lease-status: unlocked
x-ms-lease-state: available
x-ms-meta-m1: v1
x-ms-meta-m2: v2
Content-Length: 11
Content-Type: text/plain; charset=UTF-8
Date: <date>
ETag: "0x8CB171DBEAD6A6B"
Vary: Origin
Last-Modified: <date>
x-ms-version: 2015-02-21
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-copy-id: 36650d67-05c9-4a24-9a7d-a2213e53caf6
x-ms-copy-source: <url>
x-ms-copy-status: success
x-ms-copy-progress: 11/11
x-ms-copy-completion-time: <date>
Autorização
A autorização é necessária ao chamar qualquer operação de acesso a dados no Armazenamento do Azure. Você pode autorizar a Get Blob
operação conforme descrito abaixo.
Importante
A Microsoft recomenda usar Microsoft Entra ID com identidades gerenciadas para autorizar solicitações para o Armazenamento do Azure. Microsoft Entra ID fornece segurança superior e facilidade de uso em comparação com a autorização de Chave Compartilhada.
O Armazenamento do Azure dá suporte ao uso de Microsoft Entra ID para autorizar solicitações para dados de blob. Com Microsoft Entra ID, você pode usar o RBAC (controle de acesso baseado em função) do Azure para conceder permissões a uma entidade de segurança. A entidade de segurança pode ser um usuário, um grupo, uma entidade de serviço de aplicativo ou uma identidade gerenciada do Azure. A entidade de segurança é autenticada por Microsoft Entra ID para retornar um token OAuth 2.0. Em seguida, o token pode ser usado para autorizar uma solicitação no serviço de Blob.
Para saber mais sobre a autorização usando Microsoft Entra ID, consulte Autorizar o acesso a blobs usando Microsoft Entra ID.
Permissões
Veja abaixo a ação RBAC necessária para um usuário Microsoft Entra, grupo, identidade gerenciada ou entidade de serviço para chamar a Get Blob
operação e a função rbac interna do Azure com privilégios mínimos que inclui esta ação:
- Ação rbac do Azure:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
- Função interna com privilégios mínimos:Leitor deDados de Blob de Armazenamento
Para saber mais sobre como atribuir funções usando o RBAC do Azure, confira Atribuir uma função do Azure para acesso aos dados de blob.
Comentários
Para um blob de páginas, uma operação Get Blob
em um intervalo de páginas que ainda não têm conteúdo ou que foi limpo retorna zeros para esses bytes.
Se você chamar Get Blob
em um blob de páginas sem nenhum intervalo especificado, o serviço retornará o intervalo de páginas até o valor especificado para o x-ms-blob-content-length
cabeçalho. Para todas as páginas que não têm conteúdo, o serviço retorna zeros para esses bytes.
Para um blob de acréscimo, a Get Blob
operação retorna o x-ms-blob-committed-block-count
cabeçalho . Esse cabeçalho indica o número de blocos confirmados no blob. O x-ms-blob-committed-block-count
cabeçalho não é retornado para blobs de blocos ou blobs de páginas.
Uma Get Blob
operação tem permissão de dois minutos por MiB para ser concluída. Se a operação estiver demorando mais de dois minutos por MiB em média, a operação terá um tempo limite.
O cabeçalho x-ms-version
é necessário para recuperar um blob que pertence a um contêiner privado. Se o blob pertencer a um contêiner disponível para acesso público total ou parcial, qualquer cliente poderá lê-lo sem especificar uma versão; a versão do serviço não é necessária para recuperar um blob que pertence a um contêiner público. Para saber mais, confira Restringir o acesso a contêineres e blobs.
Uma Get Blob
operação em um blob de blocos arquivado falhará.
Operações de cópia
Para determinar se uma Copy Blob
operação foi concluída, primeiro marcar para garantir que o x-ms-copy-id
valor do cabeçalho do blob de destino corresponda à ID de cópia fornecida pela chamada original para Copy Blob
. Uma correspondência garante que outro aplicativo não anule a cópia e inicie uma nova Copy Blob
operação. Em seguida, marcar para o x-ms-copy-status: success
cabeçalho. No entanto, lembre-se de que todas as operações de gravação em um blob, exceto Lease
, Put Page
, e Put Block
removem todas as x-ms-copy-*
propriedades do blob. Essas propriedades também não são copiadas por Copy Blob
operações que usam versões do Armazenamento de Blobs anteriores a 2012-02-12.
Aviso
A URL retornada no cabeçalho contém todos os x-ms-copy-source
parâmetros de solicitação que foram usados na operação de cópia no blob de origem. Se você usar um token SAS para acessar o blob de origem, esse token SAS aparecerá no x-ms-copy-source
cabeçalho quando Get Blob
for chamado no blob de destino.
Quando x-ms-copy-status: failed
aparece na resposta, x-ms-copy-status-description
contém mais informações sobre a falha de Copy Blob
.
Os três campos de cada x-ms-copy-status-description
valor são descritos na tabela a seguir:
Componente | Descrição |
---|---|
Código de status HTTP | Um inteiro padrão de 3 dígitos que especifica a falha. |
Código do erro | Um palavra-chave que descreve o erro, que é fornecido pelo Azure no <elemento ErrorCode>. Se nenhum <elemento ErrorCode> for exibido, será usado um palavra-chave que contém o texto de erro padrão associado ao código de status HTTP de três dígitos na especificação HTTP. Confira Códigos de erro comuns da API REST. |
Informações | Uma descrição detalhada da falha, entre aspas. |
Os x-ms-copy-status
valores e x-ms-copy-status-description
de cenários comuns de falha são descritos na tabela a seguir:
Importante
As descrições de erro nesta tabela podem ser alteradas sem aviso, mesmo sem uma alteração de versão, portanto, elas podem não corresponder exatamente ao texto.
Cenário | Valor x-ms-copy-status | Valor x-ms-copy-status-description |
---|---|---|
Operação de cópia concluída com êxito. | sucesso | vazio |
O usuário anulou a operação de cópia antes da conclusão. | aborted | vazio |
Falha na leitura do blob de origem durante uma operação de cópia, mas a operação será repetida. | pending | 502 BadGateway "Encontrado um erro reproduzível ao ler a origem. Uma nova tentativa será realizada. Hora da falha: <tempo>" |
Falha ao gravar no blob de destino de uma operação de cópia, mas a operação será repetida. | pending | 500 InternalServerError "Encontrado um erro reproduzível. Uma nova tentativa será realizada. Hora da falha: <tempo>" |
Falha irrecuperável durante a leitura do blob de origem de uma operação de cópia. | falhou | 404 ResourceNotFound "Falha na cópia ao ler a origem.” Nota: Quando o serviço relata esse erro subjacente, ele retorna ResourceNotFound no ErrorCode elemento . Se nenhum ErrorCode elemento aparecer na resposta, uma representação de cadeia de caracteres padrão do status HTTP, como NotFound , será exibida. |
O tempo limite que limita todas as operações de cópia expirou. (Atualmente, o tempo limite é duas semanas.) | falhou | 500 OperationCancelled "A cópia excedeu o tempo máximo permitido.” |
A operação de cópia falhou com muita frequência ao ler da origem e não atendeu a uma proporção mínima de tentativas para êxitos. (Esse tempo limite impede a repetição de uma fonte muito ruim ao longo de duas semanas antes de falhar). | falhou | 500 OperationCancelled "Falha na cópia durante a leitura da origem.” |
x-ms-last-access-time
controla a hora em que os dados do blob foram acessados com base na política de acompanhamento de hora do último acesso da conta de armazenamento. Acessar os metadados de um blob não altera a hora do último acesso.
Cobrança
As solicitações de preços podem ser originadas de clientes que usam APIs de Armazenamento de Blobs, diretamente por meio da API REST do Armazenamento de Blobs ou de uma biblioteca de clientes do Armazenamento do Azure. Essas solicitações acumulam encargos por transação. O tipo de transação afeta a forma como a conta é cobrada. Por exemplo, as transações de leitura se acumulam em uma categoria de cobrança diferente das transações de gravação. A tabela a seguir mostra a categoria de cobrança para Get Blob
solicitações com base no tipo de conta de armazenamento:
Operação | Tipo de conta de armazenamento | Categoria de cobrança |
---|---|---|
Get Blob | Blob de blocos Premium Uso geral v2 Standard Uso geral v1 Standard |
Operações de leitura |
Para saber mais sobre os preços da categoria de cobrança especificada, confira Preços Armazenamento de Blobs do Azure.
Confira também
Autorizar solicitações para o Armazenamento do Azure
Status e códigos de erro
Códigos de erro do Armazenamento de Blobs
Definir tempos limite para operações de Armazenamento de Blobs