Segredos


Gerenciamento de Segredos

A plataforma inclui um serviço de gerenciamento de chaves / segredos. Ele fornece armazenamento e gerenciamento seguros de dados secretos - como senhas, certificados, chaves assimétricas, etc.

O uso desse serviço geralmente pode melhorar a segurança geral da sua solução de várias maneiras:

  • Permite usar senhas mais fortes e mantê-las exclusivas por instância ou por serviço - o que seria difícil de memorizar.
  • Elimina a necessidade de armazenar ou compartilhar senhas entre vários usuários de maneira insegura (como e-mails , mensageiros instantâneos, etc.).
  • Elimina a necessidade de usar um serviço ou aplicativo de gerenciamento secreto de terceiros, o que potencialmente aumentaria a superfície de ataque do seu serviço.
  • Os segredos são armazenados em um formato criptografado na plataforma. tela, para garantir que ninguém mais os veja.

Embora se possa considerar que armazenar senhas na mesma plataforma que os recursos que as utilizam e exibi-las em texto sem formatação na tela possam comprometer a segurança geral, na realidade essa é uma preocupação menor. Considere o fato de que qualquer pessoa que tenha acesso à conta tem 100% de acesso a qualquer recurso. Mesmo sem saber a senha da instância, esse usuário pode facilmente fazer o download da imagem da instância ou montá-la em outra instância e ainda obter acesso total aos dados da instância.

Estrutura do objeto

Os segredos são armazenados em contêineres - portanto, antes de criar um segredo, você precisa criar ou escolher um contêiner para esse segredo. Obviamente, um contêiner pode armazenar vários segredos.

Os segredos podem ser de tipos diferentes. Atualmente, o portal suporta o tipo secreto de "senha", adequado para armazenar dados de texto sem formatação, como senha. O back-end da API suporta mais tipos secretos, incluindo:

  • simétrico - usado para armazenar matrizes de bytes, como chaves adequadas para criptografia simétrica.
  • público - usado para armazenar a chave pública de um par de chaves assimétrico.
  • privado - usado para armazenar a chave privada de um par de chaves assimétrico.
  • certificado - usado para armazenar certificados criptográficos, como certificados X.509.

Um segredo pode ter uma data de validade opcional. Se definido, o segredo não poderá ser recuperado após a data de validade e será removido do banco de dados posteriormente. Se a data de validade não estiver definida, o segredo será armazenado até ser excluído manualmente.

Armazenando Senhas da Instância

Quando uma instância do Linux é criada, uma senha normalmente é gerada automaticamente para um usuário do sistema dessa instância. O usuário terá a oportunidade de armazenar essa senha no armazenamento secreto. Para fazer isso, basta clicar no botão "Adicionar aos meus segredos" quando a tela de notificação for exibida.

Mais tarde, você terá a oportunidade de ver essa senha, no contêiner correspondente chamado Credenciais da instância ou na parte superior do menu do console da instância ao efetuar login.

Você também pode armazenar suas próprias senhas nesse contêiner - por exemplo, para instâncias do Windows (onde as senhas não são geradas automaticamente e definidas manualmente quando a instância é inicializada), outros usuários (que não foram criados durante a criação da instância) das instâncias do Linux ou caso decida alterar a senha de um usuário existente posteriormente.

Para fazer isso, basta seguir a mesma convenção de nome usada pela plataforma para credenciais geradas automaticamente, armazenando-a no contêiner chamado Credenciais da instância e especificando o nome secreto como {user}@{instance_id}, em que user é o nome de usuário para o qual a senha está armazenada (o nome de usuário pode incluir um sinal "@" quando necessário) e instance_id é o ID da instância. Aqui estão exemplos de nomes secretos apropriados que a plataforma reconhecerá:

ubuntu@3f921da7-5c03-41ec-a37a-a7915aaeb020
Administrator@domain@3f921da7-5c03-41ec-a37a-a7915aaeb020

Observe que o serviço de gerenciamento secreto NÃO está integrado ao armazenamento de credenciais na instância. Isso significa que, se você alterar a senha dentro da instância, o segredo correspondente não refletirá isso automaticamente.