Нахожусь ли я на правильном пути для дизайна базы данных для входа пользователя в систему? - PullRequest
0 голосов
/ 26 января 2019

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

Представьте, что пользователь регистрирует свою компанию онлайн (на моем веб-сайте), данные о компании попадают в таблицу моей компании, а их данные - в мою таблицу пользователей..

Затем они получают «тип учетной записи» в качестве администратора компании (таблица типов учетных записей).

Этот пользователь (администратор компании) теперь может войти в свою учетную запись компании в режиме онлайн и зарегистрировать несколько пользователей (в их компании).

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

  1. Каждыйпользователь может иметь либо пароль, либо смарт-карту для входа в систему. У меня есть связь для таблиц паролей и смарт-карт, но это означает, что будет много нулевых объектов.У пользователя будет пароль или смарт-карта.

  2. Просто чтобы уточнить мои потребности.Когда пользователь регистрирует компанию, он становится администратором компании, но он также может настраивать других администраторов и / или пользователей, поэтому все они у меня в разных таблицах.

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

Я в основном обеспокоен тем, что у меня правильный тип нормализации базы данных И дизайн отношений.

Наконец, в таблице смарт-карт будет несколько записей смарт-карт, которые я создаю, и янеобходимо иметь возможность назначить одну или несколько компаний, а затем администратор компании может назначить одну или несколько из них пользователю, принадлежащему этой компании.

  1. В порядке ли мои отношения для этого?
  2. А как насчет нулевых значений, пока мне не назначены смарт-карты, это нормально?

Любая помощь и руководство будутat.

И просто для подтверждения, это будет внутренняя база данных SQL на моем сервере, доступ к которой осуществляется через веб-приложение онлайн И настольные приложения конечного пользователя, написанные на C #

ERD diagram of proposed database structure

...