Инструменты пользователя

Инструменты веб-сайта


схема базы данных

Это старая версия документа!


Схема базы данных

пользователь

В этой таблице содержатся данные пользователя. Пароль хранится в виде хеша BCRYPT.

+ ----------+--------------+-----+-----+---------+-------+
 |  ПОЛЕ     |  ТИП          |  NULL  |  КЛЮЧ  |  ПО УМОЛЧАНИЮ  | Дополнительно |
 + ----------+--------------+------+-----+---------+-------+
 | id |  VARCHAR ( 64 )   | НЕТ | PRI |          |        |  пользователя | имя |  VARCHAR ( 256 )  | ДА |      |  NULL     |        | Имя и фамилия | пароль |  VARCHAR ( 64 )   | НЕТ |      |  ''       |        | Хэш BCRYPT пароля | архив |  VARCHAR ( 256 )  | ДА |      |  NULL     |        | Контейнер пользователя |  РОЛЬ      |  ВАРЧАР ( 32 )   | НЕТ |      |  ПОЛЬЗОВАТЕЛЕЙ     |        | Бросок + ----------+--------------+------+-----+--------+

адрес

В таблице «адреса» содержатся адреса, назначенные пользователю. На основе этих адресов генерируется фильтр для уточнения списка ответов на запрос. Адрес *@* быть настроен для администратора или аудитора.

Этот список отображается в информационном поле веб-интерфейса.

+ ---------+-------------+------+-----+---------+-------+
 |  ПОЛЕ    |  ТИП         |  НОЛЬ  |  КЛЮЧ  |  ПО УМОЛЧАНИЮ  | Дополнительно |
 + ---------+-------------+------+-----+---------+-------+
 | id |  VARCHAR ( 64 )  | NO | PRI |          |        | Имя пользователя ( USER . id )
 | адрес |  VARCHAR ( 64 )  | NO | PRI |          |        | Адрес электронной почты для ФИЛЬТРА + ---------
 + -------------+------+-----+---------+-------+

состояние приложения

Здесь сохраняется статус пользователя в веб-интерфейсе при выходе из системы.

+ --------+--------------+------+-----+---------+-------+
 |  ПОЛЕ   |  ТИП          |  НОЛЬ  |  КЛЮЧ  |  ПО УМОЛЧАНИЮ  | Дополнительно |
 + --------+--------------+------+-----+---------+-------+
 | id |  VARCHAR ( 64 )   | NO | PRI |          |        |
 | userid |  VARCHAR ( 64 )   | NO |      |          |        |
 |  VALUE   |  VARCHAR ( 254 )  | NO | PRI |          |        |
 + --------+--------------+------+-----+---------+-------+

контейнер

Таблица «контейнеры» содержит контейнеры и подконтейнеры, назначенные пользователю. Если подконтейнеры были настроены, подконтейнер добавляется к контейнеру в модуле AUTH с помощью символа «/».

+ --------+--------------+------+-----+---------+-------+
 |  ПОЛЕ   |  ТИП          |  НОЛЬ  |  КЛЮЧ  |  ПО УМОЛЧАНИЮ  | Дополнительно |
 + --------+--------------+------+-----+---------+-------
 +  | userid |  VARCHAR ( 64 )   | NO | PRI |          |        | Идентификатор пользователя | cid | VARCHAR ( 128 )  | NO | PRI |          |        | Контейнеры | scid |  VARCHAR ( 128 )  | NO | PRI |          |        | Субконтейнер + --------+--------------+------+-----+--------+

фильтр

Фильтры Lucene Query можно хранить в таблице "filter". После входа в систему фильтры пользователя загружаются с использованием имени пользователя "userid" и объединяются с помощью операции И .

+--------+--------------+------+-----+---------+-------+ 
|  FIELD   |  TYPE          |  NULL  |  KEY  |  DEFAULT  | Extra | 
+--------+--------------+------+-----+---------+-------+ 
| id |  VARCHAR(64)   | NO | PRI |          |        | 
| userid |  VARCHAR(128)  | YES |      |          |        | 
| name |  VARCHAR(255)  | YES |      |          |        | 
|  FILTER  | text | YES |      |  NULL     |        | 
+--------+--------------+------+-----+---------+-------+

сохраненный запрос

Каждый пользователь может сохранять поисковые запросы с указанием имени в веб-интерфейсе. Эти поисковые запросы хранятся в данной таблице.

+ --------+--------------+------+-----+---------+-------+
 |  ПОЛЕ   |  ТИП          |  NULL  |  КЛЮЧ  |  ПО УМОЛЧАНИЮ  | Дополнительно |
 + --------+--------------+------+-----+---------+-------+
 | id |  VARCHAR ( 64 )   | НЕТ | PRI |          |        | Внутренний идентификатор запроса | userid |  VARCHAR ( 64 )   | ДА |      |          |        | Имя пользователя ( USER . id ) этого запроса | name |  VARCHAR ( 255 )  | ДА |      |          |        | Имя сохраненного запроса | query | text | ДА |      |  NULL     |        | Сериализованный объект со сохранённым запросом + --------+--------------+------+-----+--------+

база данных MySQL

Пример SQL-запросов для создания базы данных пользователей в 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;

imapuser

Эта таблица необходима только в том случае, если импорт будет выполняться с помощью benno-imapsync. Здесь хранятся данные пользователей IMAP. Пароль необходим для аутентификации на сервере IMAP. Он хранится с использованием обратимого шифрования 3DES и может быть расшифрован с помощью закрытого ключа, сгенерированного benno-imap

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` )
 ) ;
datenbank-schema.1738917667.txt.gz · Zuletzt geändert: 2025/02/07 08:41 von lwsystems