## Uses of Interface
com.holonplatform.auth.AuthenticationToken

- Packages that use AuthenticationToken
  Package | Description
  --- | ---
  com.holonplatform.auth |
  com.holonplatform.auth.internal |
  com.holonplatform.auth.token |
  com.holonplatform.spring.security |
  com.holonplatform.spring.security.internal |

- - ### Uses of AuthenticationToken in com.holonplatform.auth

    Classes in com.holonplatform.auth with type parameters of type AuthenticationToken
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Authenticator<T extends AuthenticationToken>` Authenticator is responsible for authenticating accounts using an `AuthenticationToken`.

    Methods in com.holonplatform.auth with type parameters of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `<T extends AuthenticationToken> void` | Realm.`addAuthenticator(Authenticator<T> authenticator)` Add a concrete `Authenticator` for a specific `AuthenticationToken` type to this Realm
    `default <T extends AuthenticationToken> Realm.Builder` | Realm.Builder.`authenticator(Authenticator<T> authenticator)` Deprecated. Use `Realm.Builder.withAuthenticator(Authenticator)`
    `static <T extends AuthenticationToken> Authenticator<T>` | Authenticator.`create(Class<? extends T> tokenType, Function<T,Authentication> authenticationFunction)` Create an `Authenticator` bound to the given token type and which uses the provided callback `Function` to perform the authentication strategy.
    `<T extends AuthenticationToken> Realm.Builder` | Realm.Builder.`withAuthenticator(Authenticator<T> authenticator)` Register given `Authenticator` in Realm.

    Methods in com.holonplatform.auth that return AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `static AuthenticationToken` | AuthenticationToken.`accountCredentials(String accountId, String secret)` Create a basic `AuthenticationToken` to represent a generic account authentication.
    `static AuthenticationToken` | Account.`accountCredentialsToken(String accountId, byte[] secret)` Create a new `AccountCredentialsToken` with given account id and secret.
    `static AuthenticationToken` | Account.`accountCredentialsToken(String accountId, String secret)` Create a new `AccountCredentialsToken` with given account id and secret.
    `static AuthenticationToken` | AuthenticationToken.`bearer(String token)` Create an `AuthenticationToken` to represent a `HttpHeaders.SCHEME_BEARER` token authentication.

    Methods in com.holonplatform.auth that return types with arguments of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `Optional<AuthenticationToken>` | AuthenticationToken.AuthenticationTokenResolver.`getAuthenticationToken(R request)` Parse given `request` message and try to obtain an `AuthenticationToken` if request is eligible for this resolver authentication mechanism.

    Methods in com.holonplatform.auth with parameters of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `Authentication` | AuthContext.`authenticate(AuthenticationToken authenticationToken)` Attempts to authenticate a user using given `AuthenticationToken`.

    Method parameters in com.holonplatform.auth with type arguments of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `static <M extends Message> AuthenticationToken.AuthenticationTokenResolver<M>` | AuthenticationToken.AuthenticationTokenResolver.`create(Class<? extends Message> messageType, Function<M,Optional<AuthenticationToken>> resolverFunction)` Create a new `AuthenticationToken.AuthenticationTokenResolver` for given `messageType`, providing the resolution function to obtain an `AuthenticationToken` from a message instance.
    `static <M extends Message> AuthenticationToken.AuthenticationTokenResolver<M>` | AuthenticationToken.AuthenticationTokenResolver.`create(Class<? extends Message> messageType, Function<M,Optional<AuthenticationToken>> resolverFunction, String scheme)` Create a new `AuthenticationToken.AuthenticationTokenResolver` for given `messageType`, providing the resolution function to obtain an `AuthenticationToken` from a message instance.
    `boolean` | Realm.`supportsToken(Class<? extends AuthenticationToken> authenticationTokenType)` Returns whether this Realm supports given `AuthenticationToken` type (i.e. and `Authenticator` bound to given token type is registered in realm)

  - ### Uses of AuthenticationToken in com.holonplatform.auth.internal

    Classes in com.holonplatform.auth.internal with type parameters of type AuthenticationToken
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DefaultCallbackAuthenticator<T extends AuthenticationToken>` A default `Authenticator` implementation which uses a callback `Function` to perform the authentication strategy.

    Methods in com.holonplatform.auth.internal with type parameters of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `<T extends AuthenticationToken> void` | DefaultRealm.`addAuthenticator(Authenticator<T> authenticator)`
    `<T extends AuthenticationToken> Realm.Builder` | DefaultRealm.RealmBuilder.`withAuthenticator(Authenticator<T> authenticator)`

    Methods in com.holonplatform.auth.internal that return types with arguments of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `Optional<AuthenticationToken>` | BasicAuthenticationTokenResolver.`getAuthenticationToken(HttpRequest request)`
    `Optional<AuthenticationToken>` | BearerAuthenticationTokenResolver.`getAuthenticationToken(HttpRequest request)`
    `Optional<AuthenticationToken>` | CallbackAuthenticationTokenResolver.`getAuthenticationToken(M request)`
    `Class<? extends AuthenticationToken>` | DefaultRealm.`getTokenType()`

    Methods in com.holonplatform.auth.internal with parameters of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `Authentication` | DefaultAuthContext.`authenticate(AuthenticationToken authenticationToken)`
    `Authentication` | DefaultRealm.`authenticate(AuthenticationToken authenticationToken)`

    Method parameters in com.holonplatform.auth.internal with type arguments of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | DefaultRealm.`supportsToken(Class<? extends AuthenticationToken> authenticationTokenType)`

    Constructor parameters in com.holonplatform.auth.internal with type arguments of type AuthenticationToken
    Constructor and Description
    `CallbackAuthenticationTokenResolver(Class<? extends Message> messageType, Function<M,Optional<AuthenticationToken>> resolverFunction, String scheme)` Constructor.

  - ### Uses of AuthenticationToken in com.holonplatform.auth.token

    Classes in com.holonplatform.auth.token that implement AuthenticationToken
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AccountCredentialsToken` Basic `AuthenticationToken` to represent a generic account authentication.
    `class` | `BearerAuthenticationToken` `AuthenticationToken` representing a Bearer authententication token.

  - ### Uses of AuthenticationToken in com.holonplatform.spring.security

    Subinterfaces of AuthenticationToken in com.holonplatform.spring.security
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `SpringSecurityAuthenticationToken` An `AuthenticationToken` which uses a Spring Security `Authentication` as authentication principal and credentials provider.

    Methods in com.holonplatform.spring.security with type parameters of type AuthenticationToken
    Modifier and Type | Method and Description
    --- | ---
    `static <T extends AuthenticationToken,A extends org.springframework.security.core.Authentication> org.springframework.security.authentication.AuthenticationProvider` | SpringSecurity.`authenticationProvider(Authenticator<T> authenticator, Class<A> authenticationType, Function<A,T> converter)` Create a Spring Security `AuthenticationProvider` using an `Authenticator` as concrete authentication provider.

  - ### Uses of AuthenticationToken in com.holonplatform.spring.security.internal

    Classes in com.holonplatform.spring.security.internal with type parameters of type AuthenticationToken
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractAuthenticationManagerAuthenticator<T extends AuthenticationToken>` Abstract class for `AuthenticationManager` based `Authenticator`s.
    `class` | `AuthenticationProviderAdapter<T extends AuthenticationToken,A extends org.springframework.security.core.Authentication>` Adapter to use an `Authenticator` as a Spring Security `AuthenticationProvider`.

    Classes in com.holonplatform.spring.security.internal that implement AuthenticationToken
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DefaultSpringSecurityAuthenticationToken` Default `SpringSecurityAuthenticationToken` implementation.

Copyright © 2019 The Holon Platform. All rights reserved.