object DigestAuth
- Alphabetic
- By Inheritance
- DigestAuth
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- sealed trait AuthStore[F[_], A] extends AnyRef
- final class Md5HashedAuthStore[F[_], A] extends AuthStore[F, A]
- final class PlainTextAuthStore[F[_], A] extends AuthStore[F, A]
-
type
AuthenticationStore[F[_], A] = (String) ⇒ F[Option[(A, String)]]
- Annotations
- @deprecated
- Deprecated
(Since version 0.23.12) AuthenticationStore is going away, in favor of explicit subclasses of AuthStore. PlainTextAuthStore maintains the previous, insecure behaviour, whereas Md5HashedAuthStore is the new advised implementation going forward.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
applyF[F[_], A](realm: String, store: AuthStore[F, A], nonceCleanupInterval: Duration = 1.hour, nonceStaleTime: Duration = 1.hour, nonceBits: Int = 160)(implicit F: Async[F]): F[AuthMiddleware[F, A]]
- 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.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
challenge[F[_], A](realm: String, store: AuthStore[F, A], nonceCleanupInterval: Duration = 1.hour, nonceStaleTime: Duration = 1.hour, nonceBits: Int = 160)(implicit F: Async[F]): F[Kleisli[F, Request[F], Either[Challenge, AuthedRequest[F, A]]]]
Similar to apply, but exposing the underlying challenge[F[_],A](realm:String,store:org* cats.data.Kleisli instead of an entire AuthMiddleware
Similar to apply, but exposing the underlying challenge[F[_],A](realm:String,store:org* cats.data.Kleisli instead of an entire AuthMiddleware
Side-effect of running the returned task: If req contains a valid AuthorizationHeader, the corresponding nonce counter (nc) is increased.
- 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.
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
object
Md5HashedAuthStore
A function mapping username to a user object and precomputed md5 hash of the username, realm, and password, or None if no user exists.
A function mapping username to a user object and precomputed md5 hash of the username, realm, and password, or None if no user exists.
More secure than PlainTextAuthStore due to only needing to store the digested hash instead of the password in plain text.
-
object
PlainTextAuthStore
A function mapping username to a user object and password, or None if no user exists.
A function mapping username to a user object and password, or None if no user exists.
Requires that the server can recover the password in clear text, which is _strongly_ discouraged. Please use Md5HashedAuthStore if you can.
Deprecated Value Members
-
def
apply[F[_], A](realm: String, store: (String) ⇒ F[Option[(A, String)]], nonceCleanupInterval: Duration = 1.hour, nonceStaleTime: Duration = 1.hour, nonceBits: Int = 160)(implicit arg0: Sync[F]): AuthMiddleware[F, A]
- Annotations
- @deprecated
- Deprecated
(Since version 0.23.12) Calling apply is side-effecting, please use applyF
-
def
challenge[F[_], A](realm: String, store: (String) ⇒ F[Option[(A, String)]], nonceKeeper: NonceKeeper)(implicit F: Sync[F]): Kleisli[F, Request[F], Either[Challenge, AuthedRequest[F, A]]]
- Annotations
- @deprecated
- Deprecated
(Since version 0.23.12) Uses a side-effecting NonceKeeper. Use challenge(String, AuthStore, Blocker, Duration, Int, Int).