Parameter Make.2-A

type entity = M.t

type entity is a type of authenticatable entity equal to MODEL.t

type strategy = (module Auth_sign.STRATEGY with type entity = entity)

strategy is a function that authenticates an entity from a request.

val authenticate : strategy Base.list -> Dream.request -> Static.AuthResult.t Dream.promise

authenticate runs several authentication strategies for a request and defines, whether overall authentication was successful or not

val logout : Dream.request -> Base.unit Lwt.t

logout invalidates session, which resets authentication status to false