com.sksamuel.scruffy.security.authentication

SessionAuthenticationStrategy

case class SessionAuthenticationStrategy(sessionKey: String = "principal")(implicit executor: ExecutionContext) extends AuthenticationStrategy with ResponseBuilder with Product with Serializable

An AuthenticationStrategy that retrieves a Principal from the current session. This Principal is then added to the request for downstream processing.

The Principal must be set on the session by some step handled external to this class, for example a login page.

If no Principal is set on the current session then a 401 is returned.

There must have been an appropriately configured SessionManager in the endpoint before authentication is attempted.

sessionKey

is used to specify the key that the Principal is stored in inside the session.

Linear Supertypes
Serializable, Serializable, Product, Equals, ResponseBuilder, AuthenticationStrategy, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. SessionAuthenticationStrategy
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. ResponseBuilder
  7. AuthenticationStrategy
  8. AnyRef
  9. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SessionAuthenticationStrategy(sessionKey: String = "principal")(implicit executor: ExecutionContext)

    sessionKey

    is used to specify the key that the Principal is stored in inside the session.

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

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

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def accepted: HttpResponse

    Definition Classes
    ResponseBuilder
  7. implicit def any2future(any: Any): Future[HttpResponse]

    Definition Classes
    ResponseBuilder
  8. implicit def any2response(any: Any): HttpResponse

    Definition Classes
    ResponseBuilder
  9. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  10. def authenticated(req: Request[Any, Nothing]): Future[Request[Any, Nothing]]

  11. def badGateway: HttpResponse

    Definition Classes
    ResponseBuilder
  12. def badRequest(reason: String): HttpResponse

    Definition Classes
    ResponseBuilder
  13. def badRequest: HttpResponse

    Definition Classes
    ResponseBuilder
  14. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. def conflict: HttpResponse

    Definition Classes
    ResponseBuilder
  16. def created: HttpResponse

    Definition Classes
    ResponseBuilder
  17. def entity(e: Any): HttpResponse

    Definition Classes
    ResponseBuilder
  18. def entity(e: Any, c: MediaType): HttpResponse

    Definition Classes
    ResponseBuilder
  19. def entity(e: Any, c: String): HttpResponse

    Definition Classes
    ResponseBuilder
  20. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  21. implicit val executor: ExecutionContext

    Definition Classes
    SessionAuthenticationStrategy → ResponseBuilder
  22. def expectationFailed: HttpResponse

    Definition Classes
    ResponseBuilder
  23. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  24. def forbidden(reason: String): HttpResponse

    Definition Classes
    ResponseBuilder
  25. def forbidden: HttpResponse

    Definition Classes
    ResponseBuilder
  26. def found: HttpResponse

    Definition Classes
    ResponseBuilder
  27. implicit def futureEntity2FutureResponse(future: Future[Any]): Future[HttpResponse]

    Definition Classes
    ResponseBuilder
  28. def gatewayTimeout: HttpResponse

    Definition Classes
    ResponseBuilder
  29. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  30. def gone: HttpResponse

    Definition Classes
    ResponseBuilder
  31. def internalServerError(reason: String): HttpResponse

    Definition Classes
    ResponseBuilder
  32. def internalServerError: HttpResponse

    Definition Classes
    ResponseBuilder
  33. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  34. def json(e: Any): HttpResponse

    Definition Classes
    ResponseBuilder
  35. def lengthRequired: HttpResponse

    Definition Classes
    ResponseBuilder
  36. def methodNotAllowed: HttpResponse

    Definition Classes
    ResponseBuilder
  37. def movedPermanently: HttpResponse

    Definition Classes
    ResponseBuilder
  38. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  39. def nocontent: HttpResponse

    Definition Classes
    ResponseBuilder
  40. def nonAuthoritativeInformation: HttpResponse

    Definition Classes
    ResponseBuilder
  41. def notAcceptable: HttpResponse

    Definition Classes
    ResponseBuilder
  42. def notFound(body: String): HttpResponse

    Definition Classes
    ResponseBuilder
  43. def notFound: HttpResponse

    Definition Classes
    ResponseBuilder
  44. def notImplemented: HttpResponse

    Definition Classes
    ResponseBuilder
  45. def notImplemented(reason: String): HttpResponse

    Definition Classes
    ResponseBuilder
  46. def notModified: HttpResponse

    Definition Classes
    ResponseBuilder
  47. final def notify(): Unit

    Definition Classes
    AnyRef
  48. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  49. def ok(e: Any): HttpResponse

    Definition Classes
    ResponseBuilder
  50. def ok: HttpResponse

    Definition Classes
    ResponseBuilder
  51. def partialContent: HttpResponse

    Definition Classes
    ResponseBuilder
  52. def paymentRequired: HttpResponse

    Definition Classes
    ResponseBuilder
  53. def permanentRedirect(location: String): HttpResponse

    Definition Classes
    ResponseBuilder
  54. def preconditionFailed: HttpResponse

    Definition Classes
    ResponseBuilder
  55. def proxyAuthenticationRequired: HttpResponse

    Definition Classes
    ResponseBuilder
  56. def requestEntityTooLarge: HttpResponse

    Definition Classes
    ResponseBuilder
  57. def requestHeaderFieldsTooLarge: HttpResponse

    Definition Classes
    ResponseBuilder
  58. def requestTimeout: HttpResponse

    Definition Classes
    ResponseBuilder
  59. def requestURITooLong: HttpResponse

    Definition Classes
    ResponseBuilder
  60. def requestedRangeNotSatisfiable: HttpResponse

    Definition Classes
    ResponseBuilder
  61. def resetContent: HttpResponse

    Definition Classes
    ResponseBuilder
  62. implicit def response2future(resp: HttpResponse): Future[HttpResponse]

    Definition Classes
    ResponseBuilder
  63. def seeOther(location: String): HttpResponse

    Definition Classes
    ResponseBuilder
  64. def serviceUnavailable: HttpResponse

    Definition Classes
    ResponseBuilder
  65. val sessionKey: String

    is used to specify the key that the Principal is stored in inside the session.

  66. def status(s: Int): HttpResponse

    Definition Classes
    ResponseBuilder
  67. def status(s: HttpStatus): HttpResponse

    Definition Classes
    ResponseBuilder
  68. def status(s: HttpResponseStatus): HttpResponse

    Definition Classes
    ResponseBuilder
  69. implicit def status2future(status: HttpStatus): Future[HttpResponse]

    Definition Classes
    ResponseBuilder
  70. implicit def status2future(code: Int): Future[HttpResponse]

    Definition Classes
    ResponseBuilder
  71. implicit def status2response(s: Int): HttpResponse

    Definition Classes
    ResponseBuilder
  72. implicit def status2response(s: HttpStatus): HttpResponse

    Definition Classes
    ResponseBuilder
  73. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  74. def temporaryRedirect(location: String): HttpResponse

    Definition Classes
    ResponseBuilder
  75. def unauthorized: HttpResponse

    Definition Classes
    ResponseBuilder
  76. def unprocessableEntity(reason: String): HttpResponse

    Definition Classes
    ResponseBuilder
  77. def unprocessableEntity: HttpResponse

    Definition Classes
    ResponseBuilder
  78. def unsupportedMediaType: HttpResponse

    Definition Classes
    ResponseBuilder
  79. def useProxy: HttpResponse

    Definition Classes
    ResponseBuilder
  80. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  83. def xml(e: Any): HttpResponse

    Definition Classes
    ResponseBuilder

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from ResponseBuilder

Inherited from AuthenticationStrategy

Inherited from AnyRef

Inherited from Any

Ungrouped