Segredos no Key Vault
Os segredos não são segredos se eles são compartilhados com todos. O armazenamento de itens confidenciais, como cadeias de conexão, tokens de segurança, certificados e senhas no código está apenas convidando alguém para capturá-los e usá-los para algo que não é o que você pretendia. Até mesmo armazenar esse tipo de dados na configuração da Web é uma péssima ideia; essencialmente, você está permitindo que qualquer pessoa obtenha acesso ao código-fonte ou acesso ao servidor Web a seus dados particulares.
Em vez disso, você sempre deve colocar esses segredos no Azure Key Vault.
O que é o Azure Key Vault
O Azure Key Vault é um repositório de segredos: um serviço de nuvem centralizado para armazenar segredos do aplicativo. O Key Vault mantém os dados confidenciais seguros, mantendo os segredos do aplicativo em um único local central e fornecendo acesso seguro, controle de permissões e log de acesso.
Os segredos são armazenados em cofres individuais, cada um com suas próprias políticas de segurança e configuração para controlar o acesso. Em seguida, você pode acessar seus dados por meio de uma API REST ou por meio de um SDK de cliente disponível para a maioria das linguagens.
Importante
O Key Vault foi projetado para armazenar segredos de configuração para aplicativos para servidores. Ele não se destina a armazenar dados pertencentes aos usuários do aplicativo e não deve ser usado na parte do lado do cliente de um aplicativo. Isso é refletido em suas características de desempenho, na API e no modelo de custo.
Os dados de usuário devem ser armazenados em outro lugar, como em um Banco de Dados SQL do Azure com a Transparent Data Encryption ou em uma conta de armazenamento com a Criptografia do Serviço de Armazenamento. Você pode manter segredos que seu aplicativo usa para acessar esses armazenamentos de dados no Key Vault.
Por que usar um Key Vault para meus segredos
O gerenciamento de chaves e o armazenamento de segredos podem ser complicados e estar sujeitos a erros quando executados manualmente. A rotação manual de certificados significa potencialmente ficar sem eles por algumas horas ou dias. Conforme mencionado acima, ao salvar as cadeias de conexão no arquivo de configuração ou no repositório de código, isso significa que alguém poderá roubar as credenciais.
O Key Vault permite aos usuários armazenar cadeias de conexão, segredos, senhas, certificados, políticas de acesso, bloqueios de arquivo (tornando os itens somente leitura no Azure) e scripts de automação. Ele também registra o acesso e a atividade e permite que você monitore o IAM (controle de acesso) em sua assinatura. Ele também tem ferramentas de diagnóstico, métricas, de alertas e de solução de problemas para garantir que você tenha o acesso necessário.
Saiba mais sobre como usar um Azure Key Vault em Gerenciar segredos em seus aplicativos de servidor com o Azure Key Vault.
Resumo
O roubo de credenciais, a rotação manual de chaves e a renovação de certificados podem ser uma coisa do passado se você gerencia bem seus segredos usando o Azure Key Vault.