Управление доступом пользователей к таблицам MySQL

У меня есть схема в MySQL, которая хранит информацию для различных офисных функций. Я хочу убедиться, что сотрудники склада не могут войти в таблицы обслуживания клиентов и наоборот. У каждого пользователя есть логин на Windows Server, и он принадлежит к таким группам пользователей, как «Склад» и «Служба поддержки».

MySQL не использует аутентификацию Windows (потому что вы должны заплатить за это расширение). Вместо этого у него есть такие пользователи, как «склад» и «служба поддержки», которые имеют доступ к своим соответствующим наборам таблиц.

Страницы php интрасети предоставляют доступ к таблицам MySQL через формы и т. Д.

Для достижения цели предоставления сотрудникам хранилища доступа только к своим данным, так же как и к специалистам по обслуживанию клиентов, я рассматриваю следующее:

  • Создайте «складской» каталог и поместите в него соответствующие страницы интрасети; сделать то же самое с каталогом «customerservice».
  • Предоставьте доступ только группе пользователей «склад» к каталогу «склад». Та же идея с «обслуживанием клиентов».
  • Сделайте так, чтобы все php-страницы в каталоге «warehouse» обращались к MySQL с помощью входа «warehouse» в MySQL. Та же идея с «обслуживанием клиентов».

Таким образом, я могу добавлять пользователей в группы в Windows, и они будут иметь доступ только к тем данным, которые им нужны. По сути, я сопоставляю пользователей MySQL с группами Windows.

Какие еще способы вы использовали для этого?

-1

Решение

Я пришел из магазина MS, поэтому я бы взял текущего пользователя с нативной функцией .NET (например, этот) и обратиться к AD, а затем обслуживать партиалы, которые применяются только к этому пользователю.

Так как вы на стороне PHP, я бы использовал эти сделать что-то подобное. Первый комментарий, кажется, также делает проверку личности и членства в группе.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]