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

public class DeviceGrantType extends OAuth2GrantTypeBase
OAuth 2.0 Device Authorization Grant https://datatracker.ietf.org/doc/html/rfc8628#section-3.4
Author:
Hiroyuki Wada, Michito Okai
  • Field Details

  • Constructor Details

    • DeviceGrantType

      public DeviceGrantType()
  • Method Details

    • oauth2DeviceVerificationUrl

      public static jakarta.ws.rs.core.UriBuilder oauth2DeviceVerificationUrl(jakarta.ws.rs.core.UriInfo uriInfo)
    • realmOAuth2DeviceVerificationAction

      public static URI realmOAuth2DeviceVerificationAction(URI baseUri, String realmName)
    • 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

      public static boolean approveUserCode(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, String userCode, String userSessionId, Map<String,String> additionalParams)
    • 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

      public Set<String> getTokenParameterNames()