В MySQL 5.x возможно ли предоставлять разрешения на основе условий (не используя представления)?

StackOverflow https://stackoverflow.com/questions/284796

Вопрос

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

  • может ЧИТАТЬ все строки
  • не удается ВЫПОЛНИТЬ ЗАПИСЬ в строки с идентификатором < x, но может ЗАПИСЫВАТЬ в строку >= x
  • и т.д...

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

Если это невозможно, какой обходной путь вы бы предложили?

Заранее большое спасибо.

Это было полезно?

Решение

Я не думаю, что это возможно с необработанной системой привилегий MySQL.

До тех пор, пока вы не хотите реализовывать это на стороне клиента, изменение кода MySQL самостоятельно может быть вашим единственным вариантом.В конце концов, это открытый исходный код ;)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top