Class JdbcSecurityRealm
java.lang.Object
org.wildfly.security.auth.realm.jdbc.JdbcSecurityRealm
- All Implemented Interfaces:
CacheableSecurityRealm,SecurityRealm
Security realm implementation backed by a database.
- Author:
- Pedro Igor
-
Field Summary
Fields inherited from interface org.wildfly.security.auth.server.SecurityRealm
EMPTY_REALM -
Method Summary
Modifier and TypeMethodDescriptionstatic JdbcSecurityRealmBuilderbuilder()getCredentialAcquireSupport(Class<? extends Credential> credentialType, String algorithmName, AlgorithmParameterSpec parameterSpec) Determine whether a credential of the given type and algorithm is definitely obtainable, possibly obtainable (for] some identities), or definitely not obtainable.getEvidenceVerifySupport(Class<? extends Evidence> evidenceType, String algorithmName) Determine whether a given type of evidence is definitely verifiable, possibly verifiable (for some identities), or definitely not verifiable.getRealmIdentity(Principal principal) Get a handle for to the identity for the given principal in the context of this security realm.voidregisterIdentityChangeListener(Consumer<Principal> listener) Register a listener that should be invoked by this realm in order to notify the caching layer about changes to a specific identity.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.wildfly.security.auth.server.SecurityRealm
getCredentialAcquireSupport, getRealmIdentity, getRealmIdentity, handleRealmEvent
-
Method Details
-
builder
-
getRealmIdentity
Description copied from interface:SecurityRealmGet a handle for to the identity for the given principal in the context of this security realm. Any validation / name mapping is an implementation detail for the realm. The identity may or may not exist. The returned handle must be cleaned up by a call toRealmIdentity.dispose().- Specified by:
getRealmIdentityin interfaceSecurityRealm- Parameters:
principal- the principal which identifies the identity within the realm (must not benull)- Returns:
- the
RealmIdentityfor the provided principal (notnull)
-
getCredentialAcquireSupport
public SupportLevel getCredentialAcquireSupport(Class<? extends Credential> credentialType, String algorithmName, AlgorithmParameterSpec parameterSpec) throws RealmUnavailableException Description copied from interface:SecurityRealmDetermine whether a credential of the given type and algorithm is definitely obtainable, possibly obtainable (for] some identities), or definitely not obtainable.- Specified by:
getCredentialAcquireSupportin interfaceSecurityRealm- Parameters:
credentialType- the exact credential type (must not benull)algorithmName- the algorithm name, ornullif any algorithm is acceptable or the credential type does not support algorithm namesparameterSpec- the algorithm parameters to match, ornullif any parameters are acceptable or the credential type does not support algorithm parameters- Returns:
- the level of support for this credential
- Throws:
RealmUnavailableException- if the realm is not able to handle requests for any reason
-
getEvidenceVerifySupport
public SupportLevel getEvidenceVerifySupport(Class<? extends Evidence> evidenceType, String algorithmName) throws RealmUnavailableException Description copied from interface:SecurityRealmDetermine whether a given type of evidence is definitely verifiable, possibly verifiable (for some identities), or definitely not verifiable.- Specified by:
getEvidenceVerifySupportin interfaceSecurityRealm- Parameters:
evidenceType- the type of evidence to be verified (must not benull)algorithmName- the algorithm name, ornullif any algorithm is acceptable or the evidence type does not support algorithm names- Returns:
- the level of support for this evidence type
- Throws:
RealmUnavailableException- if the realm is not able to handle requests for any reason
-
registerIdentityChangeListener
Description copied from interface:CacheableSecurityRealmRegister a listener that should be invoked by this realm in order to notify the caching layer about changes to a specific identity.- Specified by:
registerIdentityChangeListenerin interfaceCacheableSecurityRealm- Parameters:
listener- the listener
-