Gerenciar o acesso ao ACR (Registro de Contêiner do Azure)

Concluído

O serviço de Registro de Contêiner do Azure dá suporte a um conjunto de funções internas do Azure que fornecem níveis diferentes de permissões para um registro de contêiner do Azure. Use o RBAC do Azure (controle de acesso baseado em função do Azure) para atribuir permissões específicas a usuários, entidades de serviço ou outras identidades que precisam interagir com um registro, por exemplo, para efetuar pull ou enviar por push imagens de contêiner. Você também pode definir funções personalizadas com permissões refinadas para um registro para operações diferentes.

Função/Permissão Acessar o Resource Manager Criar/excluir registro Enviar uma imagem por push Pull de imagem Excluir dados de imagem Alterar políticas Imagens de entrada
Proprietário X X X X X X
Colaborador X X X X X X
Leitor X X
AcrPush X X
AcrPull X
AcrDelete X
AcrImageSigner X

Atribuir funções

Você pode usar o portal do Azure, a CLI do Azure, Azure PowerShell ou outras ferramentas do Azure. Ao criar uma entidade de serviço, você também configura seu acesso e as permissões para recursos do Azure, como um registro de contêiner.

Diferenciar usuários e serviços

Sempre que as permissões são aplicadas, uma prática recomendada é fornecer o conjunto mais limitado de permissões para uma pessoa ou serviço realizar uma tarefa. Os conjuntos de permissões a seguir representam um conjunto de funcionalidades que podem ser utilizadas por humanos e serviços autônomos.

Soluções CI/CD

Ao automatizar comandos de criação do docker a partir de soluções de CI/CD, você precisará de funcionalidades para efetuar push do docker. Para esses cenários de serviço sem periféricos, recomendamos atribuir a função AcrPush. Essa função, ao contrário da função mais ampla Colaborador, impede que a conta execute utras operações de registro ou acesse o Azure Resource Manager.

Nós de host do contêiner

Da mesma forma, nós que executam seus contêineres precisam da função AcrPull, mas não devem exibir os recursos de Leitor.

Extensão do Visual Studio Code Docker

Para ferramentas como o Visual Studio Code extensão Docker, é necessário acesso de provedor de recursos adicionais para listar os registros de contêiner do Azure disponíveis. Nesse caso, forneça aos usuários acesso para a função de Leitor ou Colaborador. Essas funções permitem efetuar o docker pull, docker push, az acr list, az acr build e outras funcionalidades.

Acessar o Resource Manager

O acesso ao Azure Resource Manager é necessário para o portal do Azure e para o gerenciamento do registro com a interface de linha de comando do Azure. Por exemplo, para obter uma lista de registros usando o comando az acr list, é necessário ter essa permissão definida.

Criar e excluir registros

A capacidade de criar e excluir registros de contêiner do Azure.

Enviar uma imagem por push

A capacidade de efetuar o docker pull de uma imagem não colocada em quarentena ou extrair outro artefato compatível, como um gráfico Helm, de um registro. Requer autenticação com o registro usando a identidade autorizada.

Excluir dados de imagem

A capacidade de excluir imagens de contêiner ou excluir outros artefatos com suporte, como gráficos do Helm, de um registro.

Alterar políticas

A capacidade de configurar políticas em um registro. Políticas incluem a limpeza de imagem, habilitando a quarentena e assinatura de imagem.

Imagens de entrada

A capacidade de imagens de entrada normalmente é atribuída a um processo automatizado, que usaria uma entidade de serviço. Normalmente, essa permissão é combinada com imagem por push para permitir o envio de uma imagem confiável para um registro.

Funções personalizadas

Assim como acontece com outros recursos do Azure, você pode criar funções personalizadas com permissões refinadas para o Registro de Contêiner do Azure. Em seguida, atribua as funções personalizadas a usuários, entidades de serviço ou outras identidades que precisam interagir com um registro.