Definir as permissões do repositório do Git

Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019

Você concede ou restringe o acesso a repositórios para bloquear quem pode contribuir com seu código-fonte e gerenciar outros recursos. Você pode definir permissões em todos os repositórios Git fazendo alterações na entrada de repositórios Git de nível superior. Os repositórios individuais herdam permissões da entrada Repositórios Git de nível superior.

Nota

As ramificações herdam um subconjunto de permissões de atribuições feitas no nível do repositório. Para permissões e políticas de filial, consulte Definir permissões de filial e Melhorar a qualidade do código com políticas de filial.

Para obter orientação sobre quem fornecer níveis de permissão maiores, consulte Conceder ou restringir acesso usando permissões.

Pré-requisitos

Para contribuir para o código fonte, deve ser-lhe concedido um nível de acesso Básico ou superior. Os usuários com acesso às partes interessadas para projetos privados não têm acesso ao código-fonte. Os usuários que receberam acesso de Partes Interessadas para projetos públicos têm o mesmo acesso que os Colaboradores e aqueles que recebem acesso Básico . Para saber mais, consulte Sobre níveis de acesso.

Para contribuir para o código fonte, deve ser-lhe concedido um nível de acesso Básico ou superior. Os usuários com acesso às partes interessadas não têm acesso ao código-fonte. Para saber mais, consulte Sobre níveis de acesso.

Permissões padrão do repositório

Por padrão, os membros do grupo de Colaboradores do projeto têm permissões para contribuir com um repositório. Isso inclui a capacidade de criar ramificações, criar tags e gerenciar notas. Para obter uma descrição de cada grupo de segurança e nível de permissão, consulte Permissões e referência de grupo.

Permissão

Leitores

Contribuidores

Administradores de compilação

Administradores de Projeto


Ler (clonar, buscar e explorar o conteúdo de um repositório); também pode criar, comentar, votar e contribuir para receber solicitações

✔️

✔️

✔️

✔️

Contribua, crie ramificações, crie tags e gerencie anotações

✔️

✔️

✔️

Criar repositório, Excluir repositório e Renomear repositório

✔️

Editar políticas, Gerenciar permissões, Remover bloqueios de outras pessoas

✔️

Ignorar políticas ao concluir solicitações pull, Ignorar políticas ao push, Force push (reescrever histórico, excluir ramificações e tags)
(não definido para nenhum grupo de segurança)


A partir do Azure DevOps sprint 224 (Azure DevOps Services e Azure DevOps Server 2022.1 e superior), a permissão Editar políticas não é mais concedida automaticamente aos criadores de filiais. Anteriormente, quando criava um novo ramo, era-lhe concedida a permissão para editar políticas nesse ramo. Com essa atualização, estamos alterando o comportamento padrão para não conceder essa permissão, mesmo que a configuração de gerenciamento de permissões esteja ativada para o repositório. Você precisará da permissão Editar políticas concedida explicitamente (manualmente ou por meio da API REST) por herança de permissão de segurança ou por meio de uma associação de grupo.

Segurança aberta para um repositório

Você define as permissões do repositório Git a partir dos repositórios de configurações>do projeto.

  1. Abra o portal da Web e escolha o projeto onde deseja adicionar usuários ou grupos. Para escolher outro projeto, consulte Switch project, repository, team.

  2. Abra Repositórios de configurações>do projeto.

    Para definir as permissões para todos os repositórios Git, escolha Segurança.

    Por exemplo, aqui escolhemos (1) Configurações do projeto, (2) Repositórios e, em seguida, (3) Segurança.

    Captura de tela mostrando como escolher Configurações>do projeto Segurança de repositórios>.

  3. Caso contrário, para definir permissões para um repositório específico, escolha (1) o repositório e, em seguida, escolha (2) Segurança.

    Captura de tela mostrando a escolha das configurações>do projeto Escolha um repositório>Segurança.

Definir permissões para um repositório

Você pode conceder ou restringir o acesso a um repositório definindo o estado de permissão como Permitir ou Negar para um único usuário ou um grupo de segurança.

  1. Abra o portal da Web e escolha o projeto onde deseja adicionar usuários ou grupos. Para escolher outro projeto, consulte Switch project, repository, team.

  2. Para definir as permissões para todos os repositórios Git para um projeto, escolha Repositórios Git e, em seguida, escolha o grupo de segurança cujas permissões você deseja gerenciar.

    Por exemplo, aqui escolhemos (1) Configurações do projeto, (2) Repositórios, (3) repositórios Git, (4) o grupo de Colaboradores e, em seguida, (5) a permissão para Criar repositório.

    Para ver a imagem completa, clique na imagem para expandir. Escolha o ícone fechar ícone de fechar para fechar.

    Configurações do>projeto Repositórios de código>Repositórios>>Git Segurança

    Nota

    Talvez você não consiga encontrar um usuário em uma página de permissões ou campo de identidade se o usuário não tiver sido adicionado ao projeto, seja adicionando-o a um grupo de segurança ou a uma equipe de projeto. Além disso, quando um usuário é adicionado ao Microsoft Entra ID ou ao Ative Directory, pode haver um atraso entre o momento em que ele é adicionado ao projeto e quando ele pode ser pesquisado a partir de um campo de identidade. O atraso pode ser entre 5 minutos a 7 dias.

    Caso contrário, escolha um repositório específico e escolha o grupo de segurança cujas permissões você deseja gerenciar.

    Nota

    Se você adicionar um usuário ou grupo e não alterar nenhuma permissão para esse usuário ou grupo, após a atualização da página de permissões, o usuário ou grupo adicionado não aparecerá mais.

  3. Quando terminar, escolha Salvar alterações.

Alterar permissões para um grupo de segurança

Para definir permissões para um grupo de segurança personalizado, você deve ter definido esse grupo anteriormente. Consulte Definir permissões no nível do projeto.

  1. Para definir permissões para um grupo específico, escolha o grupo. Por exemplo, aqui escolhemos o grupo de Colaboradores.

    Captura de ecrã a mostrar a escolha do grupo de Colaboradores.

  2. Altere uma ou mais permissões. Para conceder permissões, altere Não definido para Permitir. Para restringir permissões, altere Permitir para Negar.

    Captura de tela mostrando três permissões alteradas para o grupo de Colaboradores.

  3. Quando terminar, navegue para fora da página. As alterações de permissão são salvas automaticamente para o grupo selecionado.

Definir permissões para um usuário específico

  1. Para definir permissões para um usuário específico, insira o nome do usuário no filtro de pesquisa e selecione entre as identidades exibidas.

    Adicionar usuário ou grupo

    Em seguida, faça as alterações no conjunto de permissões.

    Nota

    Talvez você não consiga encontrar um usuário em uma página de permissões ou campo de identidade se o usuário não tiver sido adicionado ao projeto, seja adicionando-o a um grupo de segurança ou a uma equipe de projeto. Além disso, quando um usuário é adicionado ao Microsoft Entra ID ou ao Ative Directory, pode haver um atraso entre o momento em que ele é adicionado ao projeto e quando ele pode ser pesquisado a partir de um campo de identidade. O atraso pode ser entre 5 minutos a 7 dias.

  2. Quando terminar, navegue para fora da página. As alterações de permissão são salvas automaticamente para o grupo selecionado.

Nota

Se você adicionar um usuário ou grupo e não alterar nenhuma permissão para esse usuário ou grupo, após a atualização da página de permissões, o usuário ou grupo adicionado não aparecerá mais.

Habilitar ou desabilitar a herança para um repositório específico

  • Para habilitar ou desabilitar a herança para um repositório específico, selecione o repositório e mova o controle deslizante Herança para uma posição ativada ou desativada.

    Habilite ou desabilite a herança para um repositório específico.

    Para saber mais sobre herança, consulte Sobre permissões e grupos, Herança e grupos de segurança.

Isento da imposição de políticas e ignorar permissões de política

Há muitos cenários em que você tem a necessidade ocasional de ignorar uma política de ramificação. Por exemplo, ao reverter uma alteração que causou uma quebra de compilação ou aplicar um hotfix no meio da noite. Anteriormente, a permissão Isentar da imposição de políticas ajudava as equipes a gerenciar quais usuários recebiam a capacidade de ignorar as políticas de ramificação ao concluir uma solicitação pull. No entanto, essa permissão também concedeu a capacidade de empurrar diretamente para a filial, ignorando totalmente o processo de RP.

Para melhorar essa experiência, dividimos a permissão Isentar da aplicação de políticas para oferecer mais controle às equipes que estão concedendo permissões de desvio. As duas permissões a seguir substituem a permissão anterior:

  • Ignore as políticas ao concluir solicitações pull. Os usuários com essa permissão poderão usar a experiência "Substituir" para solicitações pull.
  • Ignore as políticas ao enviar por push. Os usuários com essa permissão poderão enviar diretamente para ramificações que tenham políticas necessárias configuradas.

Ao conceder a primeira permissão e negar a segunda, um usuário pode usar a opção de bypass quando necessário, mas ainda terá a proteção contra empurrar acidentalmente para uma ramificação com políticas.

Nota

Esta alteração não introduz quaisquer alterações de comportamento. Os usuários que anteriormente recebiam Permitir isenção da aplicação de políticas recebem Permitir para ambas as novas permissões, portanto, eles poderão substituir a conclusão em RPs e enviar diretamente para ramificações com políticas.