|
|
|
Запрос и привилегии
|
|||
|---|---|---|---|
|
#18+
Всем доброго времени суток. Вопрос следующий: Есть юзер test_user , мне нужно при помощи sql-запроса узнать, есть ли у него привилегии INSERT и UPDATE на определенную схему, скажем test_schema . Запрос два столбца [priv] - название привилегии и [has] - соответственно 1 - если привилегия есть и 0 - если привилегии нет. Сочинил я что-то типа такого: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. Возвращает эта штука что-то типа такого: priv has'INSERT ON test_schema.*' '1''UPDATE ON test_schema.*' '0' Но вот проблема, этот запрос не покрывает унаследованных привилегий. Допустим если пользователю test_user выдать такую привилегию Код: sql 1. то во втором столбце второй строки все еще будет 0 хотя по факту он может апдейтить все что хочет. Вопрос, как переписать данный запрос, чтобы он покрыл все кейсы, и возвращал 0 исключительно тогда, когда у пользователя нет прав апдейтить в схеме test_schema . Или может есть в MySql какая-то волшебная умная функция типа HAS_PERMS_BY_NAME в MS Sql. Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2016, 16:25 |
|
||
|
|

start [/forum/topic.php?fid=47&gotonew=1&tid=1832093]: |
0ms |
get settings: |
6ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
163ms |
get topic data: |
9ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
23ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 449ms |

| 0 / 0 |
