Regenerar API keys e tokens
Caso você acredite que suas API keys foram expostas, regenere suas API keys seguindo estes passos:- Navegue até a página “Apps” do Developer Console.
- Clique no ícone “Keys and tokens” (🗝) ao lado do App relevante.
- Clique no botão “Regenerate” ao lado do conjunto de chaves e tokens que você deseja regenerar.
- Se quiser regenerar seus Access Tokens, você deve invalidar seus tokens usando o endpoint POST oauth/invalidate_token e depois regenerá-los usando o fluxo 3-legged OAuth.
- Se quiser regenerar seu Bearer Token, você deve invalidar seu token usando o endpoint POST oauth2/invalidate_token e depois regenerá-lo usando o endpoint POST oauth2/token.
Ter um arquivo central para seus segredos
Ter um arquivo como um .ENV ou algum outro arquivo .yaml para armazenar seus segredos é uma opção que pode ajudar, mas certifique-se de ter um arquivo .gitignore robusto para evitar commitá-los acidentalmente em um repositório git.Variáveis de ambiente
Escrever código que utiliza variáveis de ambiente pode ser útil. Um exemplo em Python:Código-fonte e controle de versão
Os erros de segurança mais comuns cometidos por desenvolvedores são commitar API keys e tokens em código-fonte em sistemas de controle de versão acessíveis, como GitHub e BitBucket. Muitos desses repositórios são publicamente acessíveis. Esse erro é tão comum em repositórios públicos que existem bots lucrativos que fazem scraping em busca de API keys.- Use variáveis de ambiente do servidor. Ao armazenar API keys em variáveis de ambiente, você as mantém fora do seu código e do controle de versão. Isso também permite usar chaves diferentes para ambientes diferentes com facilidade.
- Use um arquivo de configuração excluído do controle de versão. Adicione o nome do arquivo ao seu .gitignore para excluí-lo do rastreamento pelo controle de versão.
- Se você remover as API keys do seu código depois de já ter usado o controle de versão, as API keys provavelmente ainda estarão acessíveis nas versões anteriores do seu código. Regenere suas API keys, conforme descrito na próxima seção.
Bancos de dados
Se você precisar armazenar seus access tokens em um banco de dados, tenha em mente o seguinte:- Restrinja o acesso ao banco de dados de forma que os access tokens só possam ser lidos pelo proprietário do token.
- Restrinja os privilégios de edição/escrita na tabela do banco de dados que guarda os access tokens — isso deve ser automatizado pelo sistema de gerenciamento de chaves.
- Criptografe os access tokens antes de armazená-los em qualquer data store.