Interface DynamicClient


public interface DynamicClient
Interface for handling client data from the OAuth 2.0 Dynamic Client Registration Protocol.
Since:
9.0
  • Method Details

    • getClientId

      String getClientId()
      Returns the ID of the client. No setter is available as this value must be dictated internally by PingFederate.
      Returns:
      The client ID.
    • getName

      String getName()
      Returns the name of client.
      Returns:
      The client name.
    • setName

      void setName(String name)
      Set the name of the client.
      Parameters:
      name - New client name.
    • getSoftwareStatement

      String getSoftwareStatement()
      Returns the software statement of the client.
      Returns:
      The client software statement.
    • getClientAuthenticationType

      String getClientAuthenticationType()
      Returns the specified ClientAuthType as a String.
      Returns:
      The ClientAuthType as a String.
    • setClientAuthenticationType

      DynamicClient.Status setClientAuthenticationType(String authenticationType)
      Set the value of the client authentication type.
      Parameters:
      authenticationType - New ClientAuthType value.
      Returns:
      DynamicClient.Status.SUCCESS if successful, alternatively a DynamicClient.Status.FAILURE for an invalid type.
    • getClientCertIssuerDn

      String getClientCertIssuerDn()
      Returns the allowed Issuer DN of the client's certificate used for authentication.
      Returns:
      Issuer DN of the client's certificate used for authentication.
    • setClientCertIssuerDn

      void setClientCertIssuerDn(String clientCertIssuerDn)
      Set the allowed Issuer DN of the client's certificate used for authentication.
      Parameters:
      clientCertIssuerDn - New Issuer DN of the client's certificate used for authentication.
    • getClientCertSubjectDn

      String getClientCertSubjectDn()
      Returns the allowed Subject DN of the client's certificate used for authentication.
      Returns:
      Subject DN of the client's certificate used for authentication.
    • setClientCertSubjectDn

      void setClientCertSubjectDn(String clientCertSubjectDn)
      Set the allowed Subject DN of the client's certificate used for authentication.
      Parameters:
      clientCertSubjectDn - New Subject DN of the client's certificate used for authentication.
    • getJwksUrl

      String getJwksUrl()
      Returns the client's JWKS URL for JWT validation.
      Returns:
      JWKS URL for JWT validation.
    • setJwksUrl

      void setJwksUrl(String jwksUrl)
      Set the client's JWKS URL for JWT validation.
      Parameters:
      jwksUrl - New JWKS URL for JWT validation.
    • getJwks

      String getJwks()
      Returns the client's JWKS for JWT validation.
      Returns:
      JWKS for JWT validation.
    • setJwks

      void setJwks(String jwks)
      Set the client's JWKS for JWT validation.
      Parameters:
      jwks - New JWKS for JWT validation.
    • getSecret

      String getSecret()
      Returns the client's secret used for authentication.
      Returns:
      Secret used for authentication.
    • setSecret

      void setSecret(String secret)
      Set the client's secret for authentication.
      Parameters:
      secret - New client secret used for authentication.
    • generateSecret

      void generateSecret(int length)
      Generate a random alphanumeric secret to be used for authentication.
      Parameters:
      length - The length (in characters) of the random secret.
    • getTokenEndpointAuthSigningAlgorithm

      String getTokenEndpointAuthSigningAlgorithm()
      Returns the allowed JWT Token Endpoint authentication signing algorithm.
      Returns:
      The allowed signing algorithm
      Since:
      9.2.3
    • setTokenEndpointAuthSigningAlgorithm

      void setTokenEndpointAuthSigningAlgorithm(String algorithm)
      Set the allowed JWT Token Endpoint authentication signing algorithm.
      Parameters:
      algorithm - The allowed signing algorithm
      Since:
      9.2.3
    • getRedirectUris

      List<String> getRedirectUris()
      Returns the client's List of redirect URIs.
      Returns:
      List of redirect URIs.
    • setRedirectUris

      void setRedirectUris(List<String> redirectUris)
      Set the client's redirect URIs.
      Parameters:
      redirectUris - New List of redirect URIs.
    • getGrantTypes

      Set<String> getGrantTypes()
      Returns the client's allowed Set of grant types.
      Returns:
      Set of grant types allowed by the client.
    • setGrantTypes

      void setGrantTypes(Set<String> grantTypes)
      Set the client's allowed Set of grant types.
      Parameters:
      grantTypes - New Set of grant types allowed by the client.
    • getScopes

      List<String> getScopes()
      Returns the client's List of scopes.
      Returns:
      List of scopes.
    • setScopes

      void setScopes(List<String> scopes)
      Set the client's List of scopes.
      Parameters:
      scopes - New List of scopes.
    • getAllowedAuthorizationDetailsTypes

      List<String> getAllowedAuthorizationDetailsTypes()
      Returns the client's List of Authorization details.
      Returns:
      List of Authorization details.
      Since:
      11.2
    • setAllowedAuthorizationDetailsTypes

      void setAllowedAuthorizationDetailsTypes(List<String> authorizationDetailsTypes)
      Set the client's List of authorization details.
      Parameters:
      authorizationDetailsTypes - List of Authorization details.
    • getIdTokenSigningAlgorithm

      String getIdTokenSigningAlgorithm()
      Returns the client's ID Token signing algorithm.
      Returns:
      The client's ID Token signing algorithm.
    • setIdTokenSigningAlgorithm

      void setIdTokenSigningAlgorithm(String algorithm)
      Set the client's ID Token signing algorithm.
      Parameters:
      algorithm - New ID Token signing algorithm for the client.
    • getIdTokenEncryptionAlgorithm

      String getIdTokenEncryptionAlgorithm()
      Returns the client's ID Token encryption algorithm.
      Returns:
      The client's ID Token encryption algorithm.
    • setIdTokenEncryptionAlgorithm

      void setIdTokenEncryptionAlgorithm(String algorithm)
      Set the client's ID Token encryption algorithm.
      Parameters:
      algorithm - New ID Token encryption algorithm for the client.
    • getIdTokenContentEncryptionAlgorithm

      String getIdTokenContentEncryptionAlgorithm()
      Returns the client's ID Token content encryption algorithm.
      Returns:
      The client's ID Token content encryption algorithm.
    • setIdTokenContentEncryptionAlgorithm

      void setIdTokenContentEncryptionAlgorithm(String algorithm)
      Set the client's ID Token content encryption algorithm.
      Parameters:
      algorithm - New ID Token content encryption algorithm for the client.
    • getLogoUrl

      String getLogoUrl()
      Returns the client's logo URL.
      Returns:
      URL of the client's logo.
    • setLogoUrl

      void setLogoUrl(String logoUrl)
      Set value of client's logo URL.
      Parameters:
      logoUrl - New URL for the client's logo.
    • getClientMetadataKeys

      Set<String> getClientMetadataKeys()
      Returns a Set of metadata keys containing both internal keys and defined extended metadata.
      Returns:
      Set of metadata keys.
    • getClientMetadataValues

      List<String> getClientMetadataValues(String key)
      Returns client metadata values for a given key.
      Parameters:
      key - A metadata key.
      Returns:
      List of values or an empty List if it's not available.
    • addClientMetadataValues

      DynamicClient.Status addClientMetadataValues(String key, List<String> values)
      Set a new client metadata value. The key may refer to extended metadata, or internal PingFederate configuration for the client. Internal PingFederate configuration must be single valued. Should the List contain more than one element then DynamicClient.Status.MULTI_VALUE_NOT_ALLOWED is returned and the value is not stored.
      Parameters:
      key - A client metadata key.
      values - A List of values.
      Returns:
      DynamicClient.Status.SUCCESS if successful, DynamicClient.Status.INVALID_KEY if the key is not valid, DynamicClient.Status.MULTI_VALUE_NOT_ALLOWED if values contains multiple entries and it's not valid.
    • getRestrictedResponseTypes

      List<String> getRestrictedResponseTypes()
      Returns the client's restricted response types
      Returns:
      List of restricted response types
    • setRestrictedResponseTypes

      void setRestrictedResponseTypes(List<String> restrictedResponseTypes)
      Set the client's restricted response types
      Parameters:
      restrictedResponseTypes - New List of restricted response types
    • isRequireSignedRequests

      boolean isRequireSignedRequests()
      Indicates whether the new client requires a signed request object.
      Returns:
      true if client requires signed requests, false otherwise
      Since:
      9.1
    • getRequestObjectSigningAlgorithm

      String getRequestObjectSigningAlgorithm()
      Returns the allowed Request Object signing algorithm.
      Returns:
      The allowed signing algorithm
      Since:
      9.2.3
    • setRequestObjectSigningAlgorithm

      void setRequestObjectSigningAlgorithm(String algorithm)
      Sets the allowed Request Object signing algorithm.
      Parameters:
      algorithm - The allowed signing algorithm
      Since:
      9.2.3
    • getCibaDeliveryMode

      String getCibaDeliveryMode()
      Returns the CIBA token delivery mode.
      Returns:
      the CIBA token delivery mode.
      Since:
      9.3
    • setCibaDeliveryMode

      void setCibaDeliveryMode(String mode)
      Sets the CIBA token delivery mode.
      Parameters:
      mode - the CIBA token delivery mode.
      Since:
      9.3
    • getCibaNotificationEndpoint

      String getCibaNotificationEndpoint()
      Returns the CIBA notification endpoint.
      Returns:
      the endpoint at which the OP will post a notification after a successful or failed end-user authentication.
      Since:
      9.3
    • setCibaNotificationEndpoint

      void setCibaNotificationEndpoint(String endpoint)
      Sets the CIBA notification endpoint.
      Parameters:
      endpoint - the endpoint at which the OP will post a notification after a successful or failed end-user authentication.
      Since:
      9.3
    • isCibaSupportUserCode

      boolean isCibaSupportUserCode()
      Returns whether the client supports the user_code parameter.
      Returns:
      Whether the client supports the user_code parameter.
      Since:
      9.3
    • setCibaSupportUserCode

      void setCibaSupportUserCode(boolean supportUserCode)
      Sets whether the client supports the user_code parameter.
      Parameters:
      supportUserCode - whether the client supports the user_code parameter.
      Since:
      9.3
    • isPairwiseUserType

      boolean isPairwiseUserType()
      Returns whether the client uses Pairwise Pseudononymous Identifiers (PPID) for the subject.
      Returns:
      whether the client uses Pairwise Pseudononymous Identifiers (PPID) for the subject.
      Since:
      9.3
    • setPairwiseUserType

      void setPairwiseUserType(boolean pairwiseUserType)
      Sets whether the client uses Pairwise Pseudononymous Identifiers (PPID) for the subject.
      Parameters:
      pairwiseUserType - whether the client supports the user_code parameter.
      Since:
      9.3
    • getSectorIdentifierUri

      String getSectorIdentifierUri()
      Returns the Sector Identifier URI.
      Returns:
      the Sector Identifier URI.
      Since:
      9.3
    • setSectorIdentifierUri

      void setSectorIdentifierUri(String sectorIdentifierUri)
      Sets the Sector Identifier URI.
      Parameters:
      sectorIdentifierUri - the Sector Identifier URI.
      Since:
      9.3
    • getCibaRequestObjectSigningAlgorithm

      String getCibaRequestObjectSigningAlgorithm()
      Returns the allowed CIBA Request Object signing algorithm.
      Returns:
      The allowed CIBA signing algorithm
      Since:
      9.3
    • setCibaRequestObjectSigningAlgorithm

      void setCibaRequestObjectSigningAlgorithm(String algorithm)
      Sets the allowed CIBA Request Object signing algorithm.
      Parameters:
      algorithm - The allowed CIBA signing algorithm
      Since:
      9.3
    • isRequirePushedAuthorizationRequests

      boolean isRequirePushedAuthorizationRequests()
      Indicates whether the only means of initiating an authorization request the client is allowed to use is a pushed authorization request.
      Returns:
      whether PAR is required
      Since:
      10.2
    • setRequirePushedAuthorizationRequests

      void setRequirePushedAuthorizationRequests(boolean requirePar)
      Sets whether the only means of initiating an authorization request the client is allowed to use is a pushed authorization request.
      Parameters:
      requirePar - whether PAR required
      Since:
      10.2
    • getIntrospectionSigningAlgorithm

      String getIntrospectionSigningAlgorithm()
      Returns the client's Token Introspection signing algorithm.
      Returns:
      The client's Token Introspection signing algorithm.
      Since:
      11.1.0
    • setIntrospectionSigningAlgorithm

      void setIntrospectionSigningAlgorithm(String algorithm)
      Set the client's Token Introspection signing algorithm.
      Parameters:
      algorithm - New Token Introspection signing algorithm for the client.
      Since:
      11.1.0
    • getIntrospectionEncryptionAlgorithm

      String getIntrospectionEncryptionAlgorithm()
      Returns the client's Token Introspection encryption algorithm.
      Returns:
      The client's Token Introspection encryption algorithm.
      Since:
      11.1.0
    • setIntrospectionEncryptionAlgorithm

      void setIntrospectionEncryptionAlgorithm(String algorithm)
      Set the client's Token Introspection encryption algorithm.
      Parameters:
      algorithm - New Token Introspection encryption algorithm for the client.
      Since:
      11.1.0
    • getIntrospectionContentEncryptionAlgorithm

      String getIntrospectionContentEncryptionAlgorithm()
      Returns the client's Token Introspection content encryption algorithm.
      Returns:
      The client's Token Introspection content encryption algorithm.
      Since:
      11.1.0
    • setIntrospectionContentEncryptionAlgorithm

      void setIntrospectionContentEncryptionAlgorithm(String algorithm)
      Set the client's Token Introspection content encryption algorithm.
      Parameters:
      algorithm - New Token Introspection content encryption algorithm for the client.
      Since:
      11.1.0
    • getAuthorizationResponseSigningAlgorithm

      String getAuthorizationResponseSigningAlgorithm()
      Returns the client's Authorization Response signing algorithm.
      Returns:
      The client's Authorization Response signing algorithm.
      Since:
      11.1.0
    • setAuthorizationResponseSigningAlgorithm

      void setAuthorizationResponseSigningAlgorithm(String algorithm)
      Set the client's Authorization Response signing algorithm.
      Parameters:
      algorithm - New Token Authorization Response algorithm for the client.
      Since:
      11.1.0
    • getAuthorizationResponseEncryptionAlgorithm

      String getAuthorizationResponseEncryptionAlgorithm()
      Returns the client's Authorization Response encryption algorithm.
      Returns:
      The client's Authorization Response encryption algorithm.
      Since:
      11.1.0
    • setAuthorizationResponseEncryptionAlgorithm

      void setAuthorizationResponseEncryptionAlgorithm(String algorithm)
      Set the client's Authorization Response encryption algorithm.
      Parameters:
      algorithm - New Authorization Response encryption algorithm for the client.
      Since:
      11.1.0
    • getAuthorizationResponseContentEncryptionAlgorithm

      String getAuthorizationResponseContentEncryptionAlgorithm()
      Returns the client's Authorization Response content encryption algorithm.
      Returns:
      The client's Authorization Response content encryption algorithm.
      Since:
      11.1.0
    • setAuthorizationResponseContentEncryptionAlgorithm

      void setAuthorizationResponseContentEncryptionAlgorithm(String algorithm)
      Set the client's Authorization Response content encryption algorithm.
      Parameters:
      algorithm - New Authorization Response content encryption algorithm for the client.
      Since:
      11.1.0
    • getBackChannelLogoutUri

      String getBackChannelLogoutUri()
      Returns the client's back-channel logout URI.
      Returns:
      The client's back-channel logout URI.
      Since:
      11.3
    • setBackChannelLogoutUri

      void setBackChannelLogoutUri(String backchannelLogoutUri)
      Set the client's back-channel logout URI.
      Parameters:
      backchannelLogoutUri - The client's back-channel logout URI.
      Since:
      11.3
    • getFrontChannelLogoutUri

      String getFrontChannelLogoutUri()
      Returns the client's front-channel logout URI.
      Returns:
      The client's front-channel logout URI.
      Since:
      12.0
    • setFrontChannelLogoutUri

      void setFrontChannelLogoutUri(String frontchannelLogoutUri)
      Set the client's front-channel logout URI.
      Parameters:
      frontchannelLogoutUri - The client's front-channel logout URI.
      Since:
      12.0
    • getPostLogoutRedirectUris

      List<String> getPostLogoutRedirectUris()
      Returns the client's post-logout redirect URIs.
      Returns:
      The client's post-logout redirect URIs.
      Since:
      12.0
    • setPostLogoutRedirectUris

      void setPostLogoutRedirectUris(List<String> postLogoutRedirectUris)
      Set the client's post-logout redirect URIs.
      Parameters:
      postLogoutRedirectUris - The client's post-logout redirect URIs.
      Since:
      12.0
    • setDescription

      void setDescription(String description)
      Set description for the client.
      Parameters:
      description - , description for the client.
      Since:
      11.3
    • isRequireDpop

      boolean isRequireDpop()
      Returns whether the client always uses DPoP for token requests.
      Returns:
      whether DPoP is required
      Since:
      11.3
    • setRequireDpop

      void setRequireDpop(boolean requireDpop)
      Sets whether the client always uses DPoP for token requests.
      Parameters:
      requireDpop - whether DPoP required
      Since:
      11.3
    • getUserInfoResponseSigningAlgorithm

      String getUserInfoResponseSigningAlgorithm()
      Returns the client's UserInfo Response signing algorithm.
      Returns:
      The client's UserInfo Response signing algorithm.
      Since:
      12.2
    • setUserInfoResponseSigningAlgorithm

      void setUserInfoResponseSigningAlgorithm(String algorithm)
      Set the client's UserInfo Response signing algorithm.
      Parameters:
      algorithm - New UserInfo Response algorithm for the client.
      Since:
      12.2
    • getUserInfoResponseEncryptionAlgorithm

      String getUserInfoResponseEncryptionAlgorithm()
      Returns the client's UserInfo Response encryption algorithm.
      Returns:
      The client's UserInfo Response encryption algorithm.
      Since:
      12.2
    • setUserInfoResponseEncryptionAlgorithm

      void setUserInfoResponseEncryptionAlgorithm(String algorithm)
      Set the client's UserInfo Response encryption algorithm.
      Parameters:
      algorithm - New UserInfo Response encryption algorithm for the client.
      Since:
      12.2
    • getUserInfoResponseContentEncryptionAlgorithm

      String getUserInfoResponseContentEncryptionAlgorithm()
      Returns the client's UserInfo Response content encryption algorithm.
      Returns:
      The client's UserInfo Response content encryption algorithm.
      Since:
      12.2
    • setUserInfoResponseContentEncryptionAlgorithm

      void setUserInfoResponseContentEncryptionAlgorithm(String algorithm)
      Set the client's UserInfo Response content encryption algorithm.
      Parameters:
      algorithm - New UserInfo Response content encryption algorithm for the client.
      Since:
      12.2