Uses of Interface
org.apache.shiro.authc.AuthenticationToken
-
Packages that use AuthenticationToken Package Description org.apache.shiro.authc Core interfaces and exceptions concerning Authentication (the act of logging-in).org.apache.shiro.authc.credential Support for validating credentials (such as passwords or X509 certificates) during authentication via theCredentialsMatcher
interface and its supporting implementations.org.apache.shiro.authc.pam Support for PAM, or Pluggable Authentication Modules, which is the capability to authenticate a user against multiple configurable (pluggable) modules (Shiro calls theseRealm
s).org.apache.shiro.mgt Provides the masterSecurityManager
interface and a default implementation hierarchy for managing all aspects of Shiro's functionality in an application.org.apache.shiro.realm Components and sub-packages used in supporting the coreRealm
interface.org.apache.shiro.realm.activedirectory Realms that acquire security data from a Microsoft Active Directory.org.apache.shiro.realm.jdbc Realms that acquire security data from an RDBMS (Relational Database Management System) using the JDBC API.org.apache.shiro.realm.ldap Realms that acquire security data from an LDAP (Lightweight Directory Access Protocol) server utilizing LDAP/Naming APIs.org.apache.shiro.subject Components supporting theSubject
interface, the most important concept in Shiro's API.org.apache.shiro.subject.support Concrete support implementations of most of theorg.apache.shiro.subject
interfaces. -
-
Uses of AuthenticationToken in org.apache.shiro.authc
Subinterfaces of AuthenticationToken in org.apache.shiro.authc Modifier and Type Interface Description interface
HostAuthenticationToken
AHostAuthenticationToken
retains the host information from where an authentication attempt originates.interface
RememberMeAuthenticationToken
AnAuthenticationToken
that indicates if the user wishes their identity to be remembered across sessions.Classes in org.apache.shiro.authc that implement AuthenticationToken Modifier and Type Class Description class
BearerToken
AAuthenticationToken
that contains an a Bearer token or API key, typically received via an HTTPAuthorization
header.class
UsernamePasswordToken
A simple username/password authentication token to support the most widely-used authentication mechanism.Methods in org.apache.shiro.authc with parameters of type AuthenticationToken Modifier and Type Method Description AuthenticationInfo
AbstractAuthenticator. authenticate(AuthenticationToken token)
Implementation of theAuthenticator
interface that functions in the following manner: Calls templatedoAuthenticate
method for subclass execution of the actual authentication behavior. If anAuthenticationException
is thrown duringdoAuthenticate
,notify
any registeredAuthenticationListener
s of the exception and then propagate the exception for the caller to handle. If no exception is thrown (indicating a successful login),notify
any registeredAuthenticationListener
s of the successful attempt. Return theAuthenticationInfo
AuthenticationInfo
Authenticator. authenticate(AuthenticationToken authenticationToken)
Authenticates a user based on the submittedAuthenticationToken
.protected abstract AuthenticationInfo
AbstractAuthenticator. doAuthenticate(AuthenticationToken token)
Template design pattern hook for subclasses to implement specific authentication behavior.protected void
AbstractAuthenticator. notifyFailure(AuthenticationToken token, AuthenticationException ae)
Notifies any registeredAuthenticationListener
s that authentication failed for the specifiedtoken
which resulted in the specifiedae
exception.protected void
AbstractAuthenticator. notifySuccess(AuthenticationToken token, AuthenticationInfo info)
Notifies any registeredAuthenticationListener
s that authentication was successful for the specifiedtoken
which resulted in the specifiedinfo
.void
AuthenticationListener. onFailure(AuthenticationToken token, AuthenticationException ae)
Callback triggered when an authentication attempt for aSubject
has failed.void
AuthenticationListener. onSuccess(AuthenticationToken token, AuthenticationInfo info)
Callback triggered when an authentication attempt for aSubject
has succeeded. -
Uses of AuthenticationToken in org.apache.shiro.authc.credential
Methods in org.apache.shiro.authc.credential with parameters of type AuthenticationToken Modifier and Type Method Description boolean
AllowAllCredentialsMatcher. doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info)
Returnstrue
always no matter what the method arguments are.boolean
CredentialsMatcher. doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info)
Returnstrue
if the provided token credentials match the stored account credentials,false
otherwise.boolean
HashedCredentialsMatcher. doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info)
This implementation first hashes thetoken
's credentials, potentially using asalt
if theinfo
argument is aSaltedAuthenticationInfo
.boolean
PasswordMatcher. doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info)
boolean
SimpleCredentialsMatcher. doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info)
This implementation acquires thetoken
's credentials (viagetCredentials(token)
) and then theaccount
's credentials (viagetCredentials(account)
) and then passes both of them to theequals(tokenCredentials, accountCredentials)
method for equality comparison.protected Object
SimpleCredentialsMatcher. getCredentials(AuthenticationToken token)
Returns thetoken
's credentials.protected Object
HashedCredentialsMatcher. getSalt(AuthenticationToken token)
Deprecated.since Shiro 1.1.protected Object
PasswordMatcher. getSubmittedPassword(AuthenticationToken token)
protected Object
HashedCredentialsMatcher. hashProvidedCredentials(AuthenticationToken token, AuthenticationInfo info)
Hash the providedtoken
's credentials using the salt stored with the account if theinfo
instance is aninstanceof
SaltedAuthenticationInfo
(see the class-level JavaDoc for why this is the preferred approach). -
Uses of AuthenticationToken in org.apache.shiro.authc.pam
Methods in org.apache.shiro.authc.pam with parameters of type AuthenticationToken Modifier and Type Method Description AuthenticationInfo
AbstractAuthenticationStrategy. afterAllAttempts(AuthenticationToken token, AuthenticationInfo aggregate)
Simply returns theaggregate
argument without modification.AuthenticationInfo
AtLeastOneSuccessfulStrategy. afterAllAttempts(AuthenticationToken token, AuthenticationInfo aggregate)
Ensures that theaggregate
method argument is notnull
andaggregate.
is notgetPrincipals()
null
, and if either isnull
, throws an AuthenticationException to indicate that none of the realms authenticated successfully.AuthenticationInfo
AuthenticationStrategy. afterAllAttempts(AuthenticationToken token, AuthenticationInfo aggregate)
Method invoked by the ModularAuthenticator signifying that all of its configured Realms have been consulted for account data, allowing post-processing after all realms have completed.AuthenticationInfo
AbstractAuthenticationStrategy. afterAttempt(Realm realm, AuthenticationToken token, AuthenticationInfo singleRealmInfo, AuthenticationInfo aggregateInfo, Throwable t)
Base implementation that will aggregate the specifiedsingleRealmInfo
into theaggregateInfo
and then returns the aggregate.AuthenticationInfo
AllSuccessfulStrategy. afterAttempt(Realm realm, AuthenticationToken token, AuthenticationInfo info, AuthenticationInfo aggregate, Throwable t)
Merges the specifiedinfo
into theaggregate
argument and returns it (just as the parent implementation does), but additionally ensures the following: if theThrowable
argument is notnull
, re-throws it to immediately cancel the authentication process, since this strategy requires all realms to authenticate successfully. neither theinfo
oraggregate
argument isnull
to ensure that each realm did in fact authenticate successfullyAuthenticationInfo
AuthenticationStrategy. afterAttempt(Realm realm, AuthenticationToken token, AuthenticationInfo singleRealmInfo, AuthenticationInfo aggregateInfo, Throwable t)
Method invoked by the ModularAuthenticator just after the given realm has been consulted for authentication, allowing post-authentication-attempt logic for that realm only.AuthenticationInfo
AbstractAuthenticationStrategy. beforeAllAttempts(Collection<? extends Realm> realms, AuthenticationToken token)
Simply returnsnew
, which supports aggregating account data across realms.SimpleAuthenticationInfo
();AuthenticationInfo
AuthenticationStrategy. beforeAllAttempts(Collection<? extends Realm> realms, AuthenticationToken token)
Method invoked by the ModularAuthenticator signifying that the authentication process is about to begin for the specifiedtoken
- called before anyRealm
is actually invoked.AuthenticationInfo
FirstSuccessfulStrategy. beforeAllAttempts(Collection<? extends Realm> realms, AuthenticationToken token)
Returnsnull
immediately, relying on this class'smerge
implementation to return only the firstinfo
object it encounters, ignoring all subsequent ones.AuthenticationInfo
AbstractAuthenticationStrategy. beforeAttempt(Realm realm, AuthenticationToken token, AuthenticationInfo aggregate)
Simply returns theaggregate
method argument, without modification.AuthenticationInfo
AllSuccessfulStrategy. beforeAttempt(Realm realm, AuthenticationToken token, AuthenticationInfo info)
Because all realms in this strategy must complete successfully, this implementation ensures that the givenRealm
supports
the giventoken
argument.AuthenticationInfo
AuthenticationStrategy. beforeAttempt(Realm realm, AuthenticationToken token, AuthenticationInfo aggregate)
Method invoked by the ModularAuthenticator just prior to the realm being consulted for account data, allowing pre-authentication-attempt logic for that realm only.AuthenticationInfo
FirstSuccessfulStrategy. beforeAttempt(Realm realm, AuthenticationToken token, AuthenticationInfo aggregate)
Throws ShortCircuitIterationException if stopAfterFirstSuccess is set and authentication is successful with a previously consulted realm.protected AuthenticationInfo
ModularRealmAuthenticator. doAuthenticate(AuthenticationToken authenticationToken)
Attempts to authenticate the given token by iterating over the internal collection ofRealm
s.protected AuthenticationInfo
ModularRealmAuthenticator. doMultiRealmAuthentication(Collection<Realm> realms, AuthenticationToken token)
Performs the multi-realm authentication attempt by calling back to aAuthenticationStrategy
object as each realm is consulted forAuthenticationInfo
for the specifiedtoken
.protected AuthenticationInfo
ModularRealmAuthenticator. doSingleRealmAuthentication(Realm realm, AuthenticationToken token)
Performs the authentication attempt by interacting with the single configured realm, which is significantly simpler than performing multi-realm logic. -
Uses of AuthenticationToken in org.apache.shiro.mgt
Methods in org.apache.shiro.mgt with parameters of type AuthenticationToken Modifier and Type Method Description AuthenticationInfo
AuthenticatingSecurityManager. authenticate(AuthenticationToken token)
Delegates to the wrappedAuthenticator
for authentication.protected Subject
DefaultSecurityManager. createSubject(AuthenticationToken token, AuthenticationInfo info, Subject existing)
Creates aSubject
instance for the user represented by the given method arguments.protected boolean
AbstractRememberMeManager. isRememberMe(AuthenticationToken token)
Determines whether or not remember me services should be performed for the specified token.Subject
DefaultSecurityManager. login(Subject subject, AuthenticationToken token)
First authenticates theAuthenticationToken
argument, and if successful, constructs aSubject
instance representing the authenticated account's identity.Subject
SecurityManager. login(Subject subject, AuthenticationToken authenticationToken)
Logs in the specified Subject using the givenauthenticationToken
, returning an updated Subject instance reflecting the authenticated state if successful or throwingAuthenticationException
if it is not.void
AbstractRememberMeManager. onFailedLogin(Subject subject, AuthenticationToken token, AuthenticationException ae)
Reacts to a failed login by immediatelyforgetting
any previously remembered identity.protected void
DefaultSecurityManager. onFailedLogin(AuthenticationToken token, AuthenticationException ae, Subject subject)
void
RememberMeManager. onFailedLogin(Subject subject, AuthenticationToken token, AuthenticationException ae)
Reacts to a failed authentication attempt, typically by forgetting any previously remembered principals for the Subject.void
AbstractRememberMeManager. onSuccessfulLogin(Subject subject, AuthenticationToken token, AuthenticationInfo info)
Reacts to the successful login attempt by first alwaysforgetting
any previously stored identity.protected void
DefaultSecurityManager. onSuccessfulLogin(AuthenticationToken token, AuthenticationInfo info, Subject subject)
void
RememberMeManager. onSuccessfulLogin(Subject subject, AuthenticationToken token, AuthenticationInfo info)
Reacts to a successful authentication attempt, typically saving the principals to be retrieved ('remembered') for future system access.void
AbstractRememberMeManager. rememberIdentity(Subject subject, AuthenticationToken token, AuthenticationInfo authcInfo)
Remembers a subject-unique identity for retrieval later.protected void
DefaultSecurityManager. rememberMeFailedLogin(AuthenticationToken token, AuthenticationException ex, Subject subject)
protected void
DefaultSecurityManager. rememberMeSuccessfulLogin(AuthenticationToken token, AuthenticationInfo info, Subject subject)
-
Uses of AuthenticationToken in org.apache.shiro.realm
Methods in org.apache.shiro.realm with parameters of type AuthenticationToken Modifier and Type Method Description protected void
AuthenticatingRealm. assertCredentialsMatch(AuthenticationToken token, AuthenticationInfo info)
Asserts that the submittedAuthenticationToken
's credentials match the stored accountAuthenticationInfo
's credentials, and if not, throws anAuthenticationException
.protected abstract AuthenticationInfo
AuthenticatingRealm. doGetAuthenticationInfo(AuthenticationToken token)
Retrieves authentication data from an implementation-specific datasource (RDBMS, LDAP, etc) for the given authentication token.protected AuthenticationInfo
SimpleAccountRealm. doGetAuthenticationInfo(AuthenticationToken token)
protected Object
AuthenticatingRealm. getAuthenticationCacheKey(AuthenticationToken token)
Returns the key under whichAuthenticationInfo
instances are cached if authentication caching is enabled.AuthenticationInfo
AuthenticatingRealm. getAuthenticationInfo(AuthenticationToken token)
This implementation functions as follows: It attempts to acquire any cachedAuthenticationInfo
corresponding to the specifiedAuthenticationToken
argument.AuthenticationInfo
Realm. getAuthenticationInfo(AuthenticationToken token)
Returns an account's authentication-specific information for the specified token, or null if no account could be found based on the token.protected boolean
AuthenticatingRealm. isAuthenticationCachingEnabled(AuthenticationToken token, AuthenticationInfo info)
Returnstrue
if authentication caching should be utilized based on the specifiedAuthenticationToken
and/orAuthenticationInfo
,false
otherwise.boolean
AuthenticatingRealm. supports(AuthenticationToken token)
Convenience implementation that returns getAuthenticationTokenClass().isAssignableFrom( token.getClass() );.boolean
Realm. supports(AuthenticationToken token)
Returns true if this realm wishes to authenticate the Subject represented by the givenAuthenticationToken
instance, false otherwise.Method parameters in org.apache.shiro.realm with type arguments of type AuthenticationToken Modifier and Type Method Description void
AuthenticatingRealm. setAuthenticationTokenClass(Class<? extends AuthenticationToken> authenticationTokenClass)
Sets the authenticationToken class supported by this realm. -
Uses of AuthenticationToken in org.apache.shiro.realm.activedirectory
Methods in org.apache.shiro.realm.activedirectory with parameters of type AuthenticationToken Modifier and Type Method Description protected AuthenticationInfo
ActiveDirectoryRealm. queryForAuthenticationInfo(AuthenticationToken token, LdapContextFactory ldapContextFactory)
Builds anAuthenticationInfo
object by querying the active directory LDAP context for the specified username. -
Uses of AuthenticationToken in org.apache.shiro.realm.jdbc
Methods in org.apache.shiro.realm.jdbc with parameters of type AuthenticationToken Modifier and Type Method Description protected AuthenticationInfo
JdbcRealm. doGetAuthenticationInfo(AuthenticationToken token)
-
Uses of AuthenticationToken in org.apache.shiro.realm.ldap
Methods in org.apache.shiro.realm.ldap with parameters of type AuthenticationToken Modifier and Type Method Description protected AuthenticationInfo
DefaultLdapRealm. createAuthenticationInfo(AuthenticationToken token, Object ldapPrincipal, Object ldapCredentials, LdapContext ldapContext)
Returns theAuthenticationInfo
resulting from a Subject's successful LDAP authentication attempt.protected AuthenticationInfo
AbstractLdapRealm. doGetAuthenticationInfo(AuthenticationToken token)
protected AuthenticationInfo
DefaultLdapRealm. doGetAuthenticationInfo(AuthenticationToken token)
Delegates toDefaultLdapRealm.queryForAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken, LdapContextFactory)
, wrapping anyNamingException
s in a ShiroAuthenticationException
to satisfy the parent method signature.protected Object
DefaultLdapRealm. getLdapPrincipal(AuthenticationToken token)
Returns the principal to use when creating the LDAP connection for an authentication attempt.protected abstract AuthenticationInfo
AbstractLdapRealm. queryForAuthenticationInfo(AuthenticationToken token, LdapContextFactory ldapContextFactory)
Abstract method that should be implemented by subclasses to builds anAuthenticationInfo
object by querying the LDAP context for the specified username.protected AuthenticationInfo
DefaultLdapRealm. queryForAuthenticationInfo(AuthenticationToken token, LdapContextFactory ldapContextFactory)
This implementation opens an LDAP connection using the token'sdiscovered principal
and providedcredentials
. -
Uses of AuthenticationToken in org.apache.shiro.subject
Methods in org.apache.shiro.subject that return AuthenticationToken Modifier and Type Method Description AuthenticationToken
SubjectContext. getAuthenticationToken()
Methods in org.apache.shiro.subject with parameters of type AuthenticationToken Modifier and Type Method Description void
Subject. login(AuthenticationToken token)
Performs a login attempt for this Subject/user.void
SubjectContext. setAuthenticationToken(AuthenticationToken token)
-
Uses of AuthenticationToken in org.apache.shiro.subject.support
Methods in org.apache.shiro.subject.support that return AuthenticationToken Modifier and Type Method Description AuthenticationToken
DefaultSubjectContext. getAuthenticationToken()
Methods in org.apache.shiro.subject.support with parameters of type AuthenticationToken Modifier and Type Method Description void
DelegatingSubject. login(AuthenticationToken token)
void
DefaultSubjectContext. setAuthenticationToken(AuthenticationToken token)
-