Skip to main content

Aplicando políticas para o GitHub Actions na sua empresa

Você pode exigir políticas para GitHub Actions dentro das organizações de sua empresa ou permitir que as políticas sejam definidas em cada organização.

Quem pode usar esse recurso?

Enterprise owners can enforce policies for GitHub Actions in an enterprise.

Sobre as políticas para GitHub Actions na sua empresa

GitHub Actions ajuda os inetgrantes da sua empresa a automatizar os fluxos de trabalho de desenvolvimento de software em GitHub Enterprise Server. Para obter mais informações, confira "Entendendo o GitHub Actions".

Se o GitHub Actions for habilitado, qualquer organização no sua instância do GitHub Enterprise Server pode usar o GitHub Actions. Você pode aplicar políticas para controlar como os integrantes da sua empresa em GitHub Enterprise Server usam GitHub Actions. Por padrão, os proprietários da organização podem gerenciar como os integrantes usam GitHub Actions. Para obter mais informações, confira "Desabilitar ou limitar o GitHub Actions para sua organização".

Como impor uma política para restringir o uso do GitHub Actions na sua empresa

Você pode optar por desativar GitHub Actions para todas as organizações da sua empresa ou permitir apenas organizações específicas. Você também pode limitar o uso de ações públicas , para que as pessoas só possam usar as ações locais existentes na empresa.

  1. No canto superior à direita de GitHub Enterprise Server, clique na sua foto do perfil e clique em Configurações da empresa.

    Captura de tela do menu suspenso que aparece quando você clica na foto de perfil no GitHub Enterprise Server. A opção "Configurações da empresa" está realçada em um contorno laranja escuro.

  2. Na barra lateral da empresa, clique em Políticas.

  3. Em " Políticas", clique em Ações.

  4. Em "Políticas", selecione suas opções.

    Se você escolher Permitir ações selecionadas, as ações na empresa serão permitidos, e haverá opções adicionais para permitir outras ações específicos. Para obter mais informações, confira "Como permitir a execução de ações selecionados".

Observação: para habilitar o acesso a ações públicas, é necessário primeiro configurar o sua instância do GitHub Enterprise Server para conectar-se ao GitHub.com. Para obter mais informações, confira "Habilitar o acesso automático a GitHub.com usando o GitHub Connect".

1. Clique em **Save** (Salvar).

Permitindo a execução de ações selecionadas

Quando você escolhe Permitir ações selecionadas, as ações locais são permitidos e há opções adicionais para permitir outras ações específicas:

  • Permitir ações criadas pelo GitHub: você pode permitir que todas as ações criadas pelo GitHub sejam usadas por fluxos de trabalho. As ações criadas pelo GitHub estão localizadas nas organizações actions e github. Para obter mais informações, confira actions e organizações github.

  • Permitir ações do Marketplace de criadores verificados: Essa opção ficará disponível se você tiver o GitHub Connect habilitado e configurado com o GitHub Actions. Para obter mais informações, confira "Habilitar o acesso automático a GitHub.com usando o GitHub Connect". Você pode permitir que todas as ações do GitHub Marketplace criadas por criadores verificados sejam usadas por fluxos de trabalho. Quando o GitHub verificou o criador da ação como uma organização parceira, o selo de é exibido ao lado da ação em GitHub Marketplace.

  • Permitir ações especificadas: você pode restringir os fluxos de trabalho a usar ações em organizações e repositórios específicos. Não é possível configurar mais de 1000 ações especificadas.

    Para restringir o acesso a tags ou SHAs de commit específicos de uma ação, use a mesma sintaxe usada no fluxo de trabalho para selecionar a ação.

    • Para uma ação, a sintaxe é OWNER/REPOSITORY@TAG-OR-SHA. Por exemplo, use actions/javascript-action@v1.0.1 para selecionar uma tag ou actions/javascript-action@a824008085750b8e136effc585c3cd6082bd575f para selecionar um SHA. Para obter mais informações, confira "Procurar e personalizar ações".

    Você pode usar o caractere curinga * para fazer a correspondência de padrões. Por exemplo, para permitir todas as ações em organizações que começam com space-org, especifique space-org*/*. Para permitir todas as ações em repositórios que começam com octocat, use */octocat**@*. Para saber mais sobre o uso do caractere curinga *, confira "Sintaxe de fluxo de trabalho para o GitHub Actions".

Este procedimento demonstra como adicionar ações específicos à lista de permissões.

  1. No canto superior à direita de GitHub Enterprise Server, clique na sua foto do perfil e clique em Configurações da empresa.

    Captura de tela do menu suspenso que aparece quando você clica na foto de perfil no GitHub Enterprise Server. A opção "Configurações da empresa" está realçada em um contorno laranja escuro.

  2. Na barra lateral da empresa, clique em Políticas.

  3. Em " Políticas", clique em Ações.

  4. Em "Políticas", selecione Permitir ações selecionadas e adicione as ações necessárias à lista.

Como desabilitar executores auto-hospedados no nível do repositório

Não há garantia de que executores auto-hospedados para GitHub Enterprise Server serão hospedados em máquinas virtuais efêmeras e limpas. Como resultado, eles podem ficar comprometidos por código não confiável em um fluxo de trabalho.

Da mesma forma, qualquer pessoa que possa criar um fork do repositório e abrir uma solicitação de pull (geralmente aqueles com acesso de leitura no repositório) pode comprometer o ambiente do executor auto-hospedado, incluindo a obtenção do acesso a segredos e ao GITHUB_TOKEN que, dependendo das configurações, pode permitir o acesso de gravação no repositório. Embora os fluxos de trabalho possam controlar o acesso a segredos de ambiente usando os ambientes e revisões necessários, estes fluxos de trabalho não são executados em um ambiente isolado e continuam sendo susceptíveis aos mesmos riscos quando são executados por um executor auto-hospedado.

Por esses e outros motivos, você pode decidir impedir que as pessoas criem executores auto-hospedados no nível do repositório. Para obter mais informações sobre como criar executores auto-hospedados no nível do repositório, confira "Adicionar executores auto-hospedados".

Por padrão, qualquer pessoa com acesso de administrador a um repositório pode adicionar um executor auto-hospedado para o repositório. As configurações corporativas permitem desabilitar o uso de executores auto-hospedados no nível do repositório em todos os repositórios da sua empresa. Se você permitir executores auto-hospedados no nível do repositório para sua empresa, os proprietários da organização poderão optar por permitir ou impedir a criação de executores auto-hospedados no nível do repositório para alguns ou todos os repositórios em sua organização. Para obter mais informações, confira "Desabilitar ou limitar o GitHub Actions para sua organização".

Observação: quando a criação de executores auto-hospedados no nível do repositório está desabilitada, os fluxos de trabalho ainda podem acessar executores auto-hospedados que foram configurados no nível da empresa ou da organização.

  1. No canto superior à direita de GitHub Enterprise Server, clique na sua foto do perfil e clique em Configurações da empresa.

    Captura de tela do menu suspenso que aparece quando você clica na foto de perfil no GitHub Enterprise Server. A opção "Configurações da empresa" está realçada em um contorno laranja escuro.

  2. Na barra lateral da empresa, clique em Políticas.

  3. Em " Políticas", clique em Ações.

  4. Na seção "Executores", selecione Desabilitar para todas as organizações.

  5. Clique em Salvar para aplicar a alteração.

Aplicando uma política de artefato e registrando a retenção na sua empresa

GitHub Actions pode armazenar artefatos e arquivos de registro. Para obter mais informações, confira "Fazer o download de artefatos do fluxo de trabalho".

Por padrão, os artefatos e arquivos de registro gerados pelos fluxos de trabalho são mantidos por 90 dias antes de ser excluídos automaticamente. Você pode alterar esse período de retenção para um valor entre 1 dia e 400 dias.

Ao personalizar o período de retenção, ele só se aplica a novos artefatos e arquivos de registro e não se aplica retroativamente aos objetos existentes. Para repositórios e organizações gerenciadas, o período máximo de retenção não pode exceder o limite definido pela organização gerenciadora ou pela empresa.

  1. No canto superior à direita de GitHub Enterprise Server, clique na sua foto do perfil e clique em Configurações da empresa.

    Captura de tela do menu suspenso que aparece quando você clica na foto de perfil no GitHub Enterprise Server. A opção "Configurações da empresa" está realçada em um contorno laranja escuro.

  2. Na barra lateral da empresa, clique em Políticas.

  3. Em " Políticas", clique em Ações.

  4. Na seção "Artefato, log e configurações de cache", em Artefato e retenção de log, insira um novo valor.

  5. Clique em Salvar para aplicar a alteração.

Aplicando uma política para bifurcar pull requests na sua empresa

É possível aplicar políticas para controlar como o GitHub Actions se comporta com relação ao sua instância do GitHub Enterprise Server quando membros da sua empresa executam fluxos de trabalho por meio de forks.

Aplicando uma política para bifurcar pull requests em repositórios privados

Se você depender do uso de forks dos seus repositórios privados, configure políticas que controlam como os usuários podem executar fluxos de trabalho em eventos pull_request. Disponíveis apenas para repositórios privados e internos, você pode definir essas configurações de política para sua empresa, organizações ou repositórios.

Se uma política for habilitada para uma empresa, ela poderá ser desabilitada seletivamente em organizações individuais ou repositórios. Se uma política estiver desabilitada para uma empresa, as organizações individuais ou repositórios não poderão habilitá-la.

  • Executar fluxos de trabalho por meio de solicitações de pull com fork – Permite que os usuários executem fluxos de trabalho por meio de solicitações de pull com fork usando um GITHUB_TOKEN com permissão somente leitura e sem acesso aos segredos.
  • Enviar tokens de gravação para fluxos de trabalho por meio de solicitações de pull – Permite que as solicitações de pull de forks usem um GITHUB_TOKEN com permissão de gravação.
  • Enviar segredos para fluxos de trabalho por meio de solicitações de pull: disponibiliza todos os segredos para a solicitação de pull.
  • Exigir aprovação para fluxos de trabalho de solicitação de pull de fork: as execuções de fluxo de trabalho em solicitações de pull de colaboradores sem permissão de gravação precisarão da aprovação de alguém com permissão de gravação antes de serem realizadas.
  1. No canto superior à direita de GitHub Enterprise Server, clique na sua foto do perfil e clique em Configurações da empresa.

    Captura de tela do menu suspenso que aparece quando você clica na foto de perfil no GitHub Enterprise Server. A opção "Configurações da empresa" está realçada em um contorno laranja escuro.

  2. Na barra lateral da empresa, clique em Políticas.

  3. Em " Políticas", clique em Ações.

  4. Em Criar fork de fluxos de trabalho de solicitação de pull, selecione suas opções.

  5. Clique em Salvar para aplicar as configurações.

Aplicando uma política de permissões de fluxo de trabalho na sua empresa

Você pode definir as permissões padrão concedidas ao GITHUB_TOKEN. Para obter mais informações sobre GITHUB_TOKEN, confira "Autenticação automática de token". Você pode escolher um conjunto restrito de permissões como padrão ou aplicar configurações permissivas.

Você pode definir as permissões padrão para o GITHUB_TOKEN nas configurações para sua empresa, suas organizações ou seus repositórios. Se você escolher uma opção restrita como padrão nas configurações da empresa, isto impedirá que a configuração mais permissiva seja escolhida nas configurações da organização ou do repositório.

Qualquer pessoa com acesso de gravação em um repositório pode modificar as permissões concedidas ao GITHUB_TOKEN, adicionando ou removendo o acesso conforme necessário, pela edição da chave permissions no arquivo de fluxo de trabalho. Para obter mais informações, confira permissions.

Como configurar as permissões padrão do GITHUB_TOKEN

Por padrão, quando você cria uma empresa, GITHUB_TOKEN tem apenas acesso de leitura aos escopos contents e packages.

  1. No canto superior à direita de GitHub Enterprise Server, clique na sua foto do perfil e clique em Configurações da empresa.

    Captura de tela do menu suspenso que aparece quando você clica na foto de perfil no GitHub Enterprise Server. A opção "Configurações da empresa" está realçada em um contorno laranja escuro.

  2. Na barra lateral da empresa, clique em Políticas.

  3. Em " Políticas", clique em Ações.

  4. Em "Permissões de fluxo de trabalho", escolha se deseja que o GITHUB_TOKEN tenha acesso de leitura e gravação em todos os escopos (a configuração permissiva) ou apenas acesso de leitura nos escopos contents e packages (a configuração restrita).

  5. Clique em Salvar para aplicar as configurações.

Como impedir que GitHub Actions crie ou aprove solicitações de pull

Você pode optar por permitir ou impedir que fluxos de trabalho do GitHub Actions do criem ou aprovem solicitações de pull.

Por padrão, quando você cria uma empresa, os fluxos de trabalho não têm permissão para criar ou aprovar solicitações de pull.

  1. No canto superior à direita de GitHub Enterprise Server, clique na sua foto do perfil e clique em Configurações da empresa.

    Captura de tela do menu suspenso que aparece quando você clica na foto de perfil no GitHub Enterprise Server. A opção "Configurações da empresa" está realçada em um contorno laranja escuro.

  2. Na barra lateral da empresa, clique em Políticas.

  3. Em " Políticas", clique em Ações.

  4. Em "Permissões do fluxo de trabalho", use a configuração Permitir que o GitHub Actions crie e aprove solicitações de pull para configurar se GITHUB_TOKEN pode criar e aprovar solicitações de pull.

  5. Clique em Salvar para aplicar as configurações.

Impor uma política de armazenamento em cache em sua empresa

Por padrão, o armazenamento em cache total usado por GitHub Actions no armazenamento externo do sua instância do GitHub Enterprise Server está limitado a um máximo de 10 GB por repositório e o tamanho máximo permitido que pode ser definido para um repositório é de 25 GB. Se você exceder o limite, GitHub salvará o novo cache, mas começará a despejar caches até que o tamanho total seja menor que o limite do repositório.

No entanto, você pode definir uma política corporativa para personalizar o tamanho total do cache padrão para cada repositório, bem como o tamanho máximo total do cache permitido para um repositório. Por exemplo, é possível que você queira que o tamanho total padrão do cache de cada repositório seja de 5 GB, mas também permitir que os proprietários da organização e administradores do repositório configurem um tamanho total de cache de até 15 GB, se necessário.

Os proprietários da organização podem definir um tamanho de cache total menor que se aplique a cada repositório na organização. As pessoas com acesso de administrador a um repositório podem definir um tamanho total de cache para ele até o tamanho máximo de cache permitido pela configuração de política da empresa ou da organização.

  1. No canto superior à direita de GitHub Enterprise Server, clique na sua foto do perfil e clique em Configurações da empresa.

    Captura de tela do menu suspenso que aparece quando você clica na foto de perfil no GitHub Enterprise Server. A opção "Configurações da empresa" está realçada em um contorno laranja escuro.

  2. Na barra lateral da empresa, clique em Políticas.

  3. Em " Políticas", clique em Ações.

  4. Na seção "Configurações de artefato, cache e log", em Limite máximo de tamanho de cache, insira um valor e clique em Salvar para aplicar a configuração.

  5. Na seção "Configurações de artefato, cache e log", em Limite padrão de tamanho de cache, insira um valor e clique em Salvar para aplicar a configuração.