Pular para o conteúdo principal

Armazenamento de Chaves

O Armazenamento de Chaves no Semaphore é usado para armazenar credenciais para acessar Repositórios remotos, acessar hosts remotos, credenciais de sudo e senhas do Ansible vault.

Tipos

1. SSH

As chaves SSH são usadas para acessar servidores remotos e também Repositórios remotos.

Se você precisar de ajuda para gerar rapidamente uma chave e colocá-la no seu host, aqui está um guia rápido.

Para Repositórios Git que usam autenticação SSH, o Repositório Git a partir do qual você está tentando clonar precisa ter sua chave pública associada à chave privada.

Abaixo estão links para a documentação de alguns Repositórios Git comuns:

2. Login com Senha

Login com Senha é uma combinação de nome de usuário e senha/token de acesso que pode ser usada para:

  • Autenticar em hosts remotos (embora isso seja menos seguro do que usar chaves SSH)
  • Credenciais de sudo em hosts remotos
  • Autenticar em Repositórios Git remotos via HTTPS (embora SSH seja mais seguro)
  • Desbloquear Ansible vaults
dica

Esse tipo de segredo pode ser usado como Personal Access Token (PAT) ou string secreta. Basta deixar o campo Login vazio.

3. Nenhum

Isso é usado como preenchimento para Repositórios que não exigem autenticação, como um Repositório de código aberto no GitLab.

Armazenamentos de Segredos

O Semaphore UI oferece suporte a diferentes armazenamentos para segredos. Você pode escolher o armazenamento por segredo ao criar ou editar um segredo.

Banco de dados

Por padrão, os segredos são armazenados no banco de dados de forma criptografada. A chave de criptografia é configurada por meio da opção de configuração access_key_encryption ou SEMAPHORE_ACCESS_KEY_ENCRYPTION (deve ser gerada usando head -c32 /dev/urandom | base64).

HashiCorp Vault

Os segredos podem ser armazenados em uma instância externa do HashiCorp Vault em vez do banco de dados.

Leia mais...

OpenBao

Os segredos podem ser armazenados em uma instância externa do OpenBao (um fork de código aberto e compatível com a API do HashiCorp Vault).

Leia mais...

AWS Secrets Manager

Static Badge

Os segredos podem ser armazenados no AWS Secrets Manager. Autentique-se com uma role/perfil de instância do IAM ou com chaves de acesso estáticas.

Leia mais...

Devolutions Server

Os segredos podem ser armazenados em uma instância externa do Devolutions Server em vez do banco de dados.

Leia mais...

Sincronizando segredos de armazenamentos remotos

O Semaphore pode importar automaticamente segredos de um gerenciador de segredos externo (HashiCorp Vault, OpenBao, AWS Secrets Manager, Azure Key Vault ou Devolutions Server) e mantê-los sincronizados. Os caminhos de sincronização permitem escolher quais segredos importar e como nomeá-los.

Leia mais...