Class OID4VCLoginProtocolFactory

java.lang.Object
org.keycloak.protocol.oid4vc.OID4VCLoginProtocolFactory
All Implemented Interfaces:
org.keycloak.protocol.LoginProtocolFactory, OID4VCEnvironmentProviderFactory, org.keycloak.provider.EnvironmentDependentProviderFactory, org.keycloak.provider.ProviderFactory<org.keycloak.protocol.LoginProtocol>

public class OID4VCLoginProtocolFactory extends Object implements org.keycloak.protocol.LoginProtocolFactory, OID4VCEnvironmentProviderFactory
Factory for creating all OID4VC related endpoints and the default mappers.
Author:
Stefan Wiedemann
  • Field Details

  • Constructor Details

    • OID4VCLoginProtocolFactory

      public OID4VCLoginProtocolFactory()
  • Method Details

    • init

      public void init(org.keycloak.Config.Scope config)
      Specified by:
      init in interface org.keycloak.provider.ProviderFactory<org.keycloak.protocol.LoginProtocol>
    • postInit

      public void postInit(org.keycloak.models.KeycloakSessionFactory factory)
      Specified by:
      postInit in interface org.keycloak.provider.ProviderFactory<org.keycloak.protocol.LoginProtocol>
    • close

      public void close()
      Specified by:
      close in interface org.keycloak.provider.ProviderFactory<org.keycloak.protocol.LoginProtocol>
    • getBuiltinMappers

      public Map<String,org.keycloak.models.ProtocolMapperModel> getBuiltinMappers()
      Specified by:
      getBuiltinMappers in interface org.keycloak.protocol.LoginProtocolFactory
    • createProtocolEndpoint

      public Object createProtocolEndpoint(org.keycloak.models.KeycloakSession keycloakSession, org.keycloak.events.EventBuilder event)
      Specified by:
      createProtocolEndpoint in interface org.keycloak.protocol.LoginProtocolFactory
    • createDefaultClientScopes

      public void createDefaultClientScopes(org.keycloak.models.RealmModel newRealm, boolean addScopesToExistingClients)
      Specified by:
      createDefaultClientScopes in interface org.keycloak.protocol.LoginProtocolFactory
    • setupClientDefaults

      public void setupClientDefaults(org.keycloak.representations.idm.ClientRepresentation rep, org.keycloak.models.ClientModel newClient)
      Specified by:
      setupClientDefaults in interface org.keycloak.protocol.LoginProtocolFactory
    • addClientScopeDefaults

      public void addClientScopeDefaults(org.keycloak.representations.idm.ClientScopeRepresentation clientScope)
      Specified by:
      addClientScopeDefaults in interface org.keycloak.protocol.LoginProtocolFactory
    • validateClientScope

      public void validateClientScope(org.keycloak.models.KeycloakSession session, org.keycloak.representations.idm.ClientScopeRepresentation clientScope) throws ErrorResponseException
      Specified by:
      validateClientScope in interface org.keycloak.protocol.LoginProtocolFactory
      Throws:
      ErrorResponseException
    • isValidClientScope

      public boolean isValidClientScope(org.keycloak.models.KeycloakSession session, org.keycloak.models.ClientModel client, org.keycloak.models.ClientScopeModel clientScope)
      Specified by:
      isValidClientScope in interface org.keycloak.protocol.LoginProtocolFactory
    • create

      public org.keycloak.protocol.LoginProtocol create(org.keycloak.models.KeycloakSession session)
      Specified by:
      create in interface org.keycloak.provider.ProviderFactory<org.keycloak.protocol.LoginProtocol>
    • getId

      public String getId()
      Specified by:
      getId in interface org.keycloak.provider.ProviderFactory<org.keycloak.protocol.LoginProtocol>
    • order

      public int order()
      defines the option-order in the admin-ui
      Specified by:
      order in interface org.keycloak.provider.ProviderFactory<org.keycloak.protocol.LoginProtocol>
    • validateClientScopeAssignment

      public void validateClientScopeAssignment(org.keycloak.models.KeycloakSession session, org.keycloak.models.ClientScopeModel clientScope, boolean defaultScope, org.keycloak.models.RealmModel realm)
      Specified by:
      validateClientScopeAssignment in interface org.keycloak.protocol.LoginProtocolFactory
    • allowAsClientProtocol

      public boolean allowAsClientProtocol()
      Specified by:
      allowAsClientProtocol in interface org.keycloak.protocol.LoginProtocolFactory
    • onConsentRevoked

      public void onConsentRevoked(org.keycloak.models.KeycloakSession session, org.keycloak.models.ClientModel client, org.keycloak.models.UserModel user)
      Specified by:
      onConsentRevoked in interface org.keycloak.protocol.LoginProtocolFactory