Class InlineJwksProvider

java.lang.Object
org.opensaml.xmlsec.keyinfo.impl.provider.AbstractKeyInfoProvider
net.shibboleth.oidc.metadata.keyinfo.ext.impl.provider.InlineJwksProvider
All Implemented Interfaces:
KeyInfoProvider

public class InlineJwksProvider extends AbstractKeyInfoProvider
Implementation of KeyInfoProvider which provides basic support for extracting a JWKCredential child of KeyInfo. The value is expected to be either a Base64-encoded value of either a single JWK credential or a JSON array of JWK credentials.
  • Field Details

    • log

      @Nonnull private final org.slf4j.Logger log
      Class logger.
  • Constructor Details

    • InlineJwksProvider

      public InlineJwksProvider()
  • Method Details

    • process

      @Nullable public Collection<Credential> process(@Nonnull KeyInfoCredentialResolver resolver, @Nonnull XMLObject keyInfoChild, @Nullable CriteriaSet criteriaSet, @Nonnull KeyInfoResolutionContext kiContext) throws SecurityException
      Throws:
      SecurityException
    • buildCredential

      @Nonnull protected BasicJWKCredential buildCredential(@Nonnull JWK jwk, @Nonnull KeyInfoResolutionContext kiContext)
      Build a JWKCredential.
      Parameters:
      jwk - input JWK
      kiContext - KeyInfo context
      Returns:
      the built credential
    • parseJWKs

      @Nullable protected List<JWK> parseJWKs(@Nullable String input)
      Parse JWKs out of a string.
      Parameters:
      input - input string
      Returns:
      parsed JWKs
    • parseJWKSet

      @Nullable protected JWKSet parseJWKSet(@Nullable String input)
      Parse JWKSet from a string.
      Parameters:
      input - input string
      Returns:
      parsed JWKSet
    • parseJWK

      @Nullable protected JWK parseJWK(@Nullable String input)
      Parse JWK from a string.
      Parameters:
      input - input string
      Returns:
      parsed JWK
    • handles

      public boolean handles(@Nonnull XMLObject keyInfoChild)
    • getJwksData

      @Nullable protected JwksData getJwksData(@Nonnull XMLObject xmlObject)
      Get the JwksData from the passed XML object.
      Parameters:
      xmlObject - an XML object, presumably a JwksData
      Returns:
      the JwksData which was found, or null if none