Gerenciar segredos criptografados

Concluído

Os segredos são variáveis de ambiente criptografadas que você pode criar para armazenar tokens, credenciais ou qualquer outro tipo de informações confidenciais com os quais seus fluxos de trabalho e ações do GitHub Actions possam contar. Depois de criados, eles ficam disponíveis para uso nos fluxos de trabalho e ações que têm acesso à organização, repositório ou ambiente de repositório em que estão armazenados.

Nesta seção, você explorará as diferentes ferramentas e estratégias disponíveis no GitHub Enterprise Cloud e no GitHub Enterprise Server para gerenciar o uso de segredos criptografados. Também explicaremos como acessar segredos criptografados em seus fluxos de trabalho e ações.

Gerenciar segredos criptografados no nível da organização

Criar segredos criptografados no nível da organização para armazenar informações confidenciais é uma ótima maneira de garantir a segurança dessas informações, minimizando a sobrecarga de gerenciamento em sua empresa.

Digamos que alguns desenvolvedores que escrevem fluxos de trabalho em sua organização do GitHub precisem das credenciais para implantar o código na produção em alguns de seus fluxos de trabalho. Para evitar o compartilhamento dessas informações confidenciais, você pode criar um segredo criptografado que contenha as credenciais no nível da organização. Assim, as credenciais podem ser usadas nos fluxos de trabalho sem serem expostas.

Para criar um segredo no nível da organização, vá para sua organização Configurações e, na barra lateral, selecione Segredos e variáveis > Ações > Novo segredo da organização. Na tela exibida, insira um nome e um valor e escolha uma política de acesso ao repositório para o seu segredo:

Tela Novo segredo das organizações.

Depois de salva, a política de acesso aparece abaixo do segredo na lista de segredos:

Exemplo de segredos criptografados com a política de acesso exibida.

Você pode selecionar Atualizar para obter mais detalhes sobre as permissões configuradas para o seu segredo.

Gerenciar segredos criptografados no nível do repositório

Caso precise de um segredo criptografado para ter o escopo de um repositório específico, o GitHub Enterprise Cloud e o GitHub Enterprise Server também permitirão que você crie segredos no nível do repositório.

Para criar um segredo no nível do repositório, vá para o repositório Configurações e, na barra lateral, selecione Segredos e variáveis > Ações > Novo segredo do repositório. Na tela que é exibida, insira um nome e um valor para seu segredo:

Tela Novo segredo para repositórios.

Acessar segredos criptografados em ações e fluxos de trabalho

Em fluxos de trabalho

Para acessar um segredo criptografado em um fluxo de trabalho, você deve usar o contexto secrets em seu arquivo de fluxo de trabalho. Por exemplo:

steps:
  - name: Hello world action
    with: # Set the secret as an input
      super_secret: ${{ secrets.SuperSecret }}
    env: # Or as an environment variable
      super_secret: ${{ secrets.SuperSecret }}

Em ações

Para acessar um segredo criptografado em uma ação, você deve especificar o segredo como um parâmetro input no arquivo de metadados action.yml. Por exemplo:

inputs:
  super_secret:
    description: 'My secret token'
    required: true

Caso precise acessar o segredo criptografado no código da ação, ele poderá ler o valor da entrada usando a variável de ambiente $SUPER_SECRET.

Aviso

Ao criar suas ações, não inclua segredos criptografados no código-fonte da ação, pois as ações são unidades de trabalho compartilháveis. Se sua ação precisar usar segredos criptografados ou outras entradas fornecidas pelo usuário, é melhor usar o módulo principal do Kit de Ferramentas de Ações.