Packages

class SessionAuthenticatorService extends AuthenticatorService[SessionAuthenticator] with api.Logger

The service that handles the session authenticator.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SessionAuthenticatorService
  2. Logger
  3. AuthenticatorService
  4. ExecutionContextProvider
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new SessionAuthenticatorService(settings: SessionAuthenticatorSettings, fingerprintGenerator: FingerprintGenerator, authenticatorEncoder: AuthenticatorEncoder, sessionCookieBaker: SessionCookieBaker, clock: Clock)(implicit executionContext: ExecutionContext)

    settings

    The authenticator settings.

    fingerprintGenerator

    The fingerprint generator implementation.

    authenticatorEncoder

    The authenticator encoder.

    sessionCookieBaker

    The session cookie baker.

    clock

    The clock implementation.

    executionContext

    The execution context to handle the asynchronous operations.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  6. def create(loginInfo: LoginInfo)(implicit request: RequestHeader): Future[SessionAuthenticator]

    Creates a new authenticator for the specified login info.

    Creates a new authenticator for the specified login info.

    loginInfo

    The login info for which the authenticator should be created.

    request

    The request header.

    returns

    An authenticator.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  7. def discard(authenticator: SessionAuthenticator, result: Result)(implicit request: RequestHeader): Future[AuthenticatorResult]

    Removes the authenticator from session.

    Removes the authenticator from session.

    authenticator

    The authenticator instance.

    result

    The result to manipulate.

    request

    The request header.

    returns

    The manipulated result.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  8. def embed(session: Session, request: RequestHeader): RequestHeader

    Overrides the user session in request.

    Overrides the user session in request.

    session

    The session to embed.

    request

    The request header.

    returns

    The manipulated request header.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  9. def embed(session: Session, result: Result)(implicit request: RequestHeader): Future[AuthenticatorResult]

    Embeds the user session into the result.

    Embeds the user session into the result.

    session

    The session to embed.

    result

    The result to manipulate.

    request

    The request header.

    returns

    The manipulated result.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  12. implicit val executionContext: ExecutionContext

    The execution context to handle the asynchronous operations.

    The execution context to handle the asynchronous operations.

    Definition Classes
    SessionAuthenticatorServiceExecutionContextProvider
  13. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  15. def init(authenticator: SessionAuthenticator)(implicit request: RequestHeader): Future[Session]

    Returns a new user session containing the authenticator.

    Returns a new user session containing the authenticator.

    authenticator

    The authenticator instance.

    request

    The request header.

    returns

    The serialized authenticator value.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. val logger: api.Logger

    A named logger instance.

    A named logger instance.

    Definition Classes
    Logger
  18. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  20. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  21. def renew(authenticator: SessionAuthenticator, result: Result)(implicit request: RequestHeader): Future[AuthenticatorResult]

    Renews an authenticator and replaces the authenticator in session with a new one.

    Renews an authenticator and replaces the authenticator in session with a new one.

    The old authenticator needn't be revoked because we use a stateless approach here. So only one authenticator can be bound to a user session.

    authenticator

    The authenticator to update.

    result

    The result to manipulate.

    request

    The request header.

    returns

    The original or a manipulated result.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  22. def renew(authenticator: SessionAuthenticator)(implicit request: RequestHeader): Future[Session]

    Renews an authenticator.

    Renews an authenticator.

    The old authenticator needn't be revoked because we use a stateless approach here. So only one authenticator can be bound to a user session. This method doesn't embed the the authenticator into the result. This must be done manually if needed or use the other renew method otherwise.

    authenticator

    The authenticator to renew.

    request

    The request header.

    returns

    The serialized expression of the authenticator.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  23. def retrieve[B](implicit request: ExtractableRequest[B]): Future[Option[SessionAuthenticator]]

    Retrieves the authenticator from request.

    Retrieves the authenticator from request.

    B

    The type of the request body.

    request

    The request to retrieve the authenticator from.

    returns

    Some authenticator or None if no authenticator could be found in request.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  24. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  25. def toString(): String
    Definition Classes
    AnyRef → Any
  26. def touch(authenticator: SessionAuthenticator): Either[SessionAuthenticator, SessionAuthenticator]

    Touches an authenticator.

    Touches an authenticator.

    An authenticator can use sliding window expiration. This means that the authenticator times out after a certain time if it wasn't used. So to mark an authenticator as used it will be touched on every request to a Silhouette action. If an authenticator should not be touched because of the fact that sliding window expiration is disabled, then it should be returned on the right, otherwise it should be returned on the left. An untouched authenticator needn't be updated later by the update method.

    authenticator

    The authenticator to touch.

    returns

    The touched authenticator on the left or the untouched authenticator on the right.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  27. def update(authenticator: SessionAuthenticator, result: Result)(implicit request: RequestHeader): Future[AuthenticatorResult]

    Updates the authenticator and store it in the user session.

    Updates the authenticator and store it in the user session.

    Because of the fact that we store the authenticator client side in the user session, we must update the authenticator in the session on every subsequent request to keep the last used date in sync.

    authenticator

    The authenticator to update.

    result

    The result to manipulate.

    request

    The request header.

    returns

    The original or a manipulated result.

    Definition Classes
    SessionAuthenticatorServiceAuthenticatorService
  28. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  29. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  30. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from api.Logger

Inherited from AnyRef

Inherited from Any

Ungrouped