Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A Create Container operação cria um novo contêiner na conta especificada. Se o contêiner com o mesmo nome já existir, a operação falhará.
O recurso de contêiner inclui metadados e propriedades para esse contêiner. Ele não inclui uma lista dos blobs no contêiner.
Solicitação
Você pode construir a Create Container solicitação conforme mostrado aqui. Recomendamos que você use HTTPS. O nome do contêiner pode incluir apenas caracteres minúsculos e precisa seguir essas regras de nomenclatura. Na URL, substitua myaccount pelo nome da sua conta de armazenamento.
| Método | URI de solicitação | Versão HTTP |
|---|---|---|
PUT |
https://myaccount.blob.core.windows.net/mycontainer?restype=container |
HTTP/1.1 |
Solicitação de serviço de armazenamento emulado
Ao fazer uma solicitação no serviço de armazenamento emulado, especifique o nome do host do emulador e a porta do Armazenamento de Blobs como 127.0.0.1:10000, seguidos pelo nome da conta de armazenamento emulada.
| Método | URI de solicitação | Versão HTTP |
|---|---|---|
PUT |
http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container |
HTTP/1.1 |
Para obter mais informações, consulte Usar o emulador Azurite para desenvolvimento local do Armazenamento do Azure.
Parâmetros de URI
Você pode especificar os seguintes parâmetros adicionais no URI da solicitação.
| Parâmetro | Description |
|---|---|
timeout |
Optional. O timeout parâmetro é expresso em segundos. Para obter mais informações, consulte Definir tempos limite para operações de Armazenamento de Blobs. |
Cabeçalhos da solicitação
Os cabeçalhos de solicitação obrigatórios e opcionais são descritos na tabela a seguir:
| Cabeçalho da solicitação | Description |
|---|---|
Authorization |
Obrigatório Especifica o esquema de autorização, o nome da conta e a assinatura. Para obter mais informações, consulte Autorizar solicitações para o Armazenamento do Azure. |
Date ou x-ms-date |
Obrigatório Especifica a hora UTC (Tempo Universal Coordenado) para a solicitação. Para obter mais informações, consulte Autorizar solicitações para o Armazenamento do Azure. |
x-ms-version |
Obrigatório para todas as solicitações autorizadas. Especifica a versão da operação a ser usada para essa solicitação. Para obter mais informações, consulte Controle de versão para os serviços de Armazenamento do Azure. |
x-ms-meta-name:value |
Optional. Um par nome-valor a ser associado ao contêiner como metadados. Observação: a partir da versão 2009-09-19, os nomes de metadados devem aderir às regras de nomenclatura para identificadores C#. |
x-ms-blob-public-access |
Optional. Especifica se os dados no contêiner podem ser acessados publicamente e o nível de acesso. Os valores possíveis incluem: - container: especifica o acesso de leitura público completo para dados de contêiner e blob. Os clientes podem enumerar blobs dentro do contêiner por meio de solicitação anônima, mas não podem enumerar contêineres dentro da conta de armazenamento.- blob: Especifica o acesso de leitura público para blobs. Os dados de blob dentro desse contêiner podem ser lidos por meio de solicitação anônima, mas os dados do contêiner não estão disponíveis. Os clientes não podem enumerar blobs dentro do contêiner por meio de solicitação anônima.Se esse cabeçalho não estiver incluído na solicitação, os dados do contêiner serão privados para o proprietário da conta. |
x-ms-client-request-id |
Optional. Fornece um valor opaco gerado pelo cliente com um limite de caracteres de 1 kibibyte (KiB) que é registrado nos logs quando o log é configurado. É altamente recomendável que você use esse cabeçalho para correlacionar atividades do lado do cliente com solicitações que o servidor recebe. Para obter mais informações, consulte Monitorar o Armazenamento de Blobs do Azure. |
Cabeçalhos de solicitação (escopos de criptografia)
A partir da versão 2019-02-02, você pode especificar os cabeçalhos a seguir em uma solicitação para definir um escopo de criptografia padrão em um contêiner. Se você definir um escopo de criptografia, ele será usado automaticamente para criptografar todos os blobs carregados no contêiner.
| Cabeçalho da solicitação | Description |
|---|---|
x-ms-default-encryption-scope |
Obrigatório O escopo de criptografia a ser definido como padrão no contêiner. |
x-ms-deny-encryption-scope-override |
Obrigatório Os valores são true ou false. Definir esse cabeçalho para true garantir que cada blob carregado nesse contêiner use o escopo de criptografia padrão. Quando esse cabeçalho é false, um cliente pode carregar um blob com um escopo de criptografia diferente do escopo padrão. |
Importante
Se um contêiner tiver x-ms-deny-encryption-scope-override sido definido como true, as atualizações para blobs que não têm escopo de criptografia ou chaves de criptografia fornecidas pelo cliente não serão permitidas nesse contêiner. Esses blobs permanecem legíveis e os usuários podem mover blobs do contêiner para um sem política de substituição de escopo de criptografia para executar atualizações.
Corpo da solicitação
Nenhum.
Solicitação de exemplo
Request Syntax:
PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container 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-Name: StorageSample
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=
Resposta
A resposta inclui um código de status HTTP e um conjunto de cabeçalhos de resposta.
Código de status
Uma operação bem-sucedida retorna o código de status 201 (Criado).
Para obter informações sobre códigos de status, consulte Códigos de status e erro.
Cabeçalhos de resposta
A resposta para essa operação inclui os cabeçalhos descritos na tabela a seguir. 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 | Description |
|---|---|
ETag |
A ETag para o contêiner. Se a versão da solicitação for 2011-08-18 ou posterior, o valor da ETag será colocado entre aspas. |
Last-Modified |
Retorna a data e a hora em que o contêiner foi modificado pela última vez. O formato de data segue o RFC 1123. Para obter mais informações, consulte Representação de valores de data/hora em cabeçalhos. Qualquer operação que modifique o contêiner ou suas 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 contêiner. |
x-ms-request-id |
Identifica exclusivamente a solicitação que foi feita. Você pode usá-lo 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 usada para executar a solicitação. Esse cabeçalho é retornado para solicitações feitas na versão 2009-09-19 ou posterior. |
Date |
O 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 usado para solucionar problemas de solicitações e respostas correspondentes. O valor desse cabeçalho é 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 1024 caracteres ASCII visíveis. Se o x-ms-client-request-id cabeçalho não estiver presente na solicitação, o cabeçalho não estará presente na resposta. |
Corpo da resposta
Nenhum.
Resposta de exemplo
Response status:
HTTP/1.1 201 Created
Response headers:
Transfer-Encoding: chunked
Date: Sun, 25 Sep 2011 23:00:12 GMT
ETag: “0x8CB14C3E29B7E82”
Last-Modified: Sun, 25 Sep 2011 23:00:06 GMT
x-ms-version: 2011-08-18
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
Authorization
A autorização é necessária ao chamar qualquer operação de acesso a dados no Armazenamento do Azure. Você pode autorizar a Create Container operação conforme descrito abaixo.
Importante
A Microsoft recomenda usar a ID do Microsoft Entra com identidades gerenciadas para autorizar solicitações para o Armazenamento do Azure. O Microsoft Entra ID oferece segurança superior e facilidade de uso em comparação com a autorização de Chave Compartilhada.
O Azure Storage oferece suporte ao uso do Microsoft Entra ID para autorizar solicitações de dados de blob. Com a ID do Microsoft Entra, você pode usar o RBAC do Azure (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, grupo, entidade de serviço de aplicativo ou identidade gerenciada do Azure. A entidade de segurança é autenticada pelo Microsoft Entra ID para retornar um token OAuth 2.0. O token pode então ser usado para autorizar uma solicitação ao serviço de Blob.
Para saber mais sobre a autorização usando a ID do Microsoft Entra, consulte Autorizar o acesso a blobs usando a ID do Microsoft Entra.
Permissions
Abaixo estão listadas a ação RBAC necessária para que um usuário, grupo, identidade gerenciada ou entidade de serviço do Microsoft Entra chame a Create Container operação e a função RBAC interna do Azure com menos privilégios que inclui essa ação:
- Ação do RBAC do Azure:Microsoft.Storage/storageAccounts/blobServices/containers/write
- Função interna com privilégios mínimos:Colaborador de Dados do Blob de Armazenamento
Para saber mais sobre como atribuir funções usando o RBAC do Azure, consulte Atribuir uma função do Azure para acesso a dados de blob.
Observações
Os contêineres são criados imediatamente na conta de armazenamento. Não é possível aninhar um contêiner dentro de outro.
Opcionalmente, você pode criar um contêiner padrão ou raiz para sua conta de armazenamento. O contêiner raiz possibilita fazer referência a um blob do nível superior da hierarquia da conta de armazenamento, sem fazer referência ao nome do contêiner.
Para adicionar o contêiner raiz à sua conta de armazenamento, crie um contêiner chamado $root. Construa a solicitação da seguinte maneira:
Request Syntax:
PUT https://myaccount.blob.core.windows.net/$root?restype=container 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-Name: StorageSample
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=
Você pode especificar metadados para um contêiner ao criá-lo, incluindo um ou mais cabeçalhos de metadados na solicitação. O formato do cabeçalho de metadados é x-ms-meta-name:value.
Se um contêiner com o mesmo nome estiver sendo excluído quando Create Container for chamado, o servidor retornará o código de status 409 (Conflito) e fornecerá informações de erro adicionais que indicam que o contêiner está sendo excluído.
Faturamento
As solicitações de preços podem se originar 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 são acumuladas em uma categoria de cobrança diferente das transações de gravação. A tabela a seguir mostra a categoria de cobrança para Create Container solicitações com base no tipo de conta de armazenamento:
| Operation | Tipo de conta de armazenamento | Categoria de faturamento |
|---|---|---|
| Criar Contêiner | Blob de blocos Premium Uso geral v2 Standard Uso geral padrão v1 |
Operações de Listar e Criar Contêiner |
Para saber mais sobre os preços da categoria de cobrança especificada, confira Preços do Armazenamento de Blobs do Azure.
Consulte também
Autorizar solicitações para o Armazenamento do Azure
Status e códigos de erro
Códigos de erro do Armazenamento de Blobs
Nomeie e referencie contêineres, blobs e metadados
Definir e recuperar propriedades e metadados para recursos de blob
Definir ACL do contêiner