Segurança: credenciais
O curso trata de onde uma aplicação Rails guarda seus segredos, a partir de um repositório que os divide entre credenciais criptografadas e variáveis de ambiente. Explica como funcionam o credentials.yml.enc e a chave mestra, incluindo arquivos por ambiente. Mostra também como as variáveis de ambiente chegam ao processo pelo Kamal e onde ficam expostas. Traz uma regra para escolher entre os dois mecanismos e um procedimento de rotação e de resposta a vazamentos. Depois acompanha um segredo pela CI, pelo build e pelo deploy, e fecha com um plano de credenciais para o repositório.
O que você vai aprender
- ✓Como funcionam as credenciais criptografadas do Rails e a chave mestra
- ✓Como variáveis de ambiente chegam ao processo e onde ficam expostas
- ✓Uma regra para escolher entre credenciais e variáveis de ambiente
- ✓Rotação de segredos e resposta a vazamentos
- ✓Segredos tratados com segurança na CI, no build, no deploy e em execução
- ✓Como montar um plano de credenciais para um repositório
Onde este app guarda os segredos
Toda aplicação tem um punhado de valores que não são código e não podem ser públicos. Uma senha de banco, uma chave de API, o token que assina os cookies. Este curso é sobre onde eles moram, e este repositório é incomumente interessante porque usa dois mecanismos ao mesmo tempo.
Ler a aula completa grátis →Currículo
7 aulasOnde este app guarda os segredos
Mapeia onde este repositório guarda os segredos, confere que a master.key nunca foi versionada e separa chaves públicas de segredos.
Credenciais criptografadas, com precisão
Explica as credenciais criptografadas: arquivos por ambiente, distribuição da chave, diffs ilegíveis e o que se perde sem a chave.
Variáveis de ambiente, com precisão
Mostra como variáveis de ambiente chegam ao processo, onde vazam, a armadilha do .env e o uso de ENV.fetch.
Escolhendo entre elas
Propõe uma regra para decidir entre credenciais e ambiente e avalia quando um gerenciador de segredos compensa.
Rotação, e depois de um vazamento
Mostra como rotacionar cada tipo de segredo, a ordem dos passos depois de um vazamento e controles de detecção.
Segredos na pipeline
Acompanha um segredo pela CI, pelo build, pelo deploy e pela execução, incluindo o problema do primeiro segredo.
Juntando tudo: um plano de credenciais
Audita os segredos deste repositório e acrescenta quatro práticas: regra escrita, .env.example, cronograma de rotação e scanner.