Outils utilisateur

Outils du site Web


schéma de base de données

schéma de base de données

utilisateur

Ce tableau contient les données de l'utilisateur. Le mot de passe est stocké sous forme de hachage BCRYPT.

+----------+--------------+------+-----+---------+-------+
| FIELD    | TYPE         | NULL | KEY | DEFAULT | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | VARCHAR(64)  | NO   | PRI |         |       | Username
| name     | VARCHAR(256) | YES  |     | NULL    |       | Vor- und Nachname
| password | VARCHAR(64)  | NO   |     | ''      |       | BCRYPT Hash des Passworts
| archive  | VARCHAR(256) | YES  |     | NULL    |       | Container des Users
| ROLE     | VARCHAR(32)  | NO   |     | USER    |       | Rolle
+----------+--------------+------+-----+---------+-------+

adresse

Die Tabelle „address“ enthält die Adressen, die einem Benutzer zugeordnet sind. Aus den Adressen wird einFilter generiert, durch den die Antwortliste des Queries gefiltert wird. Für den Admin oder Revisor solltedie Adresse *@* konfiguriert werden.

Cette liste est affichée dans le champ d'information de l'interface utilisateur Web.

+---------+-------------+------+-----+---------+-------+
| FIELD   | TYPE        | NULL | KEY | DEFAULT | Extra |
+---------+-------------+------+-----+---------+-------+
| id      | VARCHAR(64) | NO   | PRI |         |       | Username (USER.id)
| address | VARCHAR(64) | NO   | PRI |         |       | E-Mail Adresse für FILTER
+---------+-------------+------+-----+---------+-------+

état de l'application

L'état de l'interface utilisateur web de l'utilisateur est enregistré ici lors de la déconnexion.

+--------+--------------+------+-----+---------+-------+
| FIELD  | TYPE         | NULL | KEY | DEFAULT | Extra |
+--------+--------------+------+-----+---------+-------+
| id     | VARCHAR(64)  | NO   | PRI |         |       |
| userid | VARCHAR(64)  | NO   |     |         |       |
| VALUE  | VARCHAR(254) | NO   | PRI |         |       |
+--------+--------------+------+-----+---------+-------+

récipient

La table « container » contient les conteneurs et sous-conteneurs attribués à l’utilisateur. Si des sous-conteneurs ont été configurés, le sous-conteneur est ajouté au conteneur dans le module AUTH à l’aide de « / ».

+--------+--------------+------+-----+---------+-------+
| FIELD  | TYPE         | NULL | KEY | DEFAULT | Extra |
+--------+--------------+------+-----+---------+-------+
| userid | VARCHAR(64)  | NO   | PRI |         |       | Benutzer-Id
| cid    | VARCHAR(128) | NO   | PRI |         |       | Container
| scid   | VARCHAR(128) | NO   | PRI |         |       | Subcontainer
+--------+--------------+------+-----+---------+-------+

filtre

In der Tabelle „filter“ können Lucene Query Filter gespeichert werden. Bei der Anmeldung werden die Filter des Benutzers mit dem Benutzernamen „userid“ geladen und bei jeder Suche per AND verknüpft.

+--------+--------------+------+-----+---------+-------+
| FIELD  | TYPE         | NULL | KEY | DEFAULT | Extra |
+--------+--------------+------+-----+---------+-------+
| id     | VARCHAR(64)  | NO   | PRI |         |       | eindeutige Id des Filters
| userid | VARCHAR(128) | YES  |     |         |       | Anmeldename
| name   | VARCHAR(255) | YES  |     |         |       | Name des Filters zur Anzeige im [i] Fenster
| FILTER | text         | YES  |     | NULL    |       | Lucene Query String
+--------+--------------+------+-----+---------+-------+

requête stockée

Chaque utilisateur peut enregistrer des requêtes de recherche sous un nom dans l'interface web. Ces requêtes sont stockées dans cette table.

+--------+--------------+------+-----+---------+-------+
| FIELD  | TYPE         | NULL | KEY | DEFAULT | Extra |
+--------+--------------+------+-----+---------+-------+
| id     | VARCHAR(64)  | NO   | PRI |         |       | Interne Id der Abfrage
| userid | VARCHAR(64)  | YES  |     |         |       | Benutzername (USER.id) dem dieser Abfrage 
| name   | VARCHAR(255) | YES  |     |         |       | Name der gespeicherten Abfrage
| query  | text         | YES  |     | NULL    |       | Serialisiertes Objekt mit der gespeicherten Abfrage
+--------+--------------+------+-----+---------+-------+

Base de données MySQL

Exemple de requêtes SQL pour la création de la base de données utilisateur dans MySQL : benno.sql

CREATE TABLE `address` (
  `id` VARCHAR(64) NOT NULL DEFAULT '',
  `address` VARCHAR(64) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`,`address`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
CREATE TABLE `appstate` (
  `id` VARCHAR(64) NOT NULL DEFAULT '',
  `userid` VARCHAR(64) NOT NULL DEFAULT '',
  `value` VARCHAR(254) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`,`value`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
CREATE TABLE `container` (
  `userid` VARCHAR(64) NOT NULL DEFAULT '',
  `cid` VARCHAR(128) NOT NULL DEFAULT '',
  `scid` VARCHAR(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`userid`,`cid`,`scid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
 
CREATE TABLE `filter` (
  `id` VARCHAR(64) NOT NULL DEFAULT '',
  `userid` VARCHAR(64) DEFAULT '',
  `name` VARCHAR(255) DEFAULT '',
  `filter` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
CREATE TABLE `storedquery` (
  `id` VARCHAR(64) NOT NULL DEFAULT '',
  `userid` VARCHAR(64) DEFAULT '',
  `name` VARCHAR(255) DEFAULT '',
  `query` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
CREATE TABLE `user` (
  `id` VARCHAR(64) NOT NULL DEFAULT '',
  `name` VARCHAR(256) DEFAULT NULL,
  `password` VARCHAR(64) NOT NULL DEFAULT '',
  `archive` VARCHAR(256) DEFAULT NULL,
  `role` VARCHAR(32) NOT NULL DEFAULT 'USER',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

utilisateur d'imap

Diese Tabelle wird nur benötigt, wenn der Import mittels benno-imapsync erfolgen soll. Hier werden die IMAP-Benutzer gespeichert. Das Passwort wird für die Authentisierung am IMAP-Server benötigt. Es wird reversibel (3DES) verschlüsselt gespeichert und kan mit dem bei der installation von benno-imap erstellten privaten Schlüssel entschlüsselt werden.

CREATE TABLE `imapuser` (
  `id` VARCHAR(64) NOT NULL DEFAULT '',
  `imapuser` VARCHAR(64) NOT NULL DEFAULT '',
  `imaphost` VARCHAR(64) NOT NULL DEFAULT '',
  `imapstatus` longtext,
  `password` text,
  `status` INT(11) DEFAULT '0',
  PRIMARY KEY (`imapuser`,`imaphost`)
);
schéma-de-base-de-données.txt Dernière modification : 07/02/2025 à 08:42 par lwsystems