Skip to main content

IAuthorizationGrantHandler Interface

Abblix.Oidc.Server

Abblix.Oidc.Server.Endpoints.Token.Grants

IAuthorizationGrantHandler Interface

Strategy contract for resolving the grant_type-specific portion of an OAuth 2.0 token request (RFC 6749 §4) into an AuthorizedGrant: an authentication session plus the AuthorizationContext (subject, scope, resources, claims) that the issued tokens will inherit. Each implementation advertises the grant types it owns via GrantTypesSupported.

public interface IAuthorizationGrantHandler : Abblix.Oidc.Server.Common.Interfaces.IGrantTypeInformer

Derived
AuthorizationCodeGrantHandler
BackChannelAuthenticationGrantHandler
ClientCredentialsGrantHandler
CompositeAuthorizationGrantHandler
DeviceCodeGrantHandler
JwtBearerGrantHandler
PasswordGrantHandler
RefreshTokenGrantHandler
TokenExchangeGrantHandler

Implements IGrantTypeInformer

Methods

IAuthorizationGrantHandler.AuthorizeAsync(TokenRequest, ClientInfo) Method

Resolves the grant-specific input from request (authorization code, refresh token, device code, client credentials, JWT assertion, etc.) into the AuthorizedGrant that will drive token issuance, or an OidcError such as invalid_grant, authorization_pending, or slow_down.

System.Threading.Tasks.Task<Abblix.Utils.Result<Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant,Abblix.Oidc.Server.Common.OidcError>> AuthorizeAsync(Abblix.Oidc.Server.Model.TokenRequest request, Abblix.Oidc.Server.Features.ClientInformation.ClientInfo clientInfo);

Parameters

request TokenRequest

The token request (already authenticated against the client).

clientInfo ClientInfo

The authenticated client; used to enforce that the grant was issued to the same client that is now redeeming it.

Returns

System.Threading.Tasks.Task<Abblix.Utils.Result<AuthorizedGrant,OidcError>>