Definir Metadados de Contentor
A Set Container Metadata
operação define um ou mais pares name-value definidos pelo utilizador para o contentor especificado.
Pedir
O Set Container Metadata
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 |
---|---|---|
PUT |
https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=metadata |
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 serviço Blob como 127.0.0.1:10000
, seguido do nome da conta de armazenamento emulada:
Método | URI do pedido | Versão HTTP |
---|---|---|
PUT |
http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=metadata |
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
Pode especificar os seguintes parâmetros adicionais 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 service operations (Definir tempos limite para operações do serviço Blob). |
Cabeçalhos do pedido
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-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-lease-id: <ID> |
Opcional, versão 2012-02-12 e posterior. Se for especificado, Set Container Metadata 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, será devolvido 412 (Falha na Pré-condição). |
x-ms-meta-name:value |
Opcional. Um par nome-valor para associar ao contentor como metadados. Cada chamada para esta operação substitui todos os metadados existentes anexados ao contentor. Para remover todos os metadados do contentor, chame esta operação sem cabeçalhos de metadados. Nota: a partir da versão 2009-09-19, os nomes de metadados têm de cumprir as regras de nomenclatura dos identificadores C#. |
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. |
Esta operação também suporta a utilização de cabeçalhos condicionais para definir metadados de contentor apenas se uma condição especificada for cumprida. Para obter mais informações, veja Especificar cabeçalhos condicionais para operações do serviço Blob.
Corpo do pedido
Nenhum.
Pedido de exemplo
Request Syntax:
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=metadata HTTP/1.1
Request Headers:
x-ms-version: 2011-08-18
x-ms-date: Sun, 25 Sep 2011 22:50:32 GMT
x-ms-meta-Category: Images
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=
Resposta
A resposta inclui um código de estado HTTP e um conjunto de cabeçalhos de resposta.
Código de estado
Uma operação bem-sucedida devolve o código de estado 200 (OK).
Para obter mais informações sobre códigos de estado, veja Códigos de estado e de erro.
Cabeçalhos 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 |
---|---|
ETag |
A ETag para o contentor. Se a versão do pedido for 2011-08-18 e 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 cabeçalhos. Qualquer operação que modifique o contentor ou as respetivas propriedades ou metadados atualiza a hora da última modificação, incluindo a definição das permissões do contentor. As operações em blobs não afetam a hora da última modificação do contentor. |
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 Blob 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. |
Access-Control-Allow-Origin |
Devolvido se o pedido incluir um Origin cabeçalho e a partilha de recursos entre origens (CORS) estiver ativada com uma regra correspondente. Este cabeçalho devolve o valor do cabeçalho do pedido de origem se existir uma correspondência. |
Access-Control-Expose-Headers |
Devolvido se o pedido incluir um Origin cabeçalho e CORS estiver ativado com uma regra correspondente. Devolve a lista de cabeçalhos de resposta que serão expostos ao cliente ou emissor do pedido. |
Access-Control-Allow-Credentials |
Devolvido se o pedido incluir um Origin cabeçalho e CORS estiver ativado com uma regra correspondente que não permite todas as origens. Este cabeçalho está definido como true . |
x-ms-client-request-id |
Este cabeçalho 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, não estará presente na resposta. |
Corpo da resposta
Nenhum.
Autorização
A autorização é necessária ao chamar qualquer operação de acesso a dados no Armazenamento do Azure. Pode autorizar a Set Container Metadata
operação conforme descrito abaixo.
Importante
A Microsoft recomenda a utilização de Microsoft Entra ID com identidades geridas para autorizar pedidos para o Armazenamento do Azure. Microsoft Entra ID fornece segurança superior e facilidade de utilização em comparação com a autorização de Chave Partilhada.
O Armazenamento do Azure suporta a utilização de Microsoft Entra ID para autorizar pedidos a dados de blobs. Com Microsoft Entra ID, pode utilizar o controlo de acesso baseado em funções do Azure (RBAC do Azure) para conceder permissões a um principal de segurança. O principal de segurança pode ser um utilizador, grupo, principal de serviço de aplicação ou identidade gerida do Azure. O principal de segurança é autenticado por Microsoft Entra ID para devolver um token OAuth 2.0. Em seguida, o token pode ser utilizado para autorizar um pedido contra o serviço Blob.
Para saber mais sobre a autorização através de Microsoft Entra ID, veja Autorizar o acesso a blobs com Microsoft Entra ID.
Permissões
Abaixo estão listadas as ações RBAC necessárias para que um utilizador Microsoft Entra, grupo, identidade gerida ou principal de serviço chame a Set Container Metadata
operação e a função RBAC do Azure com menos privilégios que inclua esta ação:
- Ação RBAC do Azure:Microsoft.Storage/storageAccounts/blobServices/containers/write
- Função incorporada com menos privilégios:Contribuidor de Dados do Blob de Armazenamento
Para saber mais sobre como atribuir funções com o RBAC do Azure, veja Atribuir uma função do Azure para acesso a dados de blobs.
Observações
Chamar a Set Container Metadata
operação substitui todos os metadados existentes associados ao contentor. Não é possível modificar um par de nome-valor individual.
Também pode definir metadados para um contentor quando este é criado.
Chamar Set Container Metadata
atualiza a ETag e Last-Modified-Time
as propriedades do contentor. Se o pedido tiver sido feito com a versão 2011-08-18, a ETag atualizada estará entre aspas.
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 Set Container Metadata
pedidos com base no tipo de conta de armazenamento:
Operação | Tipo de conta de armazenamento | Categoria de faturação |
---|---|---|
Definir Metadados de Contentor | Blob de blocos Premium Standard para fins gerais v2 |
Outras operações |
Definir Metadados de Contentor | Standard para fins gerais v1 | Operações de escrita |
Para saber mais sobre os preços da categoria de faturação especificada, veja Preços do Armazenamento de Blobs do Azure.
Ver também
Códigos de estado e de erro
Códigos de erro do serviço Blob
Definir e obter propriedades e metadados para recursos do Armazenamento de Blobs