Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo lista alguns exemplos de condições de atribuição de função para controlar o acesso ao Armazenamento de Blobs do Azure.
Importante
O controlo de acesso baseado em atributos do Azure (Azure ABAC) está geralmente disponível (GA) para controlar o acesso ao Azure Blob Storage, ao Azure Data Lake Storage Gen2 e às Filas do Azure, usando os atributos request, resource, environment e principal nas camadas de desempenho da conta de armazenamento padrão e premium. Atualmente, o blob de lista inclui o atributo request e o atributo snapshot request para namespace hierárquico estão em PREVIEW. Para obter informações completas sobre o status do recurso ABAC para Armazenamento Azure, consulte Status das funcionalidades condicionais no Armazenamento Azure.
Consulte os Termos de Utilização Complementares das Visualizações Prévias do Microsoft Azure para obter os termos legais que se aplicam às funcionalidades do Azure que estão em beta, em pré-visualização ou que ainda não foram lançadas para disponibilidade geral.
Pré-requisitos
Para obter informações sobre os pré-requisitos para adicionar ou editar condições de atribuição de função, consulte Pré-requisitos de condições.
Resumo dos exemplos neste artigo
Use a tabela a seguir para localizar rapidamente um exemplo que se adapte ao seu cenário ABAC. A tabela inclui uma breve descrição do cenário, além de uma lista de atributos usados no exemplo por fonte (ambiente, principal, solicitação e recurso).
Tags de índice de Blob
Esta seção inclui exemplos envolvendo etiquetas de índices de blobs.
Importante
Embora a Read content from a blob with tag conditions suboperação seja atualmente suportada para compatibilidade com condições implementadas durante a visualização do recurso ABAC, ela foi descontinuada e a Microsoft recomenda o uso da ação Read a blob.
Ao configurar as condições do ABAC no portal do Azure, pode ver OBSOLETO: Leia o conteúdo de um blob com condições de etiqueta. A Microsoft recomenda remover a operação e substituí-la pela Read a blob ação.
Se você estiver criando sua própria condição em que deseja restringir o acesso de leitura por condições de tag, consulte Exemplo: Ler blobs com uma tag de índice de blob.
Exemplo: Ler blobs com uma tag de índice de blob
Essa condição permite que os usuários leiam blobs com uma chave de tag de índice de blob do Project e um valor de Cascade. Tentativas de acessar blobs sem essa tag chave-valor não são permitidas.
Para que essa condição seja eficaz para uma entidade de segurança, você deve adicioná-la a todas as atribuições de função para elas que incluam as seguintes ações:
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o editor visual do portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Ler um blob |
| Origem do atributo | Recurso |
| Atributo | Etiquetas de índice de blob [Valores na chave] |
| Chave | {nomedachave} |
| Operador | StringEquals |
| Valor | {keyValue} |
Exemplo: Novos blobs devem incluir uma etiqueta de índice de blob
Essa condição requer que todos os novos blobs devem incluir uma chave de marca de índice de blob do Project e um valor de Cascade.
Há duas ações que permitem criar novos blobs, portanto, você deve direcionar ambos. Você deve adicionar essa condição a todas as atribuições de função que incluam uma das seguintes ações:
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Escrever num blob com etiquetas de índice de blob Escrever num blob com etiquetas de índice de blob |
| Origem do atributo | Solicitação |
| Atributo | Etiquetas de índice de blob [Valores na chave] |
| Chave | {nomedachave} |
| Operador | StringEquals |
| Valor | {keyValue} |
Exemplo: blobs existentes devem ter chaves de tags de índice de blobs
Essa condição requer que todos os blobs existentes sejam marcados com pelo menos uma das chaves de tag de índice de blob permitidas: Projeto ou Programa. Essa condição é útil para adicionar governança aos blobs existentes.
Há duas ações que permitem atualizar tags em blobs existentes, portanto, você deve direcionar ambas. Você deve adicionar essa condição a todas as atribuições de função que incluam uma das seguintes ações:
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Escrever num blob com etiquetas de índice de blob Escrever tags de índice de blob |
| Origem do atributo | Solicitação |
| Atributo | Tags de índice de Blob [Chaves] |
| Operador | ParaTodosOsQualquerValores:StringIgual |
| Valor | {nomedachave1} {nomedachave2} |
Exemplo: os blobs existentes devem ter uma chave e valores de tag de índice de blob
Essa condição requer que todos os blobs existentes tenham uma chave de tag de índice de blob de Project e valores de Cascade, Baker ou Skagit. Essa condição é útil para adicionar governança aos blobs existentes.
Há duas ações que permitem atualizar tags em blobs existentes, portanto, você deve direcionar ambas. Você deve adicionar essa condição a todas as atribuições de função que incluam uma das seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Escrever num blob com etiquetas de índice de blob Escrever tags de índice de blob |
| Origem do atributo | Solicitação |
| Atributo | Tags de índice de Blob [Chaves] |
| Operador | ParaQualquerDosValores:StringIgual |
| Valor | {nomedachave} |
| Operador | e ainda |
| Expressão 2 | |
| Origem do atributo | Solicitação |
| Atributo | Etiquetas de índice de blob [Valores na chave] |
| Chave | {nomedachave} |
| Operador | ParaTodosOsQualquerValores:StringIgual |
| Valor | {keyValue1} {keyValue2} {keyValue3} |
Nomes ou caminhos de contêineres de Blob
Esta seção inclui exemplos que mostram como restringir o acesso a objetos com base no nome do contêiner ou no caminho de blob.
Exemplo: ler, gravar ou excluir blobs em contêineres nomeados
Essa condição permite que os usuários leiam, gravem ou excluam blobs em contêineres de armazenamento chamados blobs-example-container. Essa condição é útil para compartilhar contêineres de armazenamento específicos com outros usuários em uma assinatura.
Há cinco ações para leitura, gravação e exclusão de blobs existentes. Você deve adicionar essa condição a todas as atribuições de função que incluam uma das seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. Adicione se as contas de armazenamento incluídas nessa condição tiverem namespace hierárquico habilitado ou poderão ser habilitadas no futuro. |
As suboperações não são usadas nessa condição porque a suboperação é necessária somente quando as condições são criadas com base em tags.
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Excluir um blob Ler um blob Escreva para um blob Criar um blob, criar um instantâneo ou acrescentar dados Todas as operações de dados para contas com namespace hierárquico habilitado (se aplicável) |
| Origem do atributo | Recurso |
| Atributo | Nome do contêiner |
| Operador | StringEquals |
| Valor | {containerName} |
Exemplo: Ler blobs em contêineres nomeados com um caminho
Essa condição permite acesso de leitura a contêineres de armazenamento chamados blobs-example-container com um caminho de blob de readonly/*. Essa condição é útil para compartilhar partes específicas de contêineres de armazenamento para acesso de leitura com outros usuários na assinatura.
Você deve adicionar essa condição a todas as atribuições de função que incluam as seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. Adicione se as contas de armazenamento incluídas nessa condição tiverem namespace hierárquico habilitado ou poderão ser habilitadas no futuro. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Ler um blob Todas as operações de dados para contas com namespace hierárquico habilitado (se aplicável) |
| Origem do atributo | Recurso |
| Atributo | Nome do contêiner |
| Operador | StringEquals |
| Valor | {containerName} |
| Expressão 2 | |
| Operador | e ainda |
| Origem do atributo | Recurso |
| Atributo | Caminho do blob |
| Operador | StringLike |
| Valor | {pathString} |
Exemplo: Ler ou listar blobs em contêineres nomeados com um caminho
Essa condição permite acesso de leitura e também acesso de lista a contentores de armazenamento denominados blobs-example-container com um caminho de blob de apenas leitura/*. A condição #1 aplica-se a operações de leitura, exceto para blobs de lista. A condição #2 aplica-se a blobs de lista. Esta condição é útil para compartilhar partes específicas de contêineres de armazenamento para acesso de leitura ou de listagem com outros utilizadores na subscrição.
Você deve adicionar essa condição a todas as atribuições de função que incluam as seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. Adicione se as contas de armazenamento incluídas nessa condição tiverem namespace hierárquico habilitado ou poderão ser habilitadas no futuro. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
Observação
O portal do Azure usa prefix='' para listar blobs do diretório raiz do contêiner. Depois de a condição ser adicionada com a operação de listagem de blobs usando o prefixo StringStartsWith 'readonly/', os utilizadores visados não poderão listar blobs a partir do diretório raiz do contentor no portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Ler um blob Todas as operações de dados para contas com namespace hierárquico habilitado (se aplicável) |
| Origem do atributo | Recurso |
| Atributo | Nome do contêiner |
| Operador | StringEquals |
| Valor | {containerName} |
| Expressão 2 | |
| Operador | e ainda |
| Origem do atributo | Recurso |
| Atributo | Caminho do blob |
| Operador | StringStartsCom |
| Valor | {pathString} |
| Condição #2 | Configurações |
|---|---|
| Ações |
Listar objetos binários Todas as operações de dados para contas com namespace hierárquico habilitado (se aplicável) |
| Origem do atributo | Recurso |
| Atributo | Nome do contêiner |
| Operador | StringEquals |
| Valor | {containerName} |
| Expressão 2 | |
| Operador | e ainda |
| Origem do atributo | Solicitação |
| Atributo | Prefixo do blob |
| Operador | StringStartsCom |
| Valor | {pathString} |
Exemplo: Escrever blobs em contêineres nomeados com um caminho
Essa condição permite que um parceiro (usuário convidado do Microsoft Entra) deposite arquivos nos contentores de armazenamento chamados Contosocorp com um caminho de uploads/contoso/*. Essa condição é útil para permitir que outros usuários coloquem dados em contêineres de armazenamento.
Você deve adicionar essa condição a todas as atribuições de função que incluam as seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. Adicione se as contas de armazenamento incluídas nessa condição tiverem namespace hierárquico habilitado ou poderão ser habilitadas no futuro. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Escreva para um blob Criar um blob, criar um instantâneo ou acrescentar dados Todas as operações de dados para contas com namespace hierárquico habilitado (se aplicável) |
| Origem do atributo | Recurso |
| Atributo | Nome do contêiner |
| Operador | StringEquals |
| Valor | {containerName} |
| Expressão 2 | |
| Operador | e ainda |
| Origem do atributo | Recurso |
| Atributo | Caminho do blob |
| Operador | StringLike |
| Valor | {pathString} |
Exemplo: Ler blobs com uma etiqueta de índice e um caminho
Essa condição permite que um usuário leia blobs com uma etiqueta de índice de blob de Program, um valor de Alpine e um caminho de blob de logs*. O caminho de blob de logs* também inclui o nome do blob.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Ler um blob |
| Origem do atributo | Recurso |
| Atributo | Etiquetas de índice de blob [Valores na chave] |
| Chave | {nomedachave} |
| Operador | StringEquals |
| Valor | {keyValue} |
| Condição #2 | Configurações |
|---|---|
| Ações | Ler um blob |
| Origem do atributo | Recurso |
| Atributo | Caminho do blob |
| Operador | StringLike |
| Valor | {pathString} |
Metadados do contêiner de Blob
Exemplo: Ler blobs em container com metadados específicos
Essa condição permite que os usuários leiam blobs em contêineres de blob com um par chave/valor de metadados específico.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Ler um blob |
| Origem do atributo | Recurso |
| Atributo | Metadados do contêiner |
| Operador | StringEquals |
| Valor | {containerName} |
Exemplo: Gravar ou excluir blobs no contêiner com metadados específicos
Esta condição permite que os usuários escrevam ou excluam blobs em contentores de blob com um par chave/valor de metadados específico.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Escreva para um blob Excluir um blob |
| Origem do atributo | Recurso |
| Atributo | Metadados do contêiner |
| Operador | StringEquals |
| Valor | {containerName} |
Versões de blob ou instantâneos de blob
Esta seção inclui exemplos que mostram como restringir o acesso a objetos com base na versão do blob ou na captura de snapshots.
Exemplo: Leia apenas as versões atuais do blob
Essa condição permite que um usuário leia apenas as versões atuais do blob. O usuário não pode ler outras versões de blob.
Você deve adicionar essa condição a todas as atribuições de função que incluam as seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Ler um blob Todas as operações de dados para contas com namespace hierárquico habilitado (se aplicável) |
| Origem do atributo | Recurso |
| Atributo | É a versão atual |
| Operador | BoolEquals |
| Valor | Verdade |
Exemplo: Leia as versões atuais do blob e uma versão específica do blob
Essa condição permite que um usuário leia as versões atuais do blob, bem como leia blobs com um ID de versão de 2022-06-01T23:38:32.8883645Z. O usuário não pode ler outras versões de blob. O atributo Version ID está disponível apenas para contas de armazenamento onde o namespace hierárquico não está habilitado.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Ler um blob |
| Origem do atributo | Solicitação |
| Atributo | ID da versão |
| Operador | DateTimeEquals |
| Valor | <blobVersionId> |
| Expressão 2 | |
| Operador | Ou |
| Origem do atributo | Recurso |
| Atributo | É a versão atual |
| Operador | BoolEquals |
| Valor | Verdade |
Exemplo: Eliminar versões antigas de blob
Essa condição permite que um usuário exclua versões de um blob anteriores a 01/06/2022 para executar a limpeza. O atributo Version ID está disponível apenas para contas de armazenamento onde o namespace hierárquico não está habilitado.
Você deve adicionar essa condição a todas as atribuições de função que incluam as seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/deleteBlobVersion/action |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Excluir um blob Eliminar uma versão de um blob |
| Origem do atributo | Solicitação |
| Atributo | ID da versão |
| Operador | DateTimeLessThan |
| Valor | <blobVersionId> |
Exemplo: Leia as versões atuais do blob e todos os instantâneos do blob
Essa condição permite que um usuário leia as versões atuais do blob e quaisquer instantâneos do blob. O atributo Version ID está disponível apenas para contas de armazenamento onde o namespace hierárquico não está habilitado. O atributo Snapshot está disponível para contas de armazenamento onde o namespace hierárquico não está habilitado e atualmente em visualização para contas de armazenamento onde o namespace hierárquico está habilitado.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Ler um blob Todas as operações de dados para contas com namespace hierárquico habilitado (se aplicável) |
| Origem do atributo | Solicitação |
| Atributo | Instantâneo |
| Existe | Verificada |
| Expressão 2 | |
| Operador | Ou |
| Origem do atributo | Recurso |
| Atributo | É a versão atual |
| Operador | BoolEquals |
| Valor | Verdade |
Exemplo: Permitir que a operação de listagem de blobs inclua metadados, instantâneos ou versões dos blobs
Esta condição permite que um utilizador liste os blobs num contentor e inclua metadados, instantâneos e informações de versão. O atributo List blobs include está disponível para contas de armazenamento onde o namespace hierárquico não está habilitado.
Observação
List blobs include é um atributo request e funciona permitindo ou restringindo valores no include parâmetro ao chamar a operação List Blobs . Os valores no include parâmetro são comparados com os valores especificados na condição usando operadores de comparação entre produtos. Se a comparação for avaliada como verdadeira, a List Blobs solicitação será permitida. Se a comparação for avaliada como falsa, a List Blobs solicitação será negada.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Listar objetos binários |
| Origem do atributo | Solicitação |
| Atributo | Os blobs da lista incluem |
| Operador | ForAllOfAnyValues:StringEqualsIgnoreCase |
| Valor | {'metadados', 'instantâneos', 'versões'} |
Exemplo: Restringir a operação de listar blobs para não incluir metadados de blobs
Esta condição impede um usuário de listar blobs quando metadados estão presentes na solicitação. O atributo List blobs include está disponível para contas de armazenamento onde o namespace hierárquico não está habilitado.
Observação
List blobs include é um atributo request e funciona permitindo ou restringindo valores no include parâmetro ao chamar a operação List Blobs . Os valores no include parâmetro são comparados com os valores especificados na condição usando operadores de comparação entre produtos. Se a comparação for avaliada como verdadeira, a List Blobs solicitação será permitida. Se a comparação for avaliada como falsa, a List Blobs solicitação será negada.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Listar objetos binários |
| Origem do atributo | Solicitação |
| Atributo | Os blobs da lista incluem |
| Operador | ForAllOfAllValues:StringNotEquals |
| Valor | {'metadados'} |
Espaço de nomes hierárquico
Esta seção inclui exemplos que mostram como restringir o acesso a objetos com base no fato de o namespace hierárquico estar habilitado para uma conta de armazenamento.
Exemplo: contas de armazenamento em modo de leitura apenas com namespace hierárquico ativado
Essa condição permite que um usuário leia apenas blobs em contas de armazenamento com namespace hierárquico habilitado. Esta condição é aplicável apenas no âmbito do grupo de recursos ou superior.
Você deve adicionar essa condição a todas as atribuições de função que incluam as seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Ler um blob Todas as operações de dados para contas com namespace hierárquico habilitado (se aplicável) |
| Origem do atributo | Recurso |
| Atributo | O namespace hierárquico está habilitado |
| Operador | BoolEquals |
| Valor | Verdade |
Âmbito da encriptação
Esta seção inclui exemplos que mostram como restringir o acesso a objetos com um escopo de criptografia aprovado.
Exemplo: Ler blobs com âmbitos de encriptação específicos
Essa condição permite que um usuário leia blobs criptografados com escopo validScope1 de criptografia ou validScope2.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Ler um blob |
| Origem do atributo | Recurso |
| Atributo | Nome do escopo de criptografia |
| Operador | ParaQualquerDosValores:StringIgual |
| Valor | <nome_do_escopo> |
Exemplo: Ler ou gravar blobs na conta de armazenamento designada com escopo de criptografia específico
Essa condição permite que um usuário leia ou escreva blobs em uma conta de armazenamento nomeada sampleaccount e criptografada com escopo ScopeCustomKey1de criptografia. Se os blobs não forem criptografados ou descriptografados com ScopeCustomKey1, a solicitação retornará proibida.
Você deve adicionar essa condição a todas as atribuições de função que incluam as seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
Observação
Como os escopos de criptografia para diferentes contas de armazenamento podem ser diferentes, é recomendável usar o storageAccounts:name atributo com o encryptionScopes:name atributo para restringir o escopo de criptografia específico a ser permitido.
Diagrama da condição mostrando acesso de leitura ou gravação a blobs na conta de armazenamento 'sampleaccount' com o escopo de criptografia ScopeCustomKey1.
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações |
Ler um blob Escreva para um blob Criar um blob, criar um instantâneo ou acrescentar dados |
| Origem do atributo | Recurso |
| Atributo | Nome da conta |
| Operador | StringEquals |
| Valor | <nomedaconta;> |
| Expressão 2 | |
| Operador | e ainda |
| Origem do atributo | Recurso |
| Atributo | Nome do escopo de criptografia |
| Operador | ParaQualquerDosValores:StringIgual |
| Valor | <nome_do_escopo> |
Principais atributos
Esta seção inclui exemplos que mostram como restringir o acesso a objetos com base em entidades de segurança personalizadas.
Exemplo: Ler ou escrever blobs com base em tags de índice de blob e atributos de segurança personalizados
Essa condição permite acesso de leitura ou gravação a blobs se o usuário tiver um atributo de segurança personalizado que corresponda à marca de índice de blob.
Por exemplo, se Brenda tiver o atributo Project=Baker, ela só poderá ler ou escrever blobs com a Project=Baker tag de índice de blob. Da mesma forma, Chandra só pode ler ou escrever bolhas com Project=Cascade.
Você deve adicionar essa condição a todas as atribuições de função que incluam as seguintes ações.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
Para obter mais informações, consulte Permitir acesso de leitura a blobs com base em tags e atributos de segurança personalizados.
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Ler as condições de um blob |
| Origem do atributo | Diretor |
| Atributo | <atributoset>_<chave> |
| Operador | StringEquals |
| Opção | Atributo |
| Origem do atributo | Recurso |
| Atributo | Etiquetas de índice de blob [Valores na chave] |
| Chave | <chave> |
| Condição #2 | Configurações |
|---|---|
| Ações |
Escrever num blob com etiquetas de índice de blob Escrever num blob com etiquetas de índice de blob |
| Origem do atributo | Diretor |
| Atributo | <atributoset>_<chave> |
| Operador | StringEquals |
| Opção | Atributo |
| Origem do atributo | Solicitação |
| Atributo | Etiquetas de índice de blob [Valores na chave] |
| Chave | <chave> |
Exemplo: Ler blobs com base em tags de índice de blob e atributos de segurança personalizados de vários valores
Essa condição permite acesso de leitura a blobs se o usuário tiver um atributo de segurança personalizado com quaisquer valores que correspondam à marca de índice de blob.
Por exemplo, se Chandra tiver o atributo Project com os valores Baker e Cascade, ela só poderá ler blobs com as tags de índice Project=Baker ou Project=Cascade.
Você deve adicionar essa condição a todas as atribuições de função que incluam a ação a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
Para obter mais informações, consulte Permitir acesso de leitura a blobs com base em tags e atributos de segurança personalizados.
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o portal do Azure.
| Condição #1 | Configurações |
|---|---|
| Ações | Ler as condições de um blob |
| Origem do atributo | Recurso |
| Atributo | Etiquetas de índice de blob [Valores na chave] |
| Chave | <chave> |
| Operador | ParaQualquerDosValores:StringIgual |
| Opção | Atributo |
| Origem do atributo | Diretor |
| Atributo | <atributoset>_<chave> |
Atributos do ambiente
Esta seção inclui exemplos que mostram como restringir o acesso a objetos com base no ambiente de rede ou na data e hora atuais.
Exemplo: Permitir acesso de leitura a blobs após uma data e hora específicas
Esta condição permite acesso de leitura ao blob contêiner container1 apenas após as 13h de 1 de maio de 2023, hora universal coordenada (UTC).
Há duas ações potenciais para a leitura de blobs existentes. Para tornar essa condição efetiva para entidades que têm várias atribuições de função, você deve adicioná-la a todas as atribuições de função que incluam qualquer uma das ações a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Adicionar ação
Selecione Adicionar ação e, em seguida, selecione apenas a suboperação Ler um blob, como mostrado na tabela a seguir.
| Ação | Suboperação |
|---|---|
| Todas as operações de leitura | Ler um blob |
Não selecione a ação Todas as operações de leitura de nível superior ou quaisquer outras suboperações, conforme mostrado na imagem a seguir:
Criar expressão
Use os valores na tabela a seguir para criar a parte de expressão da condição:
Configurações Valor Origem do atributo Recurso Atributo Nome do contêiner Operador StringEquals Valor container1Operador lógico «E» Origem do atributo Ambiente Atributo UtcNow Operador DateTimeGreaterThan Valor 2023-05-01T13:00:00.000Z
A imagem a seguir mostra a condição depois que as configurações são inseridas no portal do Azure. Você deve agrupar expressões para garantir uma avaliação correta.
Exemplo: Permitir acesso a blobs em contêineres específicos de uma sub-rede específica
Esta condição apenas permite acesso de leitura, escrita, adição e exclusão a blobs na sub-rede container1 da rede virtual default. Para usar o atributo Subnet neste exemplo, a sub-rede deve ter pontos de extremidade de serviço habilitados para o Armazenamento do Azure.
Há cinco ações potenciais para ler, gravar, adicionar e excluir acesso a blobs existentes. Para tornar essa condição efetiva para entidades que têm várias atribuições de função, você deve adicioná-la a todas as atribuições de função que incluam qualquer uma das ações a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Adicionar ação
Selecione Adicionar ação e, em seguida, selecione apenas as ações de nível superior mostradas na tabela a seguir.
| Ação | Suboperação |
|---|---|
| Todas as operações de leitura | n/a |
| Escreva num blob | n/a |
| Criar um blob, um instantâneo ou acrescentar dados | n/a |
| Eliminar um blob | n/a |
Não selecione nenhuma suboperação individual, conforme mostrado na imagem a seguir:
Criar expressão
Use os valores na tabela a seguir para criar a parte de expressão da condição:
Configurações Valor Origem do atributo Recurso Atributo Nome do contêiner Operador StringEquals Valor container1Operador lógico «E» Origem do atributo Ambiente Atributo Subrede Operador StringEqualsIgnoreCase Valor /subscriptions/<your subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Network/virtualNetworks/virtualnetwork1/subnets/default
A imagem a seguir mostra a condição depois que as configurações são inseridas no portal do Azure. Você deve agrupar expressões para garantir uma avaliação correta.
Exemplo: Exigir acesso de link privado para ler blobs com alta sensibilidade
Essa condição requer solicitações para ler blobs onde a tag de índice sensibilidade tenha um valor de high através de uma ligação privada (qualquer ligação privada). Isso significa que todas as tentativas de ler blobs altamente sensíveis da internet pública não serão permitidas. Os usuários podem ler blobs da Internet pública que tenham sensibilidade definida para algum valor diferente de high.
Segue-se uma tabela de verdade para esta condição de exemplo ABAC:
| Ação | Sensibilidade | Link privado | Acesso |
|---|---|---|---|
| Ler um blob | alto | Sim | Permitido |
| Ler um blob | alto | Não | Não permitido |
| Ler um blob | NÃO alto | Sim | Permitido |
| Ler um blob | NÃO alto | Não | Permitido |
Há duas ações potenciais para a leitura de blobs existentes. Para tornar essa condição efetiva para entidades que têm várias atribuições de função, você deve adicioná-la a todas as atribuições de função que incluam qualquer uma das ações a seguir.
Ação Observações Microsoft.Storage/storageAccounts/blobServices/containers/blobs/readMicrosoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/actionAdicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento.
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o editor de condição visual no portal do Azure.
Adicionar ação
Selecione Adicionar ação e, em seguida, selecione apenas a suboperação Ler um blob, como mostrado na tabela a seguir.
| Ação | Suboperação |
|---|---|
| Todas as operações de leitura | Ler um blob |
Não selecione a ação de nível superior Todas as operações de leitura de quaisquer outras suboperações, conforme mostrado na imagem a seguir:
Criar expressão
Use os valores na tabela a seguir para criar a parte de expressão da condição:
Grupo Configurações Valor Grupo #1 Origem do atributo Recurso Atributo Etiquetas de índice de blob [Valores na chave] Chave sensitivityOperador StringEquals Valor highOperador lógico «E» Origem do atributo Ambiente Atributo É link privado Operador BoolEquals Valor TrueFim do Grupo #1 Operador lógico «OU» Origem do atributo Recurso Atributo Etiquetas de índice de blob [Valores na chave] Chave sensitivityOperador StringNotEquals Valor high
A imagem a seguir mostra a condição depois que as configurações são inseridas no portal do Azure. Você deve agrupar expressões para garantir uma avaliação correta.
Exemplo: Permitir acesso a um contêiner somente de um ponto de extremidade privado específico
Essa condição requer que todas as operações de leitura, gravação, adição e exclusão de blobs em um contêiner de armazenamento chamado container1 sejam feitas por meio de um ponto de extremidade privado chamado privateendpoint1. Para todos os outros contêineres não nomeados container1, o acesso não precisa ser feito por meio do ponto de extremidade privado.
Há cinco ações potenciais para leitura, gravação e exclusão de blobs existentes. Para tornar essa condição efetiva para entidades que têm várias atribuições de função, você deve adicioná-la a todas as atribuições de função que incluam qualquer uma das ações a seguir.
| Ação | Observações |
|---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Adicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento. Adicione se as contas de armazenamento incluídas nessa condição tiverem namespace hierárquico habilitado ou poderão ser habilitadas no futuro. |
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o editor de condição visual no portal do Azure.
Adicionar ação
Selecione Adicionar ação e, em seguida, selecione apenas as ações de nível superior mostradas na tabela a seguir.
| Ação | Suboperação |
|---|---|
| Todas as operações de leitura | n/a |
| Escreva num blob | n/a |
| Criar um blob, um instantâneo ou acrescentar dados | n/a |
| Eliminar um blob | n/a |
Não selecione nenhuma suboperação individual, conforme mostrado na imagem a seguir:
Criar expressão
Use os valores na tabela a seguir para criar a parte de expressão da condição:
Grupo Configurações Valor Grupo #1 Origem do atributo Recurso Atributo Nome do contêiner Operador StringEquals Valor container1Operador lógico «E» Origem do atributo Ambiente Atributo Ponto final privado Operador StringEqualsIgnoreCase Valor /subscriptions/<your subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Network/privateEndpoints/privateendpoint1Fim do Grupo #1 Operador lógico «OU» Origem do atributo Recurso Atributo Nome do contêiner Operador StringNotEquals Valor container1
A imagem a seguir mostra a condição depois que as configurações são inseridas no portal do Azure. Você deve agrupar expressões para garantir uma avaliação correta.
Exemplo: Permitir acesso de leitura a dados de blob altamente confidenciais apenas a partir de um endpoint privado específico e por utilizadores etiquetados para acesso
Essa condição requer que os blobs com a marca de índice sensitivity definida para high possam ser lidos apenas por utilizadores que tenham um valor correspondente para o seu atributo de segurança sensitivity. Além disso, eles devem ser acedidos através de um ponto final privado chamado privateendpoint1. Os blobs que têm um valor diferente para a etiqueta de sensibilidade podem ser acessíveis por outros pontos de extremidade ou pela Internet.
Há duas ações potenciais para a leitura de blobs existentes. Para tornar essa condição efetiva para entidades que têm várias atribuições de função, você deve adicioná-la a todas as atribuições de função que incluam qualquer uma das ações a seguir.
Ação Observações Microsoft.Storage/storageAccounts/blobServices/containers/blobs/readMicrosoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/actionAdicione se a definição de função incluir essa ação, como Proprietário de Dados de Blob de Armazenamento.
A condição pode ser adicionada a uma atribuição de função usando o portal do Azure ou o Azure PowerShell. O portal tem duas ferramentas para a construção de condições ABAC - o editor visual e o editor de código. Você pode alternar entre os dois editores no portal do Azure para ver suas condições em modos de exibição diferentes. Alterne entre a guia Editor visual e as guias Editor de código para exibir os exemplos para seu editor de portal preferido.
Aqui estão as configurações para adicionar essa condição usando o editor de condição visual no portal do Azure.
Adicionar ação
Selecione Adicionar ação e, em seguida, selecione apenas a suboperação Ler um blob, como mostrado na tabela a seguir.
| Ação | Suboperação |
|---|---|
| Todas as operações de leitura | Ler um blob |
Não selecione a ação de nível superior conforme mostrado na imagem a seguir:
Criar expressão
Use os valores na tabela a seguir para criar a parte de expressão da condição:
| Grupo | Configurações | Valor |
|---|---|---|
| Grupo #1 | ||
| Origem do atributo | Diretor | |
| Atributo | <atributoset>_<chave> | |
| Operador | StringEquals | |
| Opção | Atributo | |
| Operador lógico | «E» | |
| Origem do atributo | Recurso | |
| Atributo | Etiquetas de índice de blob [Valores na chave] | |
| Chave | <chave> | |
| Operador lógico | «E» | |
| Origem do atributo | Ambiente | |
| Atributo | Ponto final privado | |
| Operador | StringEqualsIgnoreCase | |
| Valor | /subscriptions/<your subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Network/privateEndpoints/privateendpoint1 |
|
| Fim do Grupo #1 | ||
| Operador lógico | «OU» | |
| Origem do atributo | Recurso | |
| Atributo | Etiquetas de índice de blob [Valores na chave] | |
| Chave | sensitivity |
|
| Operador | StringNotEquals | |
| Valor | high |
A imagem a seguir mostra a condição depois que as configurações são inseridas no portal do Azure. Você deve agrupar expressões para garantir uma avaliação correta.
Próximos passos
- Tutorial: Adicionar uma condição de atribuição de função para restringir o acesso a blobs usando o portal do Azure
- Ações e atributos para condições de atribuição de função do Azure para o Armazenamento de Blobs do Azure
- Formato e sintaxe das condições de atribuição de funções do Azure
- Solucionar problemas de condições de atribuição de função do Azure