Я разрабатываю больничную систему, где пациенты могут разрешить пользователю доступ к своей информации в соответствии с их выбором. Существуют разные группы пользователей, например, врачи, медсестры, регистрационные клерки, страховщики и менеджеры. Пользователь может получить доступ к личным данным пациента, медицинским данным пациента, подробным сведениям о предписаниях пациента или обо всем. Каждый пользователь идентифицируется уникальным «user_id» и каждой группой уникальным «group_id».Дизайн таблиц прав доступа
Пациент может блокировать:
1. одного пользователя (например, медсестра)
2. группу (например, все медсестры)
3. группа с некоторыми исключениями (например, блокирование всех медсестер, кроме nurse1 и nurse3)
4. конкретных пользователей, но чтобы их соответствующие группы (например, разрешить все медсестры кроме nurse1 и nurse3)
После предоставления доступа к пользователю или группе они будут назначены разрешения, как чтение, запись и удаление.
У меня возникли проблемы с разработкой таблицы (-ов) вместе со своими полями, чтобы я мог хранить эти данные о правах доступа.
Вы можете посмотреть на ACL (Access Controls Lists) могут, как они работают в ОС, как Windows \ Linux. Вы собираетесь реализовать аналогичную функциональность. С точки зрения БД это было бы непросто, но логика приложения была бы жесткой. – Alsin