FakeJWTAuthenticatorService

play.silhouette.test.FakeJWTAuthenticatorService
case object FakeJWTAuthenticatorService extends JWTAuthenticatorService

A fake JWT authenticator service.

Attributes

Graph
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class JWTAuthenticatorService
trait Logger
trait AuthenticatorService[JWTAuthenticator]
trait ExecutionContextProvider
class Object
trait Matchable
class Any
Show all
Self type

Members list

Type members

Inherited types

type MirroredElemLabels = EmptyTuple

The names of the product elements

The names of the product elements

Attributes

Inherited from:
Singleton
type MirroredElemTypes = EmptyTuple

Attributes

Inherited from:
Singleton
type MirroredLabel <: String

The name of the type

The name of the type

Attributes

Inherited from:
Mirror
type MirroredMonoType = Singleton.this.type

The mirrored *-type

The mirrored *-type

Attributes

Inherited from:
Singleton
type MirroredType = Singleton.this.type

Attributes

Inherited from:
Singleton

Value members

Inherited methods

override def create(loginInfo: LoginInfo)(implicit request: RequestHeader): Future[JWTAuthenticator]

Creates a new authenticator for the specified login info.

Creates a new authenticator for the specified login info.

Value parameters

loginInfo

The login info for which the authenticator should be created.

request

The request header.

Attributes

Returns

An authenticator.

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
override def discard(authenticator: JWTAuthenticator, result: Result)(implicit request: RequestHeader): Future[AuthenticatorResult]

Removes the authenticator from backing store.

Removes the authenticator from backing store.

Value parameters

request

The request header.

result

The result to manipulate.

Attributes

Returns

The manipulated result.

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
override def embed(token: String, request: RequestHeader): RequestHeader

Adds a header with the token as value to the request.

Adds a header with the token as value to the request.

Value parameters

request

The request header.

token

The token to embed.

Attributes

Returns

The manipulated request header.

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
override def embed(token: String, result: Result)(implicit request: RequestHeader): Future[AuthenticatorResult]

Adds a header with the token as value to the result.

Adds a header with the token as value to the result.

Value parameters

result

The result to manipulate.

token

The token to embed.

Attributes

Returns

The manipulated result.

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
def fromProduct(p: Product): MirroredMonoType

Create a new instance of type T with elements taken from product p.

Create a new instance of type T with elements taken from product p.

Attributes

Inherited from:
Singleton
override def init(authenticator: JWTAuthenticator)(implicit request: RequestHeader): Future[String]

Creates a new JWT for the given authenticator and return it. If a backing store is defined, then the authenticator will be stored in it.

Creates a new JWT for the given authenticator and return it. If a backing store is defined, then the authenticator will be stored in it.

Value parameters

authenticator

The authenticator instance.

request

The request header.

Attributes

Returns

The serialized authenticator value.

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
override def renew(authenticator: JWTAuthenticator, result: Result)(implicit request: RequestHeader): Future[AuthenticatorResult]

Renews an authenticator and replaces the JWT header with a new one.

Renews an authenticator and replaces the JWT header with a new one.

If a backing store is defined, the old authenticator will be revoked. After that, it isn't possible to use a JWT which was bound to this authenticator.

Value parameters

authenticator

The authenticator to update.

request

The request header.

result

The result to manipulate.

Attributes

Returns

The original or a manipulated result.

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
override def renew(authenticator: JWTAuthenticator)(implicit request: RequestHeader): Future[String]

Renews an authenticator.

Renews an authenticator.

After that it isn't possible to use a JWT which was bound to this authenticator. 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.

Value parameters

authenticator

The authenticator to renew.

request

The request header.

Attributes

Returns

The serialized expression of the authenticator.

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
override def retrieve[B](implicit request: ExtractableRequest[B]): Future[Option[JWTAuthenticator]]

Retrieves the authenticator from request.

Retrieves the authenticator from request.

If a backing store is defined, then the authenticator will be validated against it.

Type parameters

B

The type of the request body.

Value parameters

request

The request to retrieve the authenticator from.

Attributes

Returns

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

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
override def touch(authenticator: JWTAuthenticator): Either[JWTAuthenticator, JWTAuthenticator]

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.

Value parameters

authenticator

The authenticator to touch.

Attributes

Returns

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

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService
override def update(authenticator: JWTAuthenticator, result: Result)(implicit request: RequestHeader): Future[AuthenticatorResult]

Updates the authenticator and embeds a new token in the result.

Updates the authenticator and embeds a new token in the result.

To prevent the creation of a new token on every request, disable the idle timeout setting and this method will not be executed.

Value parameters

authenticator

The authenticator to update.

request

The request header.

result

The result to manipulate.

Attributes

Returns

The original or a manipulated result.

Definition Classes
JWTAuthenticatorService -> AuthenticatorService
Inherited from:
JWTAuthenticatorService

Inherited fields

val logger: Logger

A named logger instance.

A named logger instance.

Attributes

Inherited from:
Logger

Implicits

Inherited implicits

implicit val executionContext: ExecutionContext

The execution context to handle the asynchronous operations.

The execution context to handle the asynchronous operations.

Attributes

Inherited from:
JWTAuthenticatorService