forked from Chewing_Bever/rusty-bever
Removed role system
parent
5e86133651
commit
1c524f181f
|
@ -1,2 +1,2 @@
|
||||||
-- This file should undo anything in `up.sql`
|
-- This file should undo anything in `up.sql`
|
||||||
DROP TABLE IF EXISTS users, permissions, refresh_tokens, security_reports CASCADE;
|
DROP TABLE IF EXISTS users, refresh_tokens CASCADE;
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
-- Users
|
|
||||||
CREATE TABLE users (
|
CREATE TABLE users (
|
||||||
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
|
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
|
||||||
|
|
||||||
|
@ -6,29 +5,9 @@ CREATE TABLE users (
|
||||||
-- Hashed + salted representation of the username
|
-- Hashed + salted representation of the username
|
||||||
password text NOT NULL,
|
password text NOT NULL,
|
||||||
-- Wether the user is currently blocked
|
-- Wether the user is currently blocked
|
||||||
blocked boolean NOT NULL DEFAULT false
|
blocked boolean NOT NULL DEFAULT false,
|
||||||
);
|
-- Wether the user is an admin
|
||||||
|
admin boolean NOT NULL DEFAULT false
|
||||||
-- Permissions that a user can have
|
|
||||||
CREATE TABLE permissions (
|
|
||||||
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
|
|
||||||
|
|
||||||
user_id uuid REFERENCES users (id) NOT NULL,
|
|
||||||
name varchar(64) NOT NULL,
|
|
||||||
|
|
||||||
UNIQUE (user_id, name)
|
|
||||||
);
|
|
||||||
|
|
||||||
-- Security reports (e.g. when a user is blocked)
|
|
||||||
CREATE TABLE security_reports (
|
|
||||||
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
|
|
||||||
|
|
||||||
-- When the report was made
|
|
||||||
report_time timestamp NOT NULL DEFAULT now(),
|
|
||||||
-- What type of report it is
|
|
||||||
report_type varchar(64) NOT NULL,
|
|
||||||
-- Contents of the report
|
|
||||||
content TEXT NOT NULL
|
|
||||||
);
|
);
|
||||||
|
|
||||||
-- Stores refresh tokens
|
-- Stores refresh tokens
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
pub const PERM_CODES: [&str; 2] = [
|
|
||||||
"modify-blog-posts",
|
|
||||||
"modify-users"
|
|
||||||
];
|
|
|
@ -1,11 +1,3 @@
|
||||||
table! {
|
|
||||||
permissions (id) {
|
|
||||||
id -> Uuid,
|
|
||||||
user_id -> Uuid,
|
|
||||||
name -> Varchar,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
table! {
|
table! {
|
||||||
refresh_tokens (token) {
|
refresh_tokens (token) {
|
||||||
token -> Bytea,
|
token -> Bytea,
|
||||||
|
@ -15,30 +7,19 @@ table! {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
table! {
|
|
||||||
security_reports (id) {
|
|
||||||
id -> Uuid,
|
|
||||||
report_time -> Timestamp,
|
|
||||||
report_type -> Varchar,
|
|
||||||
content -> Text,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
table! {
|
table! {
|
||||||
users (id) {
|
users (id) {
|
||||||
id -> Uuid,
|
id -> Uuid,
|
||||||
username -> Varchar,
|
username -> Varchar,
|
||||||
password -> Text,
|
password -> Text,
|
||||||
blocked -> Bool,
|
blocked -> Bool,
|
||||||
|
admin -> Bool,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
joinable!(permissions -> users (user_id));
|
|
||||||
joinable!(refresh_tokens -> users (user_id));
|
joinable!(refresh_tokens -> users (user_id));
|
||||||
|
|
||||||
allow_tables_to_appear_in_same_query!(
|
allow_tables_to_appear_in_same_query!(
|
||||||
permissions,
|
|
||||||
refresh_tokens,
|
refresh_tokens,
|
||||||
security_reports,
|
|
||||||
users,
|
users,
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in New Issue