Interface SubjectCredentialManager

All Known Implementing Classes:
SubjectCredentialManagerCacheAdapter, UserCredentialManager

public interface SubjectCredentialManager
Validates and manages the credentials of a known entity (for example, a user).
  • Method Details

    • isValid

      boolean isValid(List<CredentialInput> inputs)
      Validate a list of credentials.
      Returns:
      true if inputs are valid
    • isValid

      default boolean isValid(CredentialInput... inputs)
      Validate a list of credentials.
      Returns:
      true if inputs are valid
    • updateCredential

      boolean updateCredential(CredentialInput input)
      Updates a credential of the entity with the inputs provided by the entity.
      Returns:
      true if credentials have been updated successfully
    • updateStoredCredential

      void updateStoredCredential(CredentialModel cred)
      Updates a credential of the entity with an updated CredentialModel. Usually called by a CredentialProvider.
    • createStoredCredential

      CredentialModel createStoredCredential(CredentialModel cred)
      Updates a credential of the entity with an updated CredentialModel. Usually called by a CredentialProvider.
    • removeStoredCredentialById

      boolean removeStoredCredentialById(String id)
      Updates a credential of the entity with an updated CredentialModel. Usually called by a CredentialProvider, or from the account management when a user removes, for example, an OTP token.
    • getStoredCredentialById

      CredentialModel getStoredCredentialById(String id)
      Read a stored credential.
    • getStoredCredentialsStream

      Stream<CredentialModel> getStoredCredentialsStream()
      Read stored credentials as a stream.
    • getStoredCredentialsByTypeStream

      Stream<CredentialModel> getStoredCredentialsByTypeStream(String type)
      Read stored credentials by type as a stream.
    • getStoredCredentialByNameAndType

      CredentialModel getStoredCredentialByNameAndType(String name, String type)
    • moveStoredCredentialTo

      boolean moveStoredCredentialTo(String id, String newPreviousCredentialId)
      Re-order the stored credentials.
    • updateCredentialLabel

      void updateCredentialLabel(String credentialId, String credentialLabel)
      Update the label for a stored credentials chosen by the owner of the entity.
    • disableCredentialType

      void disableCredentialType(String credentialType)
      Disable a credential by type.
    • getDisableableCredentialTypesStream

      Stream<String> getDisableableCredentialTypesStream()
      List the credentials that can be disabled, for example, to show the list to the entity (aka user) or an admin.
      Returns:
      stream with credential types that can be disabled
    • isConfiguredFor

      boolean isConfiguredFor(String type)
      Check if the credential type is configured for this entity.
      Parameters:
      type - credential type to check
      Returns:
      true if the credential type has been
    • isConfiguredLocally

      @Deprecated boolean isConfiguredLocally(String type)
      Deprecated.
    • getConfiguredUserStorageCredentialTypesStream

      @Deprecated Stream<String> getConfiguredUserStorageCredentialTypesStream()
      Deprecated.
    • createCredentialThroughProvider

      @Deprecated CredentialModel createCredentialThroughProvider(CredentialModel model)
      Deprecated.