powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / GRANT TO PUBLIC
9 сообщений из 9, страница 1 из 1
GRANT TO PUBLIC
    #40014705
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выдал PSQL-функции права пользователя PUBLIC.
На странице "Скрипт" такой текст:
Код: sql
1.
GRANT EXECUTE ON FUNCTION NLE TO "PUBLIC";


Почему PUBLIC обрамлен в кавычки? Если их убрать, то скрипт нормально работает.
И второй вопрос - будет ли убрано бессмысленное грантование для SYSDBA?
Код: sql
1.
GRANT EXECUTE ON FUNCTION NLE TO SYSDBA;
...
Рейтинг: 0 / 0
GRANT TO PUBLIC
    #40014712
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax

Почему PUBLIC обрамлен в кавычки? Если их убрать, то скрипт нормально работает.


А если не убирать, то тоже нормально работает. Т.е., проблемы нет.

CyberMax

И второй вопрос - будет ли убрано бессмысленное грантование для SYSDBA?
Код: sql
1.
GRANT EXECUTE ON FUNCTION NLE TO SYSDBA;



Мне отсюда не видно, что оно бессмысленное. Мне отсюда видно только записи в RDB$USER_PRIVILEGES.
...
Рейтинг: 0 / 0
GRANT TO PUBLIC
    #40014765
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert,

можно фильтровать по владельцу объекта (процедуры, функции, пакета, триггера). Ему гранты давать не надо.
...
Рейтинг: 0 / 0
GRANT TO PUBLIC
    #40015125
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис

можно фильтровать по владельцу объекта (процедуры, функции, пакета, триггера). Ему гранты давать не надо.
...
Рейтинг: 0 / 0
GRANT TO PUBLIC
    #40015126
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис

можно фильтровать по владельцу объекта (процедуры, функции, пакета, триггера). Ему гранты давать не надо.


Можно. Но мне отсюда также не видно, для какой цели тот скрипт будет использоваться.
...
Рейтинг: 0 / 0
GRANT TO PUBLIC
    #40015135
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IBExpert
Мне отсюда не видно, что оно бессмысленное. Мне отсюда видно только записи в RDB$USER_PRIVILEGES.

Видно же. Любой грант для пользователя с именем SYSDBA - бессмысленен. Я же не говорю про анализ владельца объекта или наличие грантованной роли RDB$ADMIN для пользователя для определения, нужен грант или нет.
...
Рейтинг: 0 / 0
GRANT TO PUBLIC
    #40015137
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax
Любой грант для пользователя с именем SYSDBA - бессмысленен.


Серьезно? А чего тогда эти бессмысленные гранты место в RDB$USER_PRIVILEGES занимают?
...
Рейтинг: 0 / 0
GRANT TO PUBLIC
    #40015150
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для начала процитирую два источника:
1. Официальная документация
Каждая установленная СУБД Firebird имеет предопределенного пользователя с именем SYSDBA. Этот пользователь является администратором, и имеет неограниченный доступ ко всем базам данных, доступным СУБД. Права, определенные в конкретной базе данных, игнорируются, если подключение к базе данных осуществлется пользователем SYSDBA.
2. Статья на ibase.ru
Право на доступ к любому объекту базы данных после его создания имеют только SYSDBA и владелец этого объекта.

Из этих цитат очевидно, что давать гранты SYSDBA не нужно, т.к. доступ к объектам под SYSDBA обеспечивается самим сервером.

IBExpert
А чего тогда эти бессмысленные гранты место в RDB$USER_PRIVILEGES занимают?

Могу предположить, что для внутренних нужд сервера.

Для теста создаю новую функцию "NEW_PSQL_FUNC".
Смотрю права:
Код: sql
1.
SELECT * FROM RDB$USER_PRIVILEGES UP WHERE UP.RDB$RELATION_NAME = 'NEW_PSQL_FUNC'


А там уже есть SYSDBA с правами на EXECUTE.
Так же с таблицей - если создать новую и посмотреть в RDB$USER_PRIVILEGES, то там уже будут все пять прав, выданные SYSDBA для SYSDBA. То есть обеспечением прав для SYSDBA занимается сам сервер. И после создания любого объекта давать ему какие-либо права не нужно - они уже есть.
...
Рейтинг: 0 / 0
GRANT TO PUBLIC
    #40015166
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax

Из этих цитат очевидно, что давать гранты SYSDBA не нужно


Эксперт их и не дает, они перечислены в скрипте как существующие привилегии. Выкусывать их оттуда только потому, что они тебе глаза мозолят, я не буду. Можешь сделать это самостоятельно с помощью REVOKE.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / GRANT TO PUBLIC
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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