Class/Object

com.mohiva.play.silhouette.impl.providers.state

CsrfStateItemHandler

Related Docs: object CsrfStateItemHandler | package state

Permalink

class CsrfStateItemHandler extends SocialStateItemHandler with Logger with PublishableSocialStateItemHandler

Protects the application against CSRF attacks.

The handler stores a unique token in provider state and the same token in a signed client side cookie. After the provider redirects back to the application both tokens will be compared. If both tokens are the same than the application can trust the redirect source.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CsrfStateItemHandler
  2. PublishableSocialStateItemHandler
  3. Logger
  4. SocialStateItemHandler
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CsrfStateItemHandler(settings: CsrfStateSettings, idGenerator: IDGenerator, signer: Signer)

    Permalink

    settings

    The state settings.

    idGenerator

    The ID generator used to create the state value.

    signer

    The signer implementation.

    Annotations
    @Inject()

Type Members

  1. type Item = CsrfStateItem

    Permalink

    The item the handler can handle.

    The item the handler can handle.

    Definition Classes
    CsrfStateItemHandlerSocialStateItemHandler

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def canHandle[B](item: ItemStructure)(implicit request: ExtractableRequest[B]): Boolean

    Permalink

    Indicates if a handler can handle the given unserialized state item.

    Indicates if a handler can handle the given unserialized state item.

    This method should check if the unserialize method of this handler can unserialize the given serialized state item.

    B

    The type of the request body.

    item

    The item to check for.

    request

    The request instance to get additional data to validate against.

    returns

    True if the handler can handle the given state item, false otherwise.

    Definition Classes
    CsrfStateItemHandlerSocialStateItemHandler
  6. def canHandle(item: SocialStateItem): Option[Item]

    Permalink

    Indicates if a handler can handle the given SocialStateItem.

    Indicates if a handler can handle the given SocialStateItem.

    This method should check if the serialize method of this handler can serialize the given unserialized state item.

    item

    The item to check for.

    returns

    Some[Item] casted state item if the handler can handle the given state item, None otherwise.

    Definition Classes
    CsrfStateItemHandlerSocialStateItemHandler
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. def item(implicit ec: ExecutionContext): Future[Item]

    Permalink

    Gets the state item the handler can handle.

    Gets the state item the handler can handle.

    ec

    The execution context to handle the asynchronous operations.

    returns

    The state params the handler can handle.

    Definition Classes
    CsrfStateItemHandlerSocialStateItemHandler
  15. val logger: Logger

    Permalink

    A named logger instance.

    A named logger instance.

    Definition Classes
    Logger
  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. def publish[B](item: Item, result: Result)(implicit request: ExtractableRequest[B]): Result

    Permalink

    Publishes the CSRF token to the client.

    Publishes the CSRF token to the client.

    B

    The type of the request body.

    item

    The item to publish.

    result

    The result to send to the client.

    request

    The current request.

    returns

    The result to send to the client.

    Definition Classes
    CsrfStateItemHandlerPublishableSocialStateItemHandler
  20. def serialize(item: Item): ItemStructure

    Permalink

    Returns a serialized value of the state item.

    Returns a serialized value of the state item.

    item

    The state item to serialize.

    returns

    The serialized state item.

    Definition Classes
    CsrfStateItemHandlerSocialStateItemHandler
  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  22. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  23. def unserialize[B](item: ItemStructure)(implicit request: ExtractableRequest[B], ec: ExecutionContext): Future[Item]

    Permalink

    Unserializes the state item.

    Unserializes the state item.

    B

    The type of the request body.

    item

    The state item to unserialize.

    request

    The request instance to get additional data to validate against.

    ec

    The execution context to handle the asynchronous operations.

    returns

    The unserialized state item.

    Definition Classes
    CsrfStateItemHandlerSocialStateItemHandler
  24. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Logger

Inherited from SocialStateItemHandler

Inherited from AnyRef

Inherited from Any

Ungrouped