powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Comparer
8 сообщений из 8, страница 1 из 1
Comparer
    #39762461
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саша, привет!

При создании вьюхи и дальнейшем прогоне через компарер теряются права, воспроизводимый пример ниже.

Была таблица, для простоты разрешим все паблику.
Код: sql
1.
2.
3.
4.
5.
CREATE TABLE T1 (
    ID  INTEGER NOT NULL
);

GRANT ALL ON T1 TO PUBLIC;



Хочу вклинить посредника:

табличка
Код: sql
1.
2.
3.
4.
CREATE TABLE T2 (
    ID  INTEGER NOT NULL
);
GRANT ALL ON T2 TO PUBLIC;



дропаю исходную

Код: sql
1.
DROP TABLE T1;



создаю вьюху

CREATE OR ALTER VIEW T1(ID) AS select id from t2;

ДАЮ ПРАВА!
GRANT ALL ON T1 TO PUBLIC;

GRANT SELECT ON T2 TO VIEW T1;

далее скрипт компарера

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
SET CLIENTLIB 'C:\Program Files\Firebird\Firebird_3_0\fbclient.dll';
SET NAMES UTF8;

SET SQL DIALECT 3;

CONNECT 'dst1.fdb' USER 'SYSDBA' PASSWORD '****';

SET AUTODDL ON;

/******************************************************************************/
/****                           Dropping tables                            ****/
/******************************************************************************/
DROP TABLE T1;


/******************************************************************************/
/****              Creating tables (without computed fields)               ****/
/******************************************************************************/
CREATE TABLE T2 (
    ID INTEGER NOT NULL);

/******************************************************************************/
/****                       Creating/altering views                        ****/
/******************************************************************************/
CREATE VIEW T1 (
    ID)
AS
select id from t2;

GRANT SELECT, INSERT, UPDATE, DELETE, REFERENCES ON T2 TO PUBLIC;

GRANT SELECT, INSERT, UPDATE, DELETE, REFERENCES ON T2 TO SYSDBA WITH GRANT OPTION;

GRANT SELECT ON T2 TO VIEW T1;




Беднягу паблика обделили в правах на работу с вьюхой!
...
Рейтинг: 0 / 0
Comparer
    #39763678
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вот если бы дал мне два готовых скрипта (а еще лучше - две БД), я бы уже проверил...
...
Рейтинг: 0 / 0
Comparer
    #39764150
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прошу прощения, исправляюсь.
источник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
/******************************************************************************/
/***         Generated by IBExpert 2018.12.13.1 24.01.2019 11:58:53         ***/
/******************************************************************************/

SET SQL DIALECT 3;

SET NAMES UTF8;

SET CLIENTLIB 'C:\Program Files\Firebird\Firebird_3_0\fbclient.dll';

CREATE DATABASE '192.168.2.29:src1.fdb'
USER 'SYSDBA'
PAGE_SIZE 16384
DEFAULT CHARACTER SET UTF8 COLLATION UTF8;

/******************************************************************************/
/***                                 Tables                                 ***/
/******************************************************************************/

CREATE TABLE T2 (
    ID  INTEGER NOT NULL
);

/******************************************************************************/
/***                                 Views                                  ***/
/******************************************************************************/

/* View: T1 */
CREATE VIEW T1(
    ID)
AS
select id from t2
;

/******************************************************************************/
/***                               Privileges                               ***/
/******************************************************************************/

/* Privileges of users */
GRANT ALL ON T1 TO PUBLIC;
GRANT ALL ON T2 TO PUBLIC;

/* Privileges of views */
GRANT SELECT ON T2 TO VIEW T1;


назначение
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
/******************************************************************************/
/***         Generated by IBExpert 2018.12.13.1 24.01.2019 11:59:41         ***/
/******************************************************************************/

SET SQL DIALECT 3;

SET NAMES UTF8;

SET CLIENTLIB 'C:\Program Files\Firebird\Firebird_3_0\fbclient.dll';

CREATE DATABASE '192.168.2.29:dst1.fdb'
USER 'SYSDBA'
PAGE_SIZE 16384
DEFAULT CHARACTER SET UTF8 COLLATION UTF8;

/******************************************************************************/
/***                                 Tables                                 ***/
/******************************************************************************/

CREATE TABLE T1 (
    ID  INTEGER NOT NULL
);

/******************************************************************************/
/***                               Privileges                               ***/
/******************************************************************************/

/* Privileges of users */
GRANT ALL ON T1 TO PUBLIC;


результат работы компарера
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
/* Server version: LI-V6.3.4.33066 Firebird 3.0 
   SQLDialect: 3. ODS: 12.0. Forced writes: On. Sweep interval: 20000.
   Page size: 16384. Cache pages: 2048 (32768 Kb). Read-only: False. */
SET CLIENTLIB 'C:\Program Files\Firebird\Firebird_3_0\fbclient.dll';
SET NAMES UTF8;

SET SQL DIALECT 3;

CONNECT '192.168.2.29:dst1.fdb' USER 'SYSDBA' PASSWORD '***';

SET AUTODDL ON;

/******************************************************************************/
/****                           Dropping tables                            ****/
/******************************************************************************/
DROP TABLE T1;


/******************************************************************************/
/****              Creating tables (without computed fields)               ****/
/******************************************************************************/
CREATE TABLE T2 (
    ID INTEGER NOT NULL);


/******************************************************************************/
/****                            Creating views                            ****/
/******************************************************************************/
CREATE VIEW T1 (
    ID)
AS
select id from t2;


/******************************************************************************/
/****                     Granting missing privileges                      ****/
/******************************************************************************/
GRANT SELECT, INSERT, UPDATE, DELETE, REFERENCES ON T2 TO PUBLIC;

GRANT SELECT, INSERT, UPDATE, DELETE, REFERENCES ON T2 TO SYSDBA WITH GRANT OPTION;

GRANT SELECT ON T2 TO VIEW T1;
...
Рейтинг: 0 / 0
Comparer
    #39764160
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Comparer
    #39766256
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исправил.
...
Рейтинг: 0 / 0
Comparer
    #39766378
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, проверю. А то приходилось дважды прогонять через компарер. DLL тоже обновлена?
...
Рейтинг: 0 / 0
Comparer
    #39766597
IBExpert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_PisarevskyDLL тоже обновлена?

Обновил.
...
Рейтинг: 0 / 0
Comparer
    #39767843
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверил, все права на требуемом месте.

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


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