Class DeviceGrantType
java.lang.Object
org.keycloak.protocol.oidc.grants.OAuth2GrantTypeBase
org.keycloak.protocol.oidc.grants.device.DeviceGrantType
- All Implemented Interfaces:
org.keycloak.protocol.oidc.grants.OAuth2GrantType,org.keycloak.provider.Provider
OAuth 2.0 Device Authorization Grant
https://datatracker.ietf.org/doc/html/rfc8628#section-3.4
- Author:
- Hiroyuki Wada, Michito Okai
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.keycloak.protocol.oidc.grants.OAuth2GrantType
org.keycloak.protocol.oidc.grants.OAuth2GrantType.Context -
Field Summary
FieldsFields inherited from class org.keycloak.protocol.oidc.grants.OAuth2GrantTypeBase
client, clientAuthAttributes, clientConfig, clientConnection, context, cors, event, formParams, headers, realm, request, response, session, tokenManager -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic jakarta.ws.rs.core.ResponseapproveOAuth2DeviceAuthorization(org.keycloak.sessions.AuthenticationSessionModel authSession, org.keycloak.models.AuthenticatedClientSessionModel clientSession, org.keycloak.models.KeycloakSession session) static booleanapproveUserCode(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, String userCode, String userSessionId, Map<String, String> additionalParams) static jakarta.ws.rs.core.ResponsedenyOAuth2DeviceAuthorization(org.keycloak.sessions.AuthenticationSessionModel authSession, org.keycloak.protocol.LoginProtocol.Error error, org.keycloak.models.KeycloakSession session) static booleandenyUserCode(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, String userCode) static org.keycloak.models.OAuth2DeviceCodeModelgetDeviceByDeviceCode(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, org.keycloak.models.ClientModel client, org.keycloak.events.EventBuilder event, String deviceCode) org.keycloak.events.EventTypestatic booleanisDeviceCodeDeniedForDeviceVerificationFlow(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, org.keycloak.sessions.AuthenticationSessionModel authSession) static booleanisOAuth2DeviceVerificationFlow(org.keycloak.sessions.AuthenticationSessionModel authSession) static booleanisPollingAllowed(org.keycloak.models.KeycloakSession session, org.keycloak.models.OAuth2DeviceCodeModel deviceCodeModel) static jakarta.ws.rs.core.UriBuilderoauth2DeviceAuthUrl(jakarta.ws.rs.core.UriBuilder baseUriBuilder) static jakarta.ws.rs.core.UriBuilderoauth2DeviceVerificationCompletedUrl(jakarta.ws.rs.core.UriInfo baseUri) static jakarta.ws.rs.core.UriBuilderoauth2DeviceVerificationUrl(jakarta.ws.rs.core.UriInfo uriInfo) jakarta.ws.rs.core.Responseprocess(org.keycloak.protocol.oidc.grants.OAuth2GrantType.Context context) static URIrealmOAuth2DeviceVerificationAction(URI baseUri, String realmName) static voidremoveDeviceByDeviceCode(org.keycloak.models.KeycloakSession session, String deviceCode) static voidremoveDeviceByUserCode(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, String userCode) Methods inherited from class org.keycloak.protocol.oidc.grants.OAuth2GrantTypeBase
addCustomTokenResponseClaims, afterAuthorizationDetailsProcessed, checkAndBindMtlsHoKToken, checkClient, close, createTokenResponse, createTokenResponse, createTokenResponseBuilder, getRequestedScopes, handleMissingAuthorizationDetails, processAuthorizationDetails, processStoredAuthorizationDetails, setContext, updateClientSession, updateUserSessionFromClientAuth, useRefreshTokenMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.keycloak.protocol.oidc.grants.OAuth2GrantType
getSupportedMultivaluedRequestParameters, isTokenAllowed, preProcess
-
Field Details
-
OAUTH2_DEVICE_VERIFIED_USER_CODE
- See Also:
-
OAUTH2_DEVICE_USER_CODE
- See Also:
-
OAUTH2_USER_CODE_VERIFY
- See Also:
-
-
Constructor Details
-
DeviceGrantType
public DeviceGrantType()
-
-
Method Details
-
oauth2DeviceVerificationUrl
public static jakarta.ws.rs.core.UriBuilder oauth2DeviceVerificationUrl(jakarta.ws.rs.core.UriInfo uriInfo) -
realmOAuth2DeviceVerificationAction
-
oauth2DeviceAuthUrl
public static jakarta.ws.rs.core.UriBuilder oauth2DeviceAuthUrl(jakarta.ws.rs.core.UriBuilder baseUriBuilder) -
oauth2DeviceVerificationCompletedUrl
public static jakarta.ws.rs.core.UriBuilder oauth2DeviceVerificationCompletedUrl(jakarta.ws.rs.core.UriInfo baseUri) -
denyOAuth2DeviceAuthorization
public static jakarta.ws.rs.core.Response denyOAuth2DeviceAuthorization(org.keycloak.sessions.AuthenticationSessionModel authSession, org.keycloak.protocol.LoginProtocol.Error error, org.keycloak.models.KeycloakSession session) -
approveOAuth2DeviceAuthorization
public static jakarta.ws.rs.core.Response approveOAuth2DeviceAuthorization(org.keycloak.sessions.AuthenticationSessionModel authSession, org.keycloak.models.AuthenticatedClientSessionModel clientSession, org.keycloak.models.KeycloakSession session) -
isOAuth2DeviceVerificationFlow
public static boolean isOAuth2DeviceVerificationFlow(org.keycloak.sessions.AuthenticationSessionModel authSession) -
getDeviceByDeviceCode
public static org.keycloak.models.OAuth2DeviceCodeModel getDeviceByDeviceCode(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, org.keycloak.models.ClientModel client, org.keycloak.events.EventBuilder event, String deviceCode) -
isDeviceCodeDeniedForDeviceVerificationFlow
public static boolean isDeviceCodeDeniedForDeviceVerificationFlow(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, org.keycloak.sessions.AuthenticationSessionModel authSession) -
removeDeviceByDeviceCode
public static void removeDeviceByDeviceCode(org.keycloak.models.KeycloakSession session, String deviceCode) -
removeDeviceByUserCode
public static void removeDeviceByUserCode(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, String userCode) -
isPollingAllowed
public static boolean isPollingAllowed(org.keycloak.models.KeycloakSession session, org.keycloak.models.OAuth2DeviceCodeModel deviceCodeModel) -
approveUserCode
-
denyUserCode
public static boolean denyUserCode(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, String userCode) -
process
public jakarta.ws.rs.core.Response process(org.keycloak.protocol.oidc.grants.OAuth2GrantType.Context context) -
getEventType
public org.keycloak.events.EventType getEventType() -
getTokenParameterNames
-