Class OID4VCAuthorizationDetailsProcessor

java.lang.Object
org.keycloak.protocol.oid4vc.issuance.OID4VCAuthorizationDetailsProcessor
All Implemented Interfaces:
org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>, org.keycloak.provider.Provider

public class OID4VCAuthorizationDetailsProcessor extends Object implements org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
  • Constructor Details

    • OID4VCAuthorizationDetailsProcessor

      public OID4VCAuthorizationDetailsProcessor(org.keycloak.models.KeycloakSession session)
  • Method Details

    • isSupported

      public boolean isSupported()
      Specified by:
      isSupported in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
    • getSupportedType

      public String getSupportedType()
      Specified by:
      getSupportedType in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
    • getSupportedResponseJavaType

      public Class<OID4VCAuthorizationDetail> getSupportedResponseJavaType()
      Specified by:
      getSupportedResponseJavaType in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
    • process

      public OID4VCAuthorizationDetail process(org.keycloak.models.UserSessionModel userSession, org.keycloak.models.ClientSessionContext clientSessionCtx, org.keycloak.representations.AuthorizationDetailsJSONRepresentation authzDetail)
      Specified by:
      process in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
    • validateAuthorizationDetail

      public OID4VCAuthorizationDetail validateAuthorizationDetail(org.keycloak.representations.AuthorizationDetailsJSONRepresentation authzDetail) throws org.keycloak.protocol.oidc.rar.InvalidAuthorizationDetailsException
      Specified by:
      validateAuthorizationDetail in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
      Throws:
      org.keycloak.protocol.oidc.rar.InvalidAuthorizationDetailsException
    • sanitizeBeforeSendingTokenResponse

      public OID4VCAuthorizationDetail sanitizeBeforeSendingTokenResponse(OID4VCAuthorizationDetail authzDetail)
      Specified by:
      sanitizeBeforeSendingTokenResponse in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
    • handleMissingAuthorizationDetails

      public List<OID4VCAuthorizationDetail> handleMissingAuthorizationDetails(org.keycloak.models.UserSessionModel userSession, org.keycloak.models.ClientSessionContext clientSessionCtx)
      Specified by:
      handleMissingAuthorizationDetails in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
    • processStoredAuthorizationDetails

      public OID4VCAuthorizationDetail processStoredAuthorizationDetails(org.keycloak.models.UserSessionModel userSession, org.keycloak.models.ClientSessionContext clientSessionCtx, org.keycloak.representations.AuthorizationDetailsJSONRepresentation storedAuthDetails) throws org.keycloak.protocol.oidc.rar.InvalidAuthorizationDetailsException
      Specified by:
      processStoredAuthorizationDetails in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
      Throws:
      org.keycloak.protocol.oidc.rar.InvalidAuthorizationDetailsException
    • afterAuthorizationDetailsProcessed

      public void afterAuthorizationDetailsProcessed(org.keycloak.models.UserSessionModel userSession, org.keycloak.models.ClientSessionContext clientSessionCtx, OID4VCAuthorizationDetail oid4vcAuthzDetailResponse)
      Specified by:
      afterAuthorizationDetailsProcessed in interface org.keycloak.protocol.oidc.rar.AuthorizationDetailsProcessor<OID4VCAuthorizationDetail>
    • close

      public void close()
      Specified by:
      close in interface org.keycloak.provider.Provider
    • generateResponseAuthorizationDetails

      public OID4VCAuthorizationDetail generateResponseAuthorizationDetails(org.keycloak.models.oid4vci.CredentialScopeModel credScope, String credOffersId)
    • createIssuedVerifiableCredential

      protected org.keycloak.models.IssuedVerifiableCredentialModel createIssuedVerifiableCredential(org.keycloak.models.UserModel userModel, org.keycloak.models.ClientModel clientModel, org.keycloak.models.oid4vci.CredentialScopeModel credentialScope)