Removed role system
parent
5e86133651
commit
1c524f181f
|
@ -1,2 +1,2 @@
|
|||
-- 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 (
|
||||
id uuid DEFAULT gen_random_uuid() PRIMARY KEY,
|
||||
|
||||
|
@ -6,29 +5,9 @@ CREATE TABLE users (
|
|||
-- Hashed + salted representation of the username
|
||||
password text NOT NULL,
|
||||
-- Wether the user is currently blocked
|
||||
blocked 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
|
||||
blocked boolean NOT NULL DEFAULT false,
|
||||
-- Wether the user is an admin
|
||||
admin boolean NOT NULL DEFAULT false
|
||||
);
|
||||
|
||||
-- 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! {
|
||||
refresh_tokens (token) {
|
||||
token -> Bytea,
|
||||
|
@ -15,30 +7,19 @@ table! {
|
|||
}
|
||||
}
|
||||
|
||||
table! {
|
||||
security_reports (id) {
|
||||
id -> Uuid,
|
||||
report_time -> Timestamp,
|
||||
report_type -> Varchar,
|
||||
content -> Text,
|
||||
}
|
||||
}
|
||||
|
||||
table! {
|
||||
users (id) {
|
||||
id -> Uuid,
|
||||
username -> Varchar,
|
||||
password -> Text,
|
||||
blocked -> Bool,
|
||||
admin -> Bool,
|
||||
}
|
||||
}
|
||||
|
||||
joinable!(permissions -> users (user_id));
|
||||
joinable!(refresh_tokens -> users (user_id));
|
||||
|
||||
allow_tables_to_appear_in_same_query!(
|
||||
permissions,
|
||||
refresh_tokens,
|
||||
security_reports,
|
||||
users,
|
||||
);
|
||||
|
|
Reference in New Issue