package sihl

  1. Overview
  2. Docs
The modular functional web framework

Install

Dune Dependency

Authors

Maintainers

Sources

sihl-0.1.3.tbz
sha256=3d1acdd1eae24a7131033656f90b5d20c1621e6ef92957edf88a09b8b5f2d9e9
sha512=d224f54e20a9465c7a03d534dadcb2b9a181ae87c13731840db945aab37534f6f3982c5cb25a197e90c17d8772da062b19fa92bb93ed53a8b736c3776a7776db

doc/sihl.authn/Authn/Service/Make/argument-3-UserService/index.html

Parameter Make.UserService

include Core.Container.SERVICE
val lifecycle : Core__.Core_container.Lifecycle.t
val start : Core__.Core_ctx.t -> Core__.Core_ctx.t Lwt.t
val stop : Core__.Core_ctx.t -> unit Lwt.t
val add_user : User__.User_core.User.t -> Core.Ctx.t -> Core.Ctx.t
val require_user_opt : Core.Ctx.t -> User__.User_core.User.t option
val require_user : Core.Ctx.t -> User__.User_core.User.t
val find_all : Core.Ctx.t -> query:Data.Ql.t -> (User__.User_core.User.t list * Data.Repo.Meta.t) Lwt.t
val find_opt : Core.Ctx.t -> user_id:string -> User__.User_core.User.t option Lwt.t
val find : Core.Ctx.t -> user_id:string -> User__.User_core.User.t Lwt.t
val find_by_email : Core.Ctx.t -> email:string -> User__.User_core.User.t Lwt.t
val find_by_email_opt : Core.Ctx.t -> email:string -> User__.User_core.User.t option Lwt.t
val update_password : Core.Ctx.t -> ?password_policy:(string -> (unit, string) Result.t) -> user:User__.User_core.User.t -> old_password:string -> new_password:string -> new_password_confirmation:string -> unit -> (User__.User_core.User.t, string) Result.t Lwt.t
val update_details : Core.Ctx.t -> user:User__.User_core.User.t -> email:string -> username:string option -> User__.User_core.User.t Lwt.t
val set_password : Core.Ctx.t -> ?password_policy:(string -> (unit, string) Result.t) -> user:User__.User_core.User.t -> password:string -> password_confirmation:string -> unit -> (User__.User_core.User.t, string) Result.t Lwt.t

Set the password of a user without knowing the old password.

This feature is typically used by admins.

val create_user : Core.Ctx.t -> email:string -> password:string -> username:string option -> User__.User_core.User.t Lwt.t

Create and store a user.

val create_admin : Core.Ctx.t -> email:string -> password:string -> username:string option -> User__.User_core.User.t Lwt.t

Create and store a user that is also an admin.

val register : Core.Ctx.t -> ?password_policy:(string -> (unit, string) result) -> ?username:string -> email:string -> password:string -> password_confirmation:string -> unit -> (User__.User_core.User.t, string) Result.t Lwt.t

Create and store new user.

Provide password_policy to check whether the password fulfills certain criteria.

val login : Core.Ctx.t -> email:string -> password:string -> (User__.User_core.User.t, string) Result.t Lwt.t

Find user by email if password matches.

OCaml

Innovation. Community. Security.