Definir permissões de pipeline

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Permissões e funções de pipeline ajudam você a gerenciar seus pipelines com segurança. Você pode definir permissões hierárquicas nos níveis de organização, projeto e objeto para todos os pipelines em um projeto ou para um pipeline individual. Você pode atualizar permissões de pipeline com grupos de segurança ou adicionando usuários individuais.

Permissões e funções de pipeline ajudam você a gerenciar seus pipelines com segurança. Você pode definir permissões hierárquicas nos níveis de organização, servidor, projeto e objeto para todos os pipelines em um projeto ou para um pipeline individual. Você pode atualizar permissões de pipeline com grupos de segurança ou adicionando usuários individuais.

As permissões no nível de objeto são mais granulares do que as permissões no nível da organização, para que você possa aumentar a segurança do pipeline. Por exemplo, um usuário pode ter acesso ao repositório Azure Repos graças às permissões no nível da organização. No entanto, esse mesmo usuário pode ser impedido de executar um pipeline manualmente, devido às permissões desse objeto/pipeline.

Neste artigo, dividimos as permissões para os seguintes níveis de permissões:

Para obter mais informações, confira Introdução a permissões, acesso e grupos de segurança, Como proteger o Azure Pipelines e Verificar permissões para colaboradores.

Para obter informações sobre como definir permissões com a CLI do Azure, consulte a referência da CLI do Azure.

Pré-requisitos

  • Para gerenciar permissões e adicionar usuários ao Azure Pipelines para grupos no nível de projeto, você deve ser um Administrador de Projeto. Para obter mais informações, confira Permissões de grupo no nível de projeto.
  • Para gerenciar permissões para grupos de coleção, você deve ser um Administrador de Coleção de Projetos. Para obter mais informações, confira Permissões de grupo no nível de coleção.
  • Tenha em mente as informações a seguir ao definir permissões de pipeline.
    • Em muitos casos, convém definir Excluir pipeline de build como Permitir. Caso contrário, esses membros da equipe não poderão excluir seus próprios pipelines de build.
    • Sem a permissão Excluir builds, os usuários não podem excluir seus próprios builds concluídos. No entanto, eles podem excluir automaticamente os builds antigos desnecessários com políticas de retenção.
    • Recomendamos que você não conceda permissões diretamente a um usuário. Uma prática melhor é adicionar o usuário ao grupo de administradores de build ou a outro grupo e gerenciar as permissões para esse grupo.

Para obter mais informações e melhores práticas, confira Como proteger o Azure Pipelines.

Permissões padrão atribuídas a grupos de segurança internos

Build

Tarefa Leitores Colaboradores Administradores de Build Administradores de projeto
Visualizar compilações ✔️ ✔️ ✔️ ✔️
Exibir o pipeline de build ✔️ ✔️ ✔️ ✔️
Administrar permissões de compilação ✔️ ✔️
Excluir ou editar o pipeline de build ✔️ ✔️ ✔️
Excluir ou destruir builds ✔️ ✔️
Editar qualidade de compilação ✔️ ✔️ ✔️
Gerenciar qualidades de compilação ✔️ ✔️
Gerenciar a fila de compilação ✔️ ✔️
Substituir validação do check-in pela compilação ✔️
Enfileirar compilações ✔️ ✔️ ✔️
Reter indefinidamente ✔️ ✔️ ✔️ ✔️
Interromper compilações ✔️ ✔️
Atualizar informações de compilação ✔️

Versão

Tarefa Stakeholders Leitores Colaboradores Administradores de projeto Administradores de versão
Aprovar versões ✔️ ✔️ ✔️ ✔️
Exibir versões ✔️ ✔️ ✔️ ✔️ ✔️
Visualizar pipeline de lançamento ✔️ ✔️ ✔️ ✔️
Administrar permissões de versão ✔️ ✔️
Excluir pipeline ou fase de lançamento ✔️ ✔️ ✔️
Excluir versões ✔️ ✔️ ✔️
Editar pipeline de lançamento ✔️ ✔️
Editar fase de versão ✔️ ✔️ ✔️
Administrar implantações ✔️ ✔️
Gerenciar aprovadores de versão ✔️ ✔️ ✔️
Gerenciar versões ✔️ ✔️

Grupos de tarefas

Tarefa Leitores Colaboradores Administradores de Build Administradores de projeto Administradores de versão
Administrar permissões de grupo de tarefas ✔️ ✔️ ✔️
Excluir grupo de tarefas ✔️ ✔️ ✔️
Editar grupo de tarefas ✔️ ✔️ ✔️

Definir permissões de pipeline no nível do projeto

Execute as etapas a seguir para definir permissões no nível de projeto para todos os pipelines.

  1. Entrar em sua organização (https://dev.azure.com/{yourorganization}).

  2. No projeto, selecione Pipelines>Pipelines.

    Captura de tela mostrando as seleções de menu Pipelines ordenadas.

  3. Selecione Mais ações>Gerenciar segurança.

    Captura de tela mostrando seleções ordenadas para gerenciar a segurança de todos os pipelines em um projeto.

  4. Modifique as permissões associadas a um grupo do Azure DevOps, por exemplo, Administradores de Build, ou para um usuário individual.

  5. Selecione Permitir ou Negar para a permissão de um grupo de segurança ou um usuário individual e saia da tela.

As permissões de pipelines no nível de projeto foram definidas.

As permissões de pipeline de build e YAML seguem um modelo hierárquico. Você pode definir padrões para todas as permissões no nível de projeto e substituir as permissões para um pipeline de build individual.

Para definir as permissões no nível de projeto para todos os pipelines em um projeto, escolha Segurança na barra de ações na página principal do hub Builds.

Definir permissões de pipeline individuais

Execute as etapas a seguir para definir permissões para um pipeline individual.

  1. No projeto, selecione Pipelines>Pipelines.

    Captura de tela mostrando as seleções de menu ordenadas Pipelines.

  2. Selecione um pipeline individual e, em seguida, Mais ações> Gerenciar segurança.

    Captura de tela mostrando a opção Gerenciar segurança selecionada no menu Mais ações de um pipeline individual.

  3. Defina as permissões e Salve suas alterações.

Para definir ou substituir as permissões de um pipeline individual, escolha Segurança no menu de contexto do pipeline individual.

Referência de permissões de pipeline

Você pode definir as permissões a seguir para todos os pipelines em um projeto ou para um pipeline individual. Os valores padrão são definidos para coleções de projetos e grupos de projetos. Por exemplo, administradores de coleção de projetos, administradores de projeto e administradores de build têm todas essas permissões por padrão.

Permissão Descrição
Administrar permissões de compilação Pode alterar qualquer uma das outras permissões listadas aqui.
Excluir pipeline de build Pode excluir pipelines de build.
Excluir compilações Pode excluir builds para um pipeline. Os builds excluídos são mantidos na guia Excluídos por um período, antes de serem destruídos.
Destruir compilações Pode excluir builds da guia Excluído.
Editar o pipeline de build Pode criar pipelines e salvar quaisquer alterações em um pipeline de build, incluindo variáveis de configuração, gatilhos, repositórios e política de retenção.
Editar qualidade de compilação Pode adicionar marcas a um build.
Gerenciar qualidades de compilação Aplica-se somente a builds XAML
Gerenciar a fila de compilação Aplica-se somente a builds XAML
Substituir validação do check-in pela compilação Aplica-se a builds de check-in restrito do TFVC. Não se aplica a builds de solicitação de pull.
Enfileirar compilações Pode enfileirar novos builds.
Editar configuração de enfileiramento de builds Pode especificar valores para parâmetros de texto livre (por exemplo, do tipo object) e variáveis de pipeline ao enfileirar novos builds.
Reter indefinidamente Pode alternar o sinalizador de retenção indefinida em um build.
Interromper compilações Pode interromper builds enfileirados por outros membros da equipe ou pelo sistema.
Atualizar informações de compilação É recomendável não alterar esse recurso. Ele destina-se a habilitar contas de serviço, não membros da equipe.
Exibir pipeline de build Pode exibir pipelines de build.
Visualizar compilações Pode exibir builds pertencentes a pipelines de build.

Todos os membros da equipe são membros do grupo Colaboradores. Essa permissão de grupo possibilita definir e gerenciar builds e versões. Os grupos internos mais comuns incluem Leitores, Colaboradores e Administradores de Projetos.

Para obter mais informações, consulte os seguintes artigos:

Definir permissões de versão

As permissões para pipelines de lançamento seguem um modelo hierárquico. Você pode definir permissões padrão no nível de projeto e pode substituir essas permissões em um pipeline de lançamento individual.

Definir todas as permissões de versão

Execute as etapas a seguir para atualizar as permissões para todas as versões.

  1. Selecione a exibição de arquivo.

    Captura de tela mostrando a seleção da exibição de todos os arquivos.

  2. Selecione a pasta Todos os pipelines.

    Captura de tela mostrando a seleção de todas as pastas de pipelines.

  3. Selecione Mais ações e selecione Segurança.

  4. Defina as permissões e Salve suas alterações.

Definir permissões de versão individual

Execute as etapas a seguir para atualizar as permissões para uma versão individual.

  1. Selecione a versão que deseja modificar.

  2. Selecione Mais ações>Segurança.

  3. Defina as permissões e Salve suas alterações.

Para definir permissões no nível de projeto para todas as definições da versão em um projeto, abra o menu de atalho da lista suspensa

Para definir ou substituir as permissões de um pipeline de lançamento específico, abra o menu de atalho da lista suspensa, ícone ao lado desse nome de pipeline. Em seguida, escolha Segurança para abrir a caixa de diálogo Permissões.

Para especificar as configurações de segurança para fases individuais em um pipeline de lançamento, abra a caixa de diálogo Permissões, escolhendo Segurança no menu de atalho que será aberto em Mais ações em uma fase no editor de pipeline de lançamento.

Referência de permissões de versão

A tabela a seguir define permissões para versões. A coluna de escopo explica se a permissão pode ser definida no projeto, no pipeline de lançamento ou no nível de fase.

Permissão Descrição
Administrar permissões de versão Pode alterar qualquer uma das outras permissões listadas aqui.
Escopos: projeto, pipeline de lançamento, fase
Criar versões Pode criar novas versões.
Escopos: projeto, pipeline de lançamento
Editar pipeline de lançamento Pode editar pipelines de lançamento.
Escopos: projeto, pipeline de lançamento
Excluir fase de lançamento Pode excluir as fases em pipelines de lançamento.
Escopos: projeto, pipeline de lançamento, fase
Excluir versões Pode excluir versões de um pipeline.
Escopos: projeto, pipeline de lançamento
Editar pipeline de lançamento Pode salvar quaisquer alterações em um pipeline de lançamento, incluindo variáveis de configuração, gatilhos, artefatos e política de retenção, bem como a configuração em uma fase do pipeline de lançamento. Para atualizar uma fase específica em um pipeline de lançamento, o usuário também precisa da permissão Editar fase de versão.
Escopos: projeto, pipeline de lançamento
Editar fase de versão Pode editar as fases em pipelines de lançamento. Para salvar as alterações no pipeline de lançamento, o usuário também precisa da permissão Editar pipeline de lançamento. Essa permissão também controla se um usuário pode editar a configuração dentro da fase de uma instância de versão específica. O usuário também precisa da permissão Gerenciar versões para salvar a versão modificada.
Escopos: projeto, pipeline de lançamento, fase
Administrar implantações Pode iniciar uma implantação de uma versão em uma fase. Essa permissão é apenas para implantações iniciadas manualmente, selecionando as ações Implantar ou Reimplantar em uma versão. Se a condição em uma fase for definida como qualquer tipo de implantação automática, o sistema iniciará automaticamente a implantação sem verificar a permissão do usuário que criou a versão. Se a condição foi definida para ser iniciada após alguma fase, as implantações iniciadas manualmente não esperarão que essas fases sejam bem-sucedidas.
Escopos: projeto, pipeline de lançamento, fase
Gerenciar aprovadores de versão Pode adicionar ou editar aprovadores para fases em pipelines de lançamento. Essa permissão também controla se um usuário pode editar os aprovadores dentro da fase de uma instância de versão específica.
Escopos: projeto, pipeline de lançamento, fase
Gerenciar versões Pode editar a configuração em versões. Para editar a configuração de uma fase específica em uma instância de versão (incluindo variáveis marcadas como settable at release time), o usuário também precisa da permissão Editar fase de versão.
Escopos: projeto, pipeline de lançamento
Visualizar pipeline de lançamento Pode visualizar pipelines de lançamento.
Escopos: projeto, pipeline de lançamento
Exibir versões Pode exibir versões pertencentes a pipelines de lançamento.
Escopos: projeto, pipeline de lançamento

Os valores padrão para todas as permissões são definidos para coleções de projetos de equipe e grupos de projetos. Por exemplo, administradores de coleção de projetos, administradores de projeto e administradores de versão recebem todas as permissões listadas anteriormente por padrão. Os colaboradores recebem todas as permissões, exceto Administrar permissões de versão. Por padrão, os Leitores têm todas as permissões negadas, exceto Exibir pipeline de versão e Exibir versões.

Definir permissões de grupo de tarefas

Use os grupos de tarefas para combinar uma sequência de tarefas já definidas em um pipeline em uma única tarefa reutilizável.

As permissões do grupo de tarefas seguem um modelo hierárquico. Você pode definir permissões padrão no nível de projeto e pode substituir essas permissões em um pipeline de grupo de tarefas individual.

Definir permissões de grupo de tarefas no nível de projeto

Execute as etapas a seguir para atualizar permissões para grupos de tarefas no nível de projeto.

Observação

Não há suporte para grupos de tarefas em pipelines YAML, mas modelos sim. Para obter mais informações, confira Referência de esquema.

  1. No seu projeto, selecione Pipelines>Grupos de tarefas.

    Item de menu Localizar grupo de tarefas.

  2. Selecione Segurança.

    Selecione a opção Segurança para um grupo de tarefas.

  3. Selecione Permitir ou Negar para a permissão de um grupo de segurança ou um usuário individual.

Definir permissões de grupo de tarefas no nível de pipeline

Execute as etapas a seguir para atualizar permissões para grupos de tarefas no nível de pipeline.

  1. No seu projeto, selecione Pipelines>Grupos de tarefas.

    Item de menu Localizar grupo de tarefas.

  2. Selecionar um grupo de tarefas.

  3. Selecione Mais ações>Segurança.

  4. Selecione Permitir ou Negar para a permissão de um grupo de segurança ou um usuário individual.

Referência de permissões do grupo de tarefas

Permissão Descrição
Administrar permissões de grupo de tarefas Pode adicionar e remover usuários ou grupos à segurança do grupo de tarefas.
Excluir grupo de tarefas Pode excluir um grupo de tarefas.
Editar grupo de tarefas Pode criar, modificar ou excluir um grupo de tarefas.

Definir permissões de pool de agentes

Você pode usar funções predefinidas para configurar a segurança em pools de agentes de maneira hierárquica para todos os pools ou para um pool individual. Execute as etapas a seguir para definir permissões de pool de agentes para todos os pools.

Definir todas as permissões de pool de agentes

Execute as etapas a seguir para atualizar as permissões para todos os pools de agentes.

  1. No seu projeto, selecione Configurações de projeto>Pools de agentes.

  2. Selecione Segurança.

    Configurar segurança do pool de agentes.

  3. Defina as permissões e Salve suas alterações.

Definir permissões de pool de agentes individuais

Execute as etapas a seguir para definir permissões para um pool de agentes individual.

  1. No pool de agentes, selecione o agente.

  2. Selecione Segurança.

    Definir segurança para um pool de agentes.

  3. Defina as permissões e Salve suas alterações.

Definir permissões de biblioteca

Use um grupo de variáveis para armazenar valores que você deseja disponibilizar em vários builds pipelines de lançamento. Defina funções para ajudar a configurar a segurança em entidades de biblioteca compartilhadas. Você também pode configurar a herança das funções.

Execute as etapas a seguir para gerenciar permissões para artefatos de biblioteca, como grupos de variáveis e arquivos seguros.

  1. No seu projeto, selecione Pipelines>Biblioteca.

    Opção de menu Abrir a biblioteca.

  2. Selecione Segurança.

    Opção Segurança em Biblioteca.

  3. Defina permissões para tudo na sua biblioteca ou para um grupo de variáveis individual ou arquivo seguro e salve suas alterações.

Referência de permissões de biblioteca

Função Descrição
Administrador Pode editar/excluir e gerenciar a segurança para itens de biblioteca.
Criador Pode criar itens de biblioteca.
Leitor Só pode ler os itens de biblioteca.
Usuário Pode consumir itens de biblioteca em pipelines.

Definir permissões de conexão de serviço

Configure permissões para todas as conexões de serviço ou para uma conexão individual.

Definir todas as permissões de conexão de serviço

Execute as etapas a seguir para configurar permissões para todas as conexões de serviço.

  1. No seu projeto, selecione Configurações de projeto.
  2. Selecione Conexões de serviço em Pipelines.
  3. Defina as permissões e Salve suas alterações.

Definir permissões de conexão de serviço individuais

Execute as etapas a seguir para configurar permissões para uma conexão de serviço individual.

  1. No projeto, abra uma conexão de serviço.

  2. Selecione Mais ações>Segurança.

  3. Defina as permissões e Salve suas alterações.

    Selecionar a opção de conexão do serviço de segurança.

Adicione usuários às seguintes funções a partir do contexto de administrador no nível de projeto, página Serviços. Para obter mais informações sobre como criar e gerenciar esses recursos, confira Conexões de serviço para build e versão.

Se você estiver tendo problemas com permissões e conexões de serviço, confira Solucionar problemas de conexões de serviço do Azure Resource Manager.

Definir referência de permissões de conexão

Função Descrição
Usuário Pode usar o ponto de extremidade ao criar pipelines de build ou de lançamento.
Administrador Pode gerenciar a associação de todas as outras funções para a conexão de serviço, bem como usar o ponto de extremidade para criar pipelines de build ou de lançamento. O sistema adiciona automaticamente o usuário que criou a conexão de serviço à função administrador para esse pool.

Definir permissões de pool de implantação

Você pode definir funções de segurança padrão para todos os grupos de implantação e gerenciar funções de segurança para um grupo de implantação individual.

Definir todas as permissões de pool de implantação

  1. No seu projeto, selecione Configurações de projeto.

  2. Selecione Grupos de implantação em Pipelines.

  3. Defina as permissões e Salve suas alterações.

    Selecionar Segurança para gerenciar permissões de grupo de implantação padrão.

Definir permissões individuais do grupo de implantação

  1. No projeto, abra um pool de implantação.
  2. Selecione Mais ações>Segurança.
  3. Defina as permissões e Salve suas alterações.

Referência de permissões de pool de implantação

Função Descrição
Leitor Só pode exibir pools de implantação.
Conta de Serviço Pode exibir agentes, criar sessões e escutar trabalhos do pool de agentes.
Usuário Pode exibir e usar o pool de implantação para criar grupos de implantação.
Administrador Pode administrar, gerenciar, exibir e usar pools de implantação.

Definir permissões de ambiente

Você pode usar funções e permissões de usuário para controlar quem pode criar, exibir e gerenciar ambientes. Aplique uma hierarquia de funções a todos os ambientes ou a um ambiente.

Definir todas as permissões de ambiente

  1. No seu projeto, selecione Configurações de projeto.

  2. Selecione Ambientes em Pipelines.

  3. Defina as permissões e Salve suas alterações.

    Selecionar Ambientes.

Definir permissões de ambiente individuais

Selecione Segurança em Mais ações para alterar permissões para todos os ambientes.

  1. No seu projeto, abra um ambiente.
  2. Selecione Mais ações>Segurança.
  3. Defina as permissões e Salve suas alterações.

Referência de permissões de ambiente

Função Descrição
Criador Função global, disponível na opção de segurança do hub de ambientes. Os membros dessa função podem criar o ambiente no projeto. Os colaboradores são adicionados como membros por padrão. Necessário para disparar um pipeline YAML quando o ambiente ainda não existir.
Leitor Os membros dessa função podem exibir o ambiente.
Usuário Os membros dessa função podem usar o ambiente ao criar ou editar pipelines YAML.
Administrador Os membros dessa função podem administrar permissões, criar, gerenciar, exibir e usar ambientes. Para um ambiente específico, seu criador é adicionado como Admininistrator por padrão. Os administradores também podem abrir o acesso a um ambiente para todos os pipelines.

Importante

Quando você cria um ambiente, somente o criador tem a função de administrador.

Função Descrição
Criador Função global, disponível na opção de segurança do hub de ambientes. Os membros dessa função podem criar o ambiente no projeto. Os colaboradores são adicionados como membros por padrão. Necessário para disparar um pipeline YAML quando o ambiente ainda não existir.
Leitor Os membros dessa função podem exibir o ambiente.
Usuário Os membros dessa função podem usar o ambiente ao criar ou editar pipelines YAML.
Administrador Além de usar o ambiente, os membros dessa função podem gerenciar a associação de todas as outras funções para o ambiente. Os criadores são adicionados como membros por padrão.

Perguntas frequentes

Confira as perguntas frequentes a seguir sobre permissões de pipeline.

P: por que não consigo criar um pipeline?

R: você precisa de permissões Editar pipeline de build para criar um pipeline. Para adicionar permissão, abra as configurações de segurança para todos os pipelines e verifique se Editar pipeline de build está definido como Permitir para seu grupo de segurança.

Se você ainda não conseguir criar um pipeline, verifique se o nível de acesso está definido como Stakeholder. Se você tiver acesso de stakeholder, altere seu acesso para Básico.

P: por que vejo a mensagem de que preciso autorizar um recurso para que a execução possa continuar?

R: você precisa autorizar os recursos antes de usá-los. A exceção a essa regra é quando você cria um pipeline pela primeira vez e todos os recursos referenciados no arquivo YAML são automaticamente autorizados. Os recursos são autorizados para o pipeline, desde que o usuário que executa o pipeline tenha acesso ao recurso.

Para autorizar todos os pipelines a acessar um recurso como um pool de agentes, execute as etapas a seguir.

  1. No seu projeto, selecione Configurações>Pipelines>Pools de Agentes.

  2. Selecione Segurança para um pool de agentes específico e, em seguida, atualize as permissões para conceder acesso a todos os pipelines.

    Conceder permissões a todos os pipelines.

    Para saber mais, confira Recursos no YAML.