Что является хорошей практикой для создания дизайна аутентификации (форма входа в систему) для системы - PullRequest
0 голосов
/ 20 мая 2019

Привет, ребята, в настоящее время я создаю систему управления сотрудниками.

Я сделал несколько форм приложений, таких как CRUD форма сотрудника и прочее.Я также внедрил форму входа в систему с пользователями из базы данных, но у меня возникла проблема с правильным проектированием базы данных.Я хочу, чтобы каждый раз, когда я добавлял сотрудника из формы Employee CRUD, он добавлялся как пользователь, который может войти в систему.
В настоящее время я добавляю пользователей в базу данных вручную, но я этого не хочу, потому что пользователибудет из 3 категорий: сотрудник, администратор и менеджер.
Я использую JPA для базы данных. Ниже я покажу вам фото схемы базы данных.

DB SCHEMA

Что будет хорошей практикой, поэтому каждый раз, когда я добавляю сотрудника для добавления в качестве ПОЛЬЗОВАТЕЛЯ, который может войти в систему,

Спасибо за каждый ответ и за ваше время..

1 Ответ

0 голосов
/ 20 мая 2019

Самым простым решением было бы иметь логические значения внутри таблицы сотрудников (isUser, isManager ...). Это хорошо, если вы можете иметь одну или несколько ролей и если вам не нужно больше информации (пользователь - просто сотрудник с проверкой логического значения).

-

Если вам нужна дополнительная информация о ваших ролях, вы можете связать свою таблицу сотрудников с другой таблицей с нужными вам полями.

Для примера между сотрудником и пользователем добавьте внешний ключ внутри Employee (userID) и таблицу с именем user с полями, которые вам нужны. Например:

ИД пользователя, пароль, lastConnectionDate ...

-

Другим способом было бы иметь таблицу «Роли» и таблицу «Сотрудники». Идея состоит в том, чтобы добавить еще одну таблицу employeeRoles с тремя ключами:

IDEmployeeRoles, IDEmployee, IDRole

Таким образом, вы сможете связать многих сотрудников со многими ролями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...