Como posso mapear quem consome minhas APIs?
Você consegue mapear o consumidor de uma API por meio de client ID e/ou access token informados na requisição. Para enxergar as credenciais informadas, é necessário inserir interceptores no fluxo da API (a nível da API como um todo, de um recurso ou operação chamada).
Mas há duas formas diferentes de recuperar o client ID e/ou o access token:
-
utilizando o interceptor de Log e checando os detalhes de uma requisição na aba GATEWAY TRACE do Trace de uma API; ou
-
inserindo interceptors de validação de client ID e/ou access token e checando as credenciais na aba OVERVIEW do Trace (os interceptores podem ser: Client ID Validation, Access Token Validation ou OAuth). Neste caso, é necessário ter uma app cadastrada no Manager.
Para mostrar essas formas na prática, vejamos algumas requisições a uma API de exemplo chamada Documentation Images
.
Na imagem abaixo, vemos o registro de uma requisição feita a um recurso em que apenas incluímos um interceptor de Log.
Enviamos uma requisição que conta com client_id
e access_token
em headers, mas o client ID não é de nenhuma app cadastrada no Manager.
No Trace da API, vemos o registro da chamada:
Clicando sobre o registro, você é direcionado à aba OVERVIEW do Trace. Como não incluímos interceptors que validam Client ID ou access token no fluxo da API, eles não são validados e nem exibidos nos campos correspondentes:
Entretanto, como colocamos o interceptor de Log no fluxo, podemos ver os detalhes da requisição clicando na aba btn[GATEWAY TRACE] e então no ícone ao lado de Request log.
O client_id
e o access_token
informados na requisição são exibidos nos headers:
Agora, se fizermos uma chamada à API utilizando as credenciais de uma app cadastrada no Manager e com validação de client ID e token, a informação é mais completa.
Em primeiro lugar, adicionamos o interceptor de OAuth no fluxo do recurso que será chamado.
Na requisição, informamos via header o client_ID
e o access_token
da app.
Nesse caso, o Trace da API já exibe a app e o proprietário do token:
Clicando sobre o registro, a aba OVERVIEW exibe o client ID (criptografado em md5) e o access token:
Se você colocar também um interceptor de Log, poderá ver as mesmas credenciais nos detalhes da aba GATEWAY TRACE.
Share your suggestions with us!
Click here and then [+ Submit idea]