O que é uma credencial
Credencial é o conjunto que identifica e autoriza um acesso a um sistema. Ela costuma combinar uma identificação, como um usuário ou um identificador de aplicação, e um valor secreto, como uma senha, uma chave ou um token.
A credencial responde a duas perguntas no acesso: a identidade da chamada e o que ela pode fazer. A autenticação confere a identidade, e a autorização verifica o que aquela identidade pode acessar.
Escopo mínimo
Toda credencial carrega um alcance. Uma chave de administração pode alterar registros que uma integração nunca deveria modificar, enquanto uma chave de leitura apenas consulta.
Você escolhe o menor conjunto que atende à tarefa. Se uma integração precisa ler um histórico, uma credencial só de leitura reduz o efeito de um vazamento, porque um acesso indevido não conseguiria apagar ou alterar registros.
Guardar fora do código
O valor da credencial não pertence ao código que circula no repositório. Ele fica em uma variável de ambiente ou em um serviço dedicado a guardar segredos, e o projeto mantém apenas a referência.
Essa separação facilita trocar a credencial quando necessário e evita que ela apareça em cópias, registros ou ambientes de teste. O secret explica por que o valor precisa ser tratado com cuidado em todas as etapas do projeto.
Exposição e revogação
Quando uma credencial aparece onde não deveria, você troca o valor no serviço de origem e revisa o que ela permitia. Depois, corrige o caminho que causou a exposição, para que a situação não se repita.
Os registros ajudam a investigar o que aconteceu. Ao procurar nos logs, evite reproduzir a credencial no relatório, porque o documento também pode ser lido por terceiros.
Uma credencial não amplia a permissão
Usar uma credencial de integração não deve aumentar o que cada perfil vê. O sistema continua aplicando o acesso correspondente à identidade que está conectada, e a credencial apenas permite que a chamada aconteça.
Na Cloud API, por exemplo, o atendente vê apenas as conversas do seu perfil, com a sessão correspondente. Para revisar como as credenciais circulam em um projeto, o Desenvolvimento Colaborativo da Dev Side Studio permite examinar a configuração e o acesso aplicado durante a execução.
Dúvidas frequentes
Perguntas frequentes sobre Credencial
- Credencial e secret são a mesma coisa?
- Credencial é o conjunto que identifica e autoriza um acesso, como um usuário com sua chave. O [secret](/glossario/secret/) é o valor que precisa ficar protegido, como a chave ou o token. Uma credencial costuma incluir um secret.
- Posso guardar a credencial no código do projeto?
- Não. O código costuma circular em repositórios, cópias e ambientes diferentes. Guarde o valor em [variável de ambiente](/glossario/variavel-de-ambiente/) ou em um serviço próprio para segredos e deixe apenas a referência no projeto.
- Apagar a linha que expôs a credencial resolve?
- Não basta. Depois de publicada, a credencial pode já estar em circulação. Revogue ou substitua o valor no serviço de origem e confira os acessos que ela permitia antes de corrigir o caminho que causou a exposição.
- Uma credencial administrativa é mais prática?
- Ela costuma ser, e é justamente por isso que amplia o alcance de um erro. Uma credencial com poder de administração pode alterar registros que a integração nunca deveria modificar. Prefira o menor conjunto de permissões que atende à tarefa.
Para continuar
Recursos relacionados
Documentação
OWASP: gerenciamento de segredos
Orienta o armazenamento, a rotação e a revogação de credenciais em aplicações.
Abrir recursoDocumentação
OWASP: autenticação
Reúne práticas de verificação de identidade, proteção de senhas e limite de tentativas.
Abrir recursoAplicação na formação
Formação DevOps
A credencial é o valor que uma integração usa para acessar serviços, e precisa ser guardada fora do código e revogada quando exposta.
Conhecer a formação
Fontes consultadas
Referências deste verbete
Este verbete ajudou você?
Obrigado pela resposta. Ela fica salva apenas neste navegador.