org.http4s.server.middleware.authentication

DigestAuthentication

class DigestAuthentication extends Authentication

Provides Digest Authentication from RFC 2617. Note that this class creates a new thread on creation to clean up stale nonces. Please call shutdown() when the object is not used anymore to kill this thread.

Linear Supertypes
Authentication, (Service[Request, Response]) ⇒ Service[Request, Response], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. DigestAuthentication
  2. Authentication
  3. Function1
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DigestAuthentication(realm: String, store: (String, String) ⇒ Task[Option[String]], nonceCleanupInterval: Duration = ..., nonceStaleTime: Duration = ..., nonceBits: Int = 160)

    realm

    The realm used for authentication purposes.

    store

    A partial function mapping (realm, user) to the appropriate password.

    nonceCleanupInterval

    Interval (in milliseconds) at which stale nonces should be cleaned up.

    nonceStaleTime

    Amount of time (in milliseconds) after which a nonce is considered stale (i.e. not used for authentication purposes anymore).

    nonceBits

    The number of random bits a nonce should consist of.

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 addUserRealmAttributes(req: Request, user: String, realm: String): Request

    Attributes
    protected
    Definition Classes
    Authentication
  7. def andThen[A](g: (Service[Request, Response]) ⇒ A): (Service[Request, Response]) ⇒ A

    Definition Classes
    Function1
    Annotations
    @unspecialized()
  8. def apply(service: HttpService): HttpService

    Definition Classes
    Authentication → Function1
  9. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  10. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def compose[A](g: (A) ⇒ Service[Request, Response]): (A) ⇒ Service[Request, Response]

    Definition Classes
    Function1
    Annotations
    @unspecialized()
  12. final def eq(arg0: AnyRef): Boolean

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

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

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. def getChallenge(req: Request): Task[\/[Challenge, Request]]

    Side-effect of running the returned task: If req contains a valid AuthorizationHeader, the corresponding nonce counter (nc) is increased.

    Side-effect of running the returned task: If req contains a valid AuthorizationHeader, the corresponding nonce counter (nc) is increased.

    req

    The request received from the client.

    returns

    If req contains valid credentials, a copy of req is returned that contains additional attributes pertaining to authentication such as the username and realm from the valid credentials. If req does not contain valid credentials, a challenge is returned. This challenge will be included in the HTTP 401 Unauthorized response that is returned to the client.

    Attributes
    protected
    Definition Classes
    DigestAuthenticationAuthentication
  16. final def getClass(): Class[_]

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

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

    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  20. final def notify(): Unit

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

    Definition Classes
    AnyRef
  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  23. def toString(): String

    Definition Classes
    Function1 → AnyRef → Any
  24. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Authentication

Inherited from (Service[Request, Response]) ⇒ Service[Request, Response]

Inherited from AnyRef

Inherited from Any

Ungrouped