Merge pull request '[BDD] Ajout table configuration système' (#65) from feature/4-table-configuration into master
Merge pull request #65: [BDD] Ajout table configuration système Ajout de la table configuration pour la gestion dynamique de la configuration on-premise. Closes #4
This commit is contained in:
commit
4149d0147f
@ -245,3 +245,45 @@ CREATE TABLE validations (
|
|||||||
cree_le TIMESTAMPTZ DEFAULT now(),
|
cree_le TIMESTAMPTZ DEFAULT now(),
|
||||||
modifie_le TIMESTAMPTZ DEFAULT now()
|
modifie_le TIMESTAMPTZ DEFAULT now()
|
||||||
);
|
);
|
||||||
|
|
||||||
|
-- ==========================================================
|
||||||
|
-- Table : configuration
|
||||||
|
-- ==========================================================
|
||||||
|
CREATE TABLE configuration (
|
||||||
|
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||||
|
cle VARCHAR(100) UNIQUE NOT NULL,
|
||||||
|
valeur TEXT,
|
||||||
|
type VARCHAR(50) NOT NULL,
|
||||||
|
categorie VARCHAR(50),
|
||||||
|
description TEXT,
|
||||||
|
modifie_le TIMESTAMPTZ DEFAULT now(),
|
||||||
|
modifie_par UUID REFERENCES utilisateurs(id)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- Index pour performance
|
||||||
|
CREATE INDEX idx_configuration_cle ON configuration(cle);
|
||||||
|
CREATE INDEX idx_configuration_categorie ON configuration(categorie);
|
||||||
|
|
||||||
|
-- Seed initial de configuration
|
||||||
|
INSERT INTO configuration (cle, valeur, type, categorie, description) VALUES
|
||||||
|
-- === Configuration Email (SMTP) ===
|
||||||
|
('smtp_host', 'localhost', 'string', 'email', 'Serveur SMTP (ex: mail.mairie-bezons.fr, smtp.gmail.com)'),
|
||||||
|
('smtp_port', '25', 'number', 'email', 'Port SMTP (25, 465, 587)'),
|
||||||
|
('smtp_secure', 'false', 'boolean', 'email', 'Utiliser SSL/TLS (true pour port 465)'),
|
||||||
|
('smtp_auth_required', 'false', 'boolean', 'email', 'Authentification SMTP requise'),
|
||||||
|
('smtp_user', '', 'string', 'email', 'Utilisateur SMTP (si authentification requise)'),
|
||||||
|
('smtp_password', '', 'encrypted', 'email', 'Mot de passe SMTP (chiffré en AES-256)'),
|
||||||
|
('email_from_name', 'P''titsPas', 'string', 'email', 'Nom de l''expéditeur affiché dans les emails'),
|
||||||
|
('email_from_address', 'no-reply@ptits-pas.fr', 'string', 'email', 'Adresse email de l''expéditeur'),
|
||||||
|
|
||||||
|
-- === Configuration Application ===
|
||||||
|
('app_name', 'P''titsPas', 'string', 'app', 'Nom de l''application (affiché dans l''interface)'),
|
||||||
|
('app_url', 'https://app.ptits-pas.fr', 'string', 'app', 'URL publique de l''application (pour les liens dans emails)'),
|
||||||
|
('app_logo_url', '/assets/logo.png', 'string', 'app', 'URL du logo de l''application'),
|
||||||
|
('setup_completed', 'false', 'boolean', 'app', 'Configuration initiale terminée'),
|
||||||
|
|
||||||
|
-- === Configuration Sécurité ===
|
||||||
|
('password_reset_token_expiry_days', '7', 'number', 'security', 'Durée de validité des tokens de création/réinitialisation de mot de passe (en jours)'),
|
||||||
|
('jwt_expiry_hours', '24', 'number', 'security', 'Durée de validité des sessions JWT (en heures)'),
|
||||||
|
('max_upload_size_mb', '5', 'number', 'security', 'Taille maximale des fichiers uploadés (en MB)'),
|
||||||
|
('bcrypt_rounds', '12', 'number', 'security', 'Nombre de rounds bcrypt pour le hachage des mots de passe');
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user