Autenticação
O TunnelHub suporta diferentes estratégias de autenticação para APIs, incluindo chaves de API e fluxos baseados em OAuth com Cognito.
Visão geral
As duas camadas mais comuns são:
Chave de API + plano de uso para identificação e controle de consumo;
OAuth com escopos para autenticação e autorização mais robustas.
Essas camadas podem coexistir, mas cumprem papéis diferentes. A chave de API ajuda a identificar e governar consumo; OAuth ajuda a autenticar e autorizar acesso a recursos protegidos.
Servidores de recursos
Servidores de recursos agrupam os escopos OAuth que protegem seus endpoints.
Cada servidor de recursos normalmente define:
nome amigável;
identificador único;
lista de escopos com descrição.
Esses escopos podem ser associados a endpoints protegidos.
Na prática, esse é o ponto em que a API deixa de trabalhar apenas com governança de consumo e passa a ter autorização mais fina por recurso.
Clientes
Clientes representam aplicações consumidoras autenticadas. Eles são usados para cenários machine-to-machine e outros fluxos controlados pela plataforma.
Ao criar um cliente, você normalmente define:
identificação do cliente;
expiração de tokens;
escopos autorizados.
Dependendo do caso, o fluxo também envolve emissão de refresh token, ativação ou inativação do cliente e rotação de segredo do cliente.
Como pensar a escolha
Use apenas chave de API quando o cenário pede identificação de consumo e o risco é menor.
Use OAuth quando:
a API expõe dados sensíveis;
existe necessidade de escopos finos;
há múltiplos clientes com acessos diferentes;
governança e auditoria são importantes.
Em cenários corporativos, o mais comum é combinar controle de consumo com autenticação forte.
Geração de token
Dependendo do fluxo configurado, a aplicação consumidora troca suas credenciais por um access token e usa esse token para chamar endpoints protegidos.
Na prática, a documentação da API e a configuração do cliente devem deixar claro:
endpoint de token;
grant esperado;
escopos permitidos;
formato de envio das credenciais.
Se o cliente usa segredo, trate esse valor como credencial sensível e planeje rotação quando necessário.
Boas práticas
modele escopos com granularidade suficiente para refletir o negócio;
evite compartilhar o mesmo cliente entre consumidores distintos;
documente claramente quais rotas exigem escopos e quais usam apenas governança por chave;
revise expiração de tokens conforme criticidade e perfil de integração;
rotacione segredos de clientes sempre que houver suspeita de exposição.
Last updated