Benutzer-Werkzeuge

Webseiten-Werkzeuge


datenbank-schema

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
datenbank-schema [2019/01/11 16:55] lwsystemsdatenbank-schema [2025/02/07 08:42] (aktuell) – [filter] lwsystems
Zeile 2: Zeile 2:
  
 ===== user  ===== ===== user  =====
-Diese Tabelle enthält die Benutzer-Daten. Das Passwort wird als MD5 Hash gespeichert. +Diese Tabelle enthält die Benutzer-Daten. Das Passwort wird als BCRYPT Hash gespeichert. 
  
 <code sql> <code sql>
Zeile 10: Zeile 10:
 | id       | varchar(64)  | NO   | PRI |               | Username | id       | varchar(64)  | NO   | PRI |               | Username
 | name     | varchar(256) | YES  |     | NULL    |       | Vor- und Nachname | name     | varchar(256) | YES  |     | NULL    |       | Vor- und Nachname
-| password | varchar(64)  | NO               |       MD5 Hash des Passworts+| password | varchar(64)  | NO       ''      |       BCRYPT Hash des Passworts
 | archive  | varchar(256) | YES  |     | NULL    |       | Container des Users | archive  | varchar(256) | YES  |     | NULL    |       | Container des Users
 | role     | varchar(32)  | NO       | USER    |       | Rolle | role     | varchar(32)  | NO       | USER    |       | Rolle
Zeile 46: Zeile 46:
 </code> </code>
  
-===== storedquery  =====+===== container  =====
  
-Jeder Benutzer kann im Web-UI Suchanfragen mit einem Namen abspeichern. Diese Suchanfragen werden in dieserTabelle gespeichert+Die Tabelle "container" enthält die dem User zugeordneten Container und Subcontainer. 
 +Falls Subcontainer konfiguriert wurden, wird der Subcontainer im AUTH-Modul per "/" an den Conainer angehängt.
  
 <code sql> <code sql>
Zeile 54: Zeile 55:
 | Field  | Type         | Null | Key | Default | Extra | | Field  | Type         | Null | Key | Default | Extra |
 +--------+--------------+------+-----+---------+-------+ +--------+--------------+------+-----+---------+-------+
-id     | varchar(64)  | NO   | PRI |               Interne Id der Abfrage +userid | varchar(64)  | NO   | PRI |               Benutzer-Id 
-userid | varchar(64 YES      |               Benutzername (user.id) dem dieser Abfrage  +cid    | varchar(128) | NO   PRI |               Container 
-name   | varchar(255) | YES      |               Name der gespeicherten Abfrage +scid   | varchar(128) | NO   PRI |               Subcontainer
-| query  | text         | YES  |     | NULL    |       | Serialisiertes Objekt mit der gespeicherten Abfrage+
 +--------+--------------+------+-----+---------+-------+ +--------+--------------+------+-----+---------+-------+
 </code> </code>
  
-===== filter  ===== 
-Die Tabelle "filter" enthält [[Filter]] für einzelne Benutzer. Die Pflege der [[Filter]] ist im Web-UI noch nicht implementiert und kann derzeit nur direkt in die Datenbank eingetragen werden. 
  
 +===== filter =====
 +
 +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.
  
 <code sql> <code sql>
Zeile 69: Zeile 71:
 | Field  | Type         | Null | Key | Default | Extra | | Field  | Type         | Null | Key | Default | Extra |
 +--------+--------------+------+-----+---------+-------+ +--------+--------------+------+-----+---------+-------+
-| id     | varchar(64)  | NO   | PRI |               Interne Id des Filters +| id     | varchar(64)  | NO   | PRI |               eindeutige Id des Filters 
-| userid | varchar(64 | YES  |                   Benutzername (user.id) dieses Filters +| userid | varchar(128) | YES  |                   Anmeldename 
-| name   | varchar(255) | YES  |                   | Name des Filters in der Anzeige. +| name   | varchar(255) | YES  |                   | Name des Filters zur Anzeige im [i] Fenster 
-| filter | text         | YES  |     | NULL    |       | Lucene Filter String+| filter | text         | YES  |     | NULL    |       | Lucene Query String
 +--------+--------------+------+-----+---------+-------+ +--------+--------------+------+-----+---------+-------+
 </code> </code>
 +
 +===== storedquery  =====
 +
 +Jeder Benutzer kann im Web-UI Suchanfragen mit einem Namen abspeichern. Diese Suchanfragen werden in dieserTabelle gespeichert. 
 +
 +<code sql>
 ++--------+--------------+------+-----+---------+-------+
 +| 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
 ++--------+--------------+------+-----+---------+-------+
 +</code>
 +
 +
  
  
Zeile 94: Zeile 113:
   PRIMARY KEY (`id`,`value`)   PRIMARY KEY (`id`,`value`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ) 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` ( CREATE TABLE `filter` (
Zeile 119: Zeile 145:
   PRIMARY KEY (`id`)   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 +</code>
 +
 +===== imapuser =====
 +
 +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.
 +
 +<code sql>
 +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`)
 +);
 </code> </code>
datenbank-schema.1547225754.txt.gz · Zuletzt geändert: 2019/01/11 16:55 von lwsystems