Skip to main content

Gerenciando as funções de repositórios personalizados para uma organização

Você pode controlar o acesso aos repositórios da sua organização de forma mais granular, criando funções de repositório personalizadas.

Organization owners can manage custom repository roles.

Sobre as funções personalizadas do repositório

Para executar quaisquer ações em GitHub Enterprise Cloud, como criar um pull request em um repositório ou alterar as configurações de cobrança de uma organização, uma pessoa deve ter acesso suficiente à conta ou recurso relevante. This access is controlled by permissions. A permission is the ability to perform a specific action. For example, the ability to delete an issue is a permission. A role is a set of permissions you can assign to individuals or teams.

Dentro de uma organização, você pode atribuir funções ao nível da organização, equipe e repositório. Para obter mais informações sobre os diferentes níveis de funções, consulte "Funções em uma organização".

Você pode ter um controle mais granular sobre as permissões que você concede no nível de repositório, criando até três funções personalizadas de repositório. Uma função de repositório personalizado é um conjunto configurável de permissões com um nome personalizado que você escolheu. Depois de criar um cargo personalizado, qualquer pessoa com acesso de administrador a um repositório pode atribuir a função a um indivíduo ou equipe. Para obter mais informações, consulte "Gerenciando o acesso de um indivíduo ao repositório de uma organização" e "Gerenciando o acesso da equipe ao repositório de uma organização"

Sobre a função herdada

Ao criar uma função de repositório personalizado, você começa escolhendo uma função herdada de um conjunto de opções predefinidas. A função herdada determina o conjunto inicial de permissões incluídas na função personalizada. Em seguida, você pode personalizar ainda mais a função escolhendo as permissões adicionais para dar à função. Para obter a lista completa das permissões disponíveis, consulte "Permissões adicionais para as funções personalizadas. "

As suas opções para a função herdada são padronizadas para diferentes tipos de contribuidores do seu repositório.

Função herdadaProjetada para
LeituraContribuidores sem código que querem ver ou discutir seu projeto.
TriagemOs colaboradores que precisam gerenciar proativamente problemas e pull requests sem acesso de gravação.
GravaçãoIntegrantes e colaboradores da organização que fazem push ativamente no seu projeto.
ManutençãoGerentes de projeto que precisam gerenciar o repositório sem acesso a ações sensíveis ou destrutivas.

Exemplos de funções personalizadas

Aqui estão alguns exemplos de funções de repositórios personalizados que você pode configurar.

Função do repositório personalizadoSumárioFunção herdadaPermissões adicionais
Engenheiro de segurançaCapaz de contribuir com código e manter o pipeline de segurançaManutençãoExcluir resultados da varredura de código
ContratadoCapaz de desenvolver integrações de webhooksGravaçãoGerenciar webhooks
Gerente de comunidadeCapaz de lidar com todas as interações da comunidade sem ser capaz de contribuir com códigoLeitura- Marcar um problema como duplicado
- Gerenciar configurações da Página do GitHub
- Gerenciar configurações da wiki
- Definir a visualização social
- Editar metadados
- Triar discussões

Permissões adicionais para funções personalizadas

Depois de escolher uma função herdada, você poderá selecionar as permissões adicionais para a sua função personalizada.

Você só pode escolher uma permissão adicional se já não estiver incluída na função herdada. Por exemplo, se a função herdada oferece acesso de Gravação a um repositório, a permissão "Fechar uma pull request" já estará incluída na função herdada.

Discussions

Problemas e Pull Requests

  • Atribuir ou remover um usuário: Atribua um usuário a um problema ou pull request ou remova um usuário de um problema ou pull request.
  • Adicionar ou remover um rótulo: Adicione uma etiqueta a um problema ou um pull request ou remova uma etiqueta de um problema ou pull request.

Problema

  • Feche um problema
  • Reabra um problema fechado
  • Exclua um problema
  • Marque um problema como duplicado

Pull Request

  • Feche um pull request
  • Reabrir um pull request fechado
  • Solicitar uma revisão de pull request: Solicitar uma revisão de um usuário ou equipe.

Repositório

  • Definir marcos: Adicionar marcos a um problema ou pull request.
  • Gerenciar configurações de wiki: Ative wikis para um repositório.
  • Gerenciar configurações do projeto: Ativando projetos para um repositório.
  • Gerenciar configurações de merge do pull request: Escolha o tipo de commits de merge permitidos no seu repositório, tais como merge, combinação por squash ou rebase.
  • Gerenciar as configurações de GitHub Pages: Permitir GitHub Pages para o repositório e selecione o branch que você deseja publicar. Para obter mais informações, consulte "Configurar uma fonte de publicação para seu site do GitHub Pages".
  • Gerenciar webhooks: Adicione webhooks ao repositório.
  • Gerenciar chaves de implantação: Adicione chaves de deploy ao repositório.
  • Editar os metadados do repositório: Atualize a descrição do repositório, bem como os tópicos do repositório.
  • Definir limites de interação: Restrinja temporariamente certos usuários de comentários, problemas de abertura ou criação de pull requests no seu repositório público para aplicar um período de atividade limitada. Para obter mais informações, consulte "Restringir interações no seu repositório".
  • Defina a visualização social: Adicione uma imagem de identificação ao repositório que aparece nas plataformas de mídia social quando seu repositório é vinculado. Para obter mais informações, consulte "Personalizar a exibição das redes sociais do repositório".
  • Faça push commits para branches protegidos: Faça push para um branch que é marcado como um branch protegido.
  • Crie etiquetas protegidas: Crie etiquetas que correspondam a uma regra de proteção de tags. Para obter mais informações, consulte "Configurando regras de proteção de tagsde".
  • Excluir tags protegidas: Excluir tags que correspondam a uma regra de proteção de tags. Para obter mais informações, consulte "Configurando regras de proteção de tagsde".

Segurança

  • Ver resultados de Varredura de código: Habilidade de ver alertas de Varredura de código.
  • Ignorar ou reabrir Varredura de código resultados: Habilidade de ignorar ou reabrir alertas de Varredura de código.
  • Excluir Varredura de código resultados: Habilidade de excluir alertas de Varredura de código.
  • Visualizar Alertas do Dependabot: Habilidade de visualizar Alertas do Dependabot.
  • Ignorarou reabrir Alertas do Dependabot: Habilidade de ignorar ou reabrir Alertas do Dependabot.
  • Visualizar varredura secreta resultados: Habilidade de visualizar alertas de varredura secreta.
  • Ignorar ou reabrir varredura secreta resultados: Habilidade de ignorar ou reabrir alertas de varredura secreta.

Precedência para diferentes níveis de acesso

Se uma pessoa receber diferentes níveis de acesso por meio de caminhos diferentes como, por exemplo, a associação a uma equipe e as permissões básicas para uma organização, o maior acesso substitui os outros. Por exemplo, se um proprietário da organização dá a um integrante da organização uma função personalizada que use a função de "ler" herdada e, em seguida, o proprietário da organização definir a permissão de base da organização para "gravar", essa função personalizada terá acesso de gravação, junto com quaisquer permissões adicionais incluídas na função personalizada.

If a person has been given conflicting access, you'll see a warning on the repository access page. The warning appears with " Mixed roles" next to the person with the conflicting access. To see the source of the conflicting access, hover over the warning icon or click Mixed roles.

Para resolver o acesso conflitante, você pode ajustar as permissões básicas da sua organização ou o acesso da equipe ou editar a função personalizada. Para obter mais informações, consulte:

Criando a função de um repositório

Para criar uma nova função do repositório, você deve adicionar permissões a uma função herdada e dar um nome à função personalizada.

Nota: Somente organizações que usam GitHub Enterprise Cloud podem criar funções de repositório personalizadas. For more information about how you can try GitHub Enterprise Cloud for free, see "Setting up a trial of GitHub Enterprise Cloud."

  1. In the top right corner of GitHub.com, click your profile photo, then click Your profile. Foto de perfil
  2. In the top right corner of GitHub.com, click your profile photo, then click Your organizations. Suas organizações no menu de perfil
  3. Abaixo do nome da sua organização, clique em Settings. Botão de configurações da organização
  4. Under "Organizations", next to the name of your organization, click Settings. Screenshot of an organization next to the "Settings" button
  5. In the "Access" section of the sidebar, click Repository roles.
  6. Clique Criar uma função. Captura de tela do botão "Criar uma função"
  7. Em "Nome", digite o nome da função do seu repositório. Campo para digitar um nome para a função de um repositório
  8. Em "Descrição", digite uma descrição da função do repositório. Campo para digitar uma descrição para o papel do repositório
  9. Em "Escolha uma função para herdar", selecione a função que deseja herdar. Selecionando a opção da função de base do repositório
  10. Em "Adicionar permissões", use o menu suspenso para selecionar as permissões que você deseja que a sua função personalizada inclua. Selecionando níveis de permissão da função a partir do menu suspenso da função do repositório
  11. Clique em Criar função. Confirmar a criação de função de repositório

Editando a função de um repositório

  1. In the top right corner of GitHub.com, click your profile photo, then click Your profile. Foto de perfil
  2. In the top right corner of GitHub.com, click your profile photo, then click Your organizations. Suas organizações no menu de perfil
  3. Abaixo do nome da sua organização, clique em Settings. Botão de configurações da organização
  4. Under "Organizations", next to the name of your organization, click Settings. Screenshot of an organization next to the "Settings" button
  5. In the "Access" section of the sidebar, click Repository roles.
  6. À direita da função que você deseja editar, clique em e, em seguida, clique em Editar. Editar opção no menu suspenso para funções de repositório
  7. Edite e, em seguida, clique em Atualizar função. Editar campos e atualizar funções do repositório

Excluindo a função de um repositório

Se você excluir a função de um repositório existente, todos os convites pendentes, equipes e usuários com a função personalizada serão reatribuidos às permissões básicas da organização.

  1. In the top right corner of GitHub.com, click your profile photo, then click Your profile. Foto de perfil
  2. In the top right corner of GitHub.com, click your profile photo, then click Your organizations. Suas organizações no menu de perfil
  3. Abaixo do nome da sua organização, clique em Settings. Botão de configurações da organização
  4. Under "Organizations", next to the name of your organization, click Settings. Screenshot of an organization next to the "Settings" button
  5. In the "Access" section of the sidebar, click Repository roles.
  6. À direita da função que você deseja excluir, clique em e, em seguida, clique em Excluir. Editar opção no menu suspenso para funções de repositório
  7. Revise as alterações para a função que você deseja remover e, em seguida, clique em Excluir função. Confirme a exclusão de uma função do repositório