| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- DROP SCHEMA public CASCADE;
- CREATE SCHEMA public;
- CREATE TABLE roles_admin (
- id_rol SERIAL PRIMARY KEY,
- nombre VARCHAR(50) UNIQUE NOT NULL
- );
- CREATE TABLE usuarios_admin (
- id_usuario SERIAL PRIMARY KEY,
- username VARCHAR(100) UNIQUE NOT NULL,
- email VARCHAR(150) UNIQUE NOT NULL,
- password_hash TEXT NOT NULL,
- nombre VARCHAR(100),
- activo BOOLEAN DEFAULT TRUE,
- ultimo_login TIMESTAMP,
- fecha_creacion TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- id_rol INT NOT NULL,
- CONSTRAINT fk_admin_rol
- FOREIGN KEY(id_rol)
- REFERENCES roles_admin(id_rol)
- );
- CREATE TABLE sesiones_admin (
- id_sesion SERIAL PRIMARY KEY,
- id_usuario INT NOT NULL,
- token TEXT NOT NULL,
- ip VARCHAR(100),
- user_agent TEXT,
- fecha_inicio TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- fecha_expiracion TIMESTAMP,
- CONSTRAINT fk_sesion_usuario
- FOREIGN KEY(id_usuario)
- REFERENCES usuarios_admin(id_usuario)
- ON DELETE CASCADE
- );
- CREATE TABLE logs_admin (
- id_log SERIAL PRIMARY KEY,
- id_usuario INT,
- accion VARCHAR(255),
- descripcion TEXT,
- fecha TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
- CONSTRAINT fk_log_usuario
- FOREIGN KEY(id_usuario)
- REFERENCES usuarios_admin(id_usuario)
- ON DELETE SET NULL
- );
- INSERT INTO roles_admin(nombre)
- VALUES
- ('superadmin'),
- ('admin'),
- ('moderador'),
- ('viewer');
|