powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с правами в Firebird
14 сообщений из 14, страница 1 из 1
Проблема с правами в Firebird
    #38660305
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. Возникла такая проблема.
Имеется пользователь user1, через которого к БД подключается веб-приложение. Имеется пользователь user2. Эти пользователи никак не связаны между собой. Если у пользователя user2 забрать или дать какой-либо грант, то веб-приложение при обращении к БД будет падать с ошибкой о нехватке прав на поле таблицы, хотя до этого работало отлично. После перезапуска веб-приложения оно работает корректно.
Чем может быть вызвано такое поведение? Разве обязательно переподключаться к базе после изменения прав какого-либо пользователя?
Версия FB - 1.5.
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660315
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Важное замечание: проблема возникает ровно один раз. После обновления коннекта один раз, манипуляции с правами пользователя user2 больше никак не влияют на права пользователя user1.
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660325
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InterloperРазве обязательно переподключаться к базе после изменения прав какого-либо пользователя?
изменения прав для пользователя А не влияют на пользователя Б.
если у вас есть сценарий воспроизведения проблемы - приводите. Пока похоже на стук в подвале.
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660333
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper> Если у пользователя user2 забрать или дать какой-либо грант

Приведите скрипт. Там, поди, и public участвует.

> После перезапуска веб-приложения оно работает корректно.

При запуске какие-нибудь доп. действия выполняются?

Ну и приведите набор прав на один (любой)
проблемный объект - user1, user2, public и
точное сообщение об ошибке.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660335
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvInterloperРазве обязательно переподключаться к базе после изменения прав какого-либо пользователя?
изменения прав для пользователя А не влияют на пользователя Б.
если у вас есть сценарий воспроизведения проблемы - приводите. Пока похоже на стук в подвале.
Сценарий я описал в первом посте.
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660348
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InterloperЧем может быть вызвано такое поведение?
1) Использование версии Firebird времён царя Гороха.
2) Ошибка в уеб-приложении.
3) Ошибка при выдаче или заюирании какого-то права.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660913
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovInterloperЧем может быть вызвано такое поведение?
1) Использование версии Firebird времён царя Гороха.
2) Ошибка в уеб-приложении.
3) Ошибка при выдаче или заюирании какого-то права.

Можете привести примеры ошибок при выдаче или затирании права?
Ошибка возникает после того, как пользователю дается право на select, update на поле таблицы (а не на таблицу целиком).
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660930
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот точная последовательность шагов для воспроизведения ошибки (метаданные разглашать не могу).
1. Подключиться к БД пользователями user1, SYSDBA.
2. Выполнить GRANT SELECT, UPDATE(MYFIELD) ON TABLE1 TO user2 из админского коннекта.
3. Выполнить REVOKE SELECT, UPDATE(MYFIELD) ON TABLE1 FROM user2 из админского коннекта.
4. Выполнить select * from stored_proc1(params) из коннекта user1. Получим ошибку "no permission for read/write to column MYFIELD".
5. Отключиться и подключиться заново пользователем user1.
6. Выполнить select * from stored_proc1(params) из коннекта user1. Ошибка не возникает.

В чем может быть причина?
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660976
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот что нашел в трекере: http://tracker.firebirdsql.org/browse/CORE-4407
По идее моя проблема. Никто не сталкивался?
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38660993
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InterloperВот точная последовательность шагов для воспроизведения ошибки (метаданные разглашать не могу).
1. Подключиться к БД пользователями user1, SYSDBA.
2. Выполнить GRANT SELECT, UPDATE(MYFIELD) ON TABLE1 TO user2 из админского коннекта.
3. Выполнить REVOKE SELECT, UPDATE(MYFIELD) ON TABLE1 FROM user2 из админского коннекта.
4. Выполнить select * from stored_proc1(params) из коннекта user1. Получим ошибку "no permission for read/write to column MYFIELD".
5. Отключиться и подключиться заново пользователем user1.
6. Выполнить select * from stored_proc1(params) из коннекта user1. Ошибка не возникает.

В чем может быть причина?

Вот еще нюанс. Перед шагом 3 нужно выполнить select * from stored_proc1(params) из коннекта user1, ошибки не будет. Зато такой вызов после REVOKE спровоцирует ошибку. Если перед шагом 3 вызова не делать, то ошибку на шаге 4 не получим.
Очень странный баг.
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38661156
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper> 2. Выполнить GRANT SELECT, UPDATE(MYFIELD) ON TABLE1 TO user2 из админского коннекта.
Interloper> 3. Выполнить REVOKE SELECT, UPDATE(MYFIELD) ON TABLE1 FROM user2 из админского коннекта.

Как это выполняется? "Мышкой" или скриптом?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38667105
Не пробовал в FB, а в IB 4.2 попытка управлять правами на уровне полей приводила к глюкам.
С той поры рулим только правами в целом на таблицы и процедуры, т.е. "дуем на молоко".
Видимо, не зря :)

Interloper, а управлять доступом на уровне полей сильно надо?
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38674108
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

Скриптом.
...
Рейтинг: 0 / 0
Проблема с правами в Firebird
    #38674110
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Антон Карасёв,

Решили отказаться от управления правами на уровне полей. На том проблема и решена.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с правами в Firebird
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]