Package Cl-Password-Store - external symbols
Password management for Common Lisp (web) applications.
cl-password-store
provides a light-weight and extendible solution to
user/password management:
- safe password storage:
- cleartext-free, using your choice of hash algorithm through
ironclad,
- storage in an SQL database through
clsql, in a database your application
already uses anyway, or in a separate one, and using any backend
supported by clsql,
- password reset mechanism with one-time tokens (suitable for mailing
to users for confirmation),
- user creation optionally with confirmation tokens (suitable for
mailing to users),
- (obviously) user authentication.
Users can be identified by strings or by subclassing
user-token-mixin
.
Package Cl-Password-Store uses the packages Common-Lisp. It has 83 total symbols and 24 external ones.
Condition
confirmation-token-expired | Condition raised if a user confirmation was attempted with a token whose validity duration has ex... |
---|
password-token-expired | Condition raised if a password change was attempted with a token whose validity duration has expi... |
---|
user-exists | Condition raised if an attempt was made to create a user that already exists. |
---|
user-unknown | Condition raised if an operation was attempted with an unknown user-token. |
---|
Variable
*default-password-database* | The default password database. |
---|
*default-password-hash* | The default password hash used. |
---|
*default-password-store* | The default password store to use. |
---|
*default-password-store-pepper* | The pepper value for hashing. Please change in your application.) |
---|
Function
open-password-database | Open password database specified by :SPEC, which must be and argument list suitable for clsql:con... |
---|
open-password-store | Open password store designated by TABLENAME in DATABASE (default: *default-password-database*) |
---|
Generic-Function
all-users | Return a list of all user-tokens present in STORE (default: *default-password-store*. |
---|
authenticate-user | Check whether USER-TOKEN successfully authenticates with PASSWORD in STORE (default: *default-pas... |
---|
confirm-registration | Confirm USER-TOKEN using CONFIRMATION-TOKEN in STORE (default: *default-password-store*). Returns... |
---|
delete-user | Delete user identified by USER-TOKEN in STORE (default: *default-password-store*). If no-exist-ok... |
---|
get-password-reset-token | Create a new password reset token, register it for USER-TOKEN (replacing a possibly-existing old ... |
---|
get-user-confirmation-token | Create a new account confirmation token, register it for USER-TOKEN (replacing a possibly-existin... |
---|
register-user | Register user identified by USER-TOKEN in store specified by :STORE argument (default: *default-p... |
---|
reset-password | Reset password of USER-TOKEN in STORE (default *default-password-store*) to NEW-PASSWORD, authent... |
---|
user-knownp | Check whether user identified by USER-TOKEN is known in store specified by :STORE (default: *defa... |
---|
user-token-id | A function returning a string identifier of at most 255 characters suitable to identify each user |
---|
Macro
with-password-database | Evaluate BODY with DATABASE bound to a `clsql:database` (default: `*default-password-database*`). |
---|
with-password-store | Evaluate BODY with STORE bound to a [`password-store`](class-password--store.html) (default: `*de... |
---|