#### [Abblix\.Oidc\.Server](https://www.abblix.com/docs/api/abblix-oidc-server 'index')

## Abblix\.Oidc\.Server\.Endpoints\.Token Namespace

| Classes | |
| :--- | :--- |
| [AuthorizationCodeReusePreventingDecorator](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.AuthorizationCodeReusePreventingDecorator 'Abblix\.Oidc\.Server\.Endpoints\.Token\.AuthorizationCodeReusePreventingDecorator') | Refuses a second redemption of an authorization code, and revokes the tokens the first one issued, in compliance with OAuth 2\.0 security best practices\. Two defences, split by WHEN the repeat arrives rather than by where: the claim refuses one arriving beside the first, and the issued tokens written back at the key catch one arriving after it\. Both hold across processes\. |
| [TokenAuthorizationContextEvaluator](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.TokenAuthorizationContextEvaluator 'Abblix\.Oidc\.Server\.Endpoints\.Token\.TokenAuthorizationContextEvaluator') | Default [ITokenAuthorizationContextEvaluator](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Interfaces.ITokenAuthorizationContextEvaluator 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Interfaces\.ITokenAuthorizationContextEvaluator'): narrows the originally granted scope and resource sets to the intersection with what the token request asks for \(RFC 6749 §6 / RFC 8707 §2\.2\), and, when the client authenticated via mTLS, derives the RFC 8705 §3 `cnf.x5t#S256` certificate thumbprint to bind the issued tokens\. |
| [TokenHandler](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.TokenHandler 'Abblix\.Oidc\.Server\.Endpoints\.Token\.TokenHandler') | Manages the processing of token requests according to OAuth 2\.0 and OpenID Connect specifications\. This includes validating the request for compliance with the protocol requirements and processing it to issue, renew or exchange tokens as appropriate\. |
| [TokenRequestProcessor](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.TokenRequestProcessor 'Abblix\.Oidc\.Server\.Endpoints\.Token\.TokenRequestProcessor') | Default [ITokenRequestProcessor](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Interfaces.ITokenRequestProcessor 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Interfaces\.ITokenRequestProcessor'): always issues an access token \(RFC 6749 §5\.1\), adds a refresh token when `offline_access` is in the granted scope \(OIDC Core 1\.0 §11\), and adds an ID token when `openid` is in scope \(OIDC Core 1\.0 §3\.1\.3\.3, with `at_hash` computed from the issued access token\)\. |
| [TokenRequestValidator](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.TokenRequestValidator 'Abblix\.Oidc\.Server\.Endpoints\.Token\.TokenRequestValidator') | Validates token requests against OAuth 2\.0 specifications, ensuring that requests are properly formed and authorized\. This class plays a critical role in the OAuth 2\.0 authentication and authorization process by verifying the integrity and authenticity of token requests, according to the framework defined in RFC 6749\. |
