-- The module handle basic_auth (at the moment).
-- Handle login, logout, register user, activate/reactivate an account, password recovery.
-- Send notification emails.
CMS Updates
-- Added a new service: email.
-- Updated Basic Auth Module to handle logout based on the browser type.
-- Updated persistence layer to save and remove and query activation token and password token.
-- Updated CMS_USER to handle status {active, not_active, trashed}.
-- Updated MySQL scripts to be in sync with SQLite scripts
51 lines
1.3 KiB
PL/PgSQL
51 lines
1.3 KiB
PL/PgSQL
BEGIN;
|
|
|
|
CREATE TABLE "users"(
|
|
"uid" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL CHECK("uid">=0),
|
|
"name" VARCHAR(100) NOT NULL,
|
|
"password" VARCHAR(100) NOT NULL,
|
|
"salt" VARCHAR(100) NOT NULL,
|
|
"email" VARCHAR(250) NOT NULL,
|
|
"status" INTEGER,
|
|
"created" DATETIME NOT NULL,
|
|
"signed" DATETIME,
|
|
CONSTRAINT "name"
|
|
UNIQUE("name")
|
|
);
|
|
|
|
CREATE TABLE "roles"(
|
|
"rid" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL CHECK("rid">=0),
|
|
"name" VARCHAR(100) NOT NULL,
|
|
CONSTRAINT "name"
|
|
UNIQUE("name")
|
|
);
|
|
|
|
CREATE TABLE "users_roles"(
|
|
"uid" INTEGER NOT NULL CHECK("uid">=0),
|
|
"rid" INTEGER NOT NULL CHECK("rid">=0)
|
|
);
|
|
|
|
CREATE TABLE "role_permissions"(
|
|
"rid" INTEGER NOT NULL CHECK("rid">=0),
|
|
"permission" VARCHAR(255) NOT NULL,
|
|
"module" VARCHAR(255)
|
|
);
|
|
|
|
CREATE TABLE "users_activations" (
|
|
"aid" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL CHECK ("aid" >= 0),
|
|
"token" VARCHAR(255) NOT NULL,
|
|
"uid" INTEGER NOT NULL CHECK ("uid" >= 0),
|
|
"created" DATETIME NOT NULL,
|
|
CONSTRAINT "token" UNIQUE ("token")
|
|
);
|
|
|
|
CREATE TABLE "users_password_recovery" (
|
|
"aid" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL CHECK ("aid" >= 0),
|
|
"token" VARCHAR(255) NOT NULL,
|
|
"uid" INTEGER NOT NULL CHECK ("uid" >= 0),
|
|
"created" DATETIME NOT NULL,
|
|
CONSTRAINT "token" UNIQUE ("token")
|
|
);
|
|
|
|
COMMIT;
|