Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Firebird, InterBase Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 4 5 6 7 8 9 10 11 12 [13]
 Re: ANN Руководство по языку SQL СУБД Firebird 3.0  [new]
o_v_a
Member

Откуда: Тула
Сообщений: 1075
Влад, на выходные всем жеребцам - в пампасы!!!

hvlad
Мимопроходящий,

где ж таких взять ? ;)
12 авг 19, 08:45    [21946775]     Ответить | Цитировать Сообщить модератору
 Re: ANN Руководство по языку SQL СУБД Firebird 3.0  [new]
Gallemar
Member

Откуда: г.Иркутск
Сообщений: 5188
Привет
Нашел кое-что, чего нет в руководстве:
в главе 9 - "Безопасность" - "Отображение объектов безопасности" не указано, что при наличии локального глобальный маппинг игнорируется.
4 сен 19, 17:53    [21963767]     Ответить | Цитировать Сообщить модератору
 Re: ANN Руководство по языку SQL СУБД Firebird 3.0  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10077
Gallemar,

хм. Ну вообще-то не игнорируется. Локальный заменяет глобальный для выбранного объекта безопасности. На самом деле там несколько сложнее и зависит от кучи параметров.

Давай пример, что ты там отображаться хотел.

З.Ы. ты первый на моей памяти кто полез в маппинг, дальше включения доверительной аутентификации и SYSDBA подобного доступа для администраторов Windows.
4 сен 19, 18:21    [21963794]     Ответить | Цитировать Сообщить модератору
 Re: ANN Руководство по языку SQL СУБД Firebird 3.0  [new]
Gallemar
Member

Откуда: г.Иркутск
Сообщений: 5188
Симонов Денис
Gallemar,

хм. Ну вообще-то не игнорируется. Локальный заменяет глобальный для выбранного объекта безопасности. На самом деле там несколько сложнее и зависит от кучи параметров.

"игнорируется" - это слова разработчика, я просто цитирую. Скинул тебе в почту кусок переписки, посмотри.

Симонов Денис
Давай пример, что ты там отображаться хотел.


Хм. Сложно, но попробую.
При использовании двух одинаковых по логике маппингов , например
CREATE MAPPING usr_cluster1 USING PLUGIN CLUSTER FROM USER SYSDBA TO user SYSDBA;

и
CREATE  MAPPING usr_cluster2 USING PLUGIN CLUSTER FROM USER SYSDBA TO user SYSDBA; 


получается ошибка:
Execute statement error at attach :
335545083 : Multiple maps found for SYSDBA

Если будут два таких маппинга глобальными и один локальный - запрос выполнится, если один глобальный и два локальных - получим ошибку. Надеюсь как пример подойдет такое описание.
Симонов Денис
З.Ы. ты первый на моей памяти кто полез в маппинг, дальше включения доверительной аутентификации и SYSDBA подобного доступа для администраторов Windows.


Верю. Я в маппинг зарылся конкретно и беспощадно. Нашел ещё одну неточность в документации:
Пример 9.3. Включение доступа определённому пользователю из другой базы данных
к текущей базе данных под другим именем.
CREATE MAPPING FROM_RT USING PLUGIN SRP IN "rt" FROM USER U1 TO USER U2;  

и
Пример 9.4. Включение обще серверного SYSDBA (от основной базы данных
безопасности) для доступа к текущей базе данных.
Предположим, что база данных использует базу данных безопасности не по умолчанию.
CREATE MAPPING DEF_SYSDBA USING PLUGIN SRP IN "security.db" FROM USER SYSDBA TO USER;    

Что упустили:
В обоих примерах "rt" и "security.db" - базы безопасности. Но, т.к. в тройке база может быть самой для себя security database, то правильнее будет "прошли аутенфикацию c sec/db 'rt'". А у тебя указано только в примере 9.4, что "база данных использует базу данных безопасности не по умолчанию", хотя "rt" тоже не дефолтная. Как-то так.
Ещё момент - при указании бд указывается её запись в "DatabaseAccess" вместе с расширением, если оно есть или алиас.
4 сен 19, 18:53    [21963826]     Ответить | Цитировать Сообщить модератору
 Re: ANN Руководство по языку SQL СУБД Firebird 3.0  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10077
Gallemar
Если будут два таких маппинга глобальными и один локальный - запрос выполнится, если один глобальный и два локальных - получим ошибку.


Что тут удивительного? Глобальный и локальный маппинг живут в разных базах данных. Первый в базе данных безопасности уровня сервера security.db, вторая — в самой базе данных.

LR
Если существуют одноименные глобальные и локальные отображение, то вам следует знать,
что это разные объекты.


вот чего не нашёл у себя в документации так это, то что сочетание источник и объект отображения должны быть уникальны для своего "места проживания".

К маппигам относится то же правила что и к любом настройке. Маппинг уровня БД перекрывает глобальный маппинг. Это действе точно так же как для настроек (настройки в databases.conf для конкретной БД перекрывают глобальные настойки в firebird.conf). Это добавлю.

Gallemar
В обоих примерах "rt" и "security.db" - базы безопасности. Но, т.к. в тройке база может быть самой для себя security database, то правильнее будет "прошли аутенфикацию c sec/db 'rt'".


добавлю пояснению к примеру. Хотя в описании параметра в создании маппинга написано, что "database - Имя базы данных, в которой прошла аутентификация."

Gallemar
Ещё момент - при указании бд указывается её запись в "DatabaseAccess" вместе с расширением, если оно есть или алиас.


этот тут причём? Правила DatabaseAccess общие, по фигу будешь ты БД использовать в маппинге или нет.
4 сен 19, 21:03    [21963944]     Ответить | Цитировать Сообщить модератору
 Re: ANN Руководство по языку SQL СУБД Firebird 3.0  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10077
обновил документацию на github
4 сен 19, 22:09    [21964015]     Ответить | Цитировать Сообщить модератору
 Re: ANN Руководство по языку SQL СУБД Firebird 3.0  [new]
rdb_dev
Member

Откуда: с болот
Сообщений: 3059
Симонов Денис, в разделе CREATE INDEX хорошо бы исправить грамматическую ошибку - слово "низходящий" заменить на "нисходящий".
23 сен 19, 13:28    [21976802]     Ответить | Цитировать Сообщить модератору
 Re: ANN Руководство по языку SQL СУБД Firebird 3.0  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10077
rdb_dev,

исправил
23 сен 19, 20:34    [21977278]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 4 5 6 7 8 9 10 11 12 [13]
Все форумы / Firebird, InterBase Ответить