Introspection Endpoint¶
The introspection endpoint is an implementation of RFC 7662.
It can be used to validate reference tokens (or JWTs if the consumer does not have support for appropriate JWT or cryptographic libraries). The introspection endpoint requires authentication using a scope secret.
Example¶
POST /connect/introspect
Authorization: Basic xxxyyy
token=<token>
A successful response will return a status code of 200 and either an active or inactive token:
{
"active": true,
"sub": "123"
}
Unknown or expired tokens will be marked as inactive:
{
"active": false,
}
An invalid request will return a 400, an unauthorized request 401.
IdentityModel¶
You can programmatically access the introspection endpoint using the IdentityModel library:
var introspectionClient = new IntrospectionClient(
doc.IntrospectionEndpoint,
"scope_name",
"scope_secret");
var response = await introspectionClient.SendAsync(
new IntrospectionRequest { Token = token });
var isActice = response.IsActive;
var claims = response.Claims;