Class OidcProviderConfigurationOperations

java.lang.Object
dev.getelements.elements.service.auth.oidc.OidcProviderConfigurationOperations

public class OidcProviderConfigurationOperations extends Object
Resolves an OidcProviderConfiguration's discovery document and finds-or-creates the matching OidcAuthScheme by issuer, so that registering a single provider configuration is enough to fully activate a provider — no separate manual auth scheme setup step is required.
  • Constructor Details

    • OidcProviderConfigurationOperations

      public OidcProviderConfigurationOperations()
  • Method Details

    • resolveDiscovery

      public OidcDiscoveryDocument resolveDiscovery(dev.getelements.elements.sdk.model.auth.OidcProviderConfiguration config)
      Resolves the discovery document for the given configuration, serving from the in-memory cache when possible. The cache handles staleness/refresh transparently.
      Parameters:
      config - the provider configuration
      Returns:
      the resolved discovery document
    • resolveScheme

      public dev.getelements.elements.sdk.model.auth.OidcAuthScheme resolveScheme(dev.getelements.elements.sdk.model.auth.OidcProviderConfiguration config, OidcDiscoveryDocument discoveryDocument)
      Finds the OidcAuthScheme matching the discovery document's issuer, creating one (seeded with the document's JWKS URI) if none exists yet. The actual JWKS key material is still fetched lazily by the existing JWKS cache-on-miss logic the first time an unknown kid is seen.
      Parameters:
      config - the provider configuration
      discoveryDocument - the already-resolved discovery document for this configuration
      Returns:
      the resolved or newly-created scheme
    • getOidcAuthSchemeDao

      public dev.getelements.elements.sdk.dao.OidcAuthSchemeDao getOidcAuthSchemeDao()
    • setOidcAuthSchemeDao

      @Inject public void setOidcAuthSchemeDao(dev.getelements.elements.sdk.dao.OidcAuthSchemeDao oidcAuthSchemeDao)
    • getDiscoveryCache

      public OidcDiscoveryCache getDiscoveryCache()
    • setDiscoveryCache

      @Inject public void setDiscoveryCache(OidcDiscoveryCache discoveryCache)