View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0008614 | VALENTINA STUDIO | Links | public | 2019-08-28 10:17 | 2019-09-20 07:31 |
Reporter | Alexander | Assigned To | Sergey Pashkov | ||
Priority | normal | Severity | major | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | INTEL | OS | Linux | OS Version | * |
Product Version | 9.2.x | ||||
Target Version | 9.6.x | Fixed in Version | 9.6.x | ||
Summary | 0008614: Fix showing related records for the user that is not an owner of linked tables | ||||
Description | При ограничении прав ниже superuser, для пользователя БД, перестает работать отображение связанных таблиц в Valentina Studio. Похожая ошибка была описана здесь: http://www.valentina-db.com/bt/view.php?id=7053 "ERROR: zero-length delimited identifier at or near """" LINE 1: ...N "databasename"."tablename" alias 1 on ALIAS1."" = alias..." Запрос в БД при возникновении ошибки: SELECT COUNT(*) FROM ... ... FROM "public"."account" alias2 JOIN "public"."company" alias1 ON alias1."" = alias2."company_id" ) AS subQuery ORDER BY "id" ASC ) as countQuery Если под пользователем открыть Design Link, то у таблицы куда ведет ссылка, отсутствует поле. Под superuser такого нет. Думаем, что проблема с правами, но с какими не понятно, т.к. перебрали уже все. Думается, что прав ALL privileges on ALL TABLE IN SCHEMA schemaname to user должно быть достаточно, но это не так. | ||||
Steps To Reproduce | Создать пользователя и дать ему все права на таблицы в схеме; Открыть под созданным пользователем VStudio и подключиться к БД; Открыть любую таблицу и кликнуть на любую ячейку; Должно выпасть окно с ошибкой: "ERROR: zero-length delimited identifier at or near """" LINE 1: ...N "databasename"."tablename" alias 1 on ALIAS1."" = alias..." БД и все её таблицы, вместе со всеми внешними ключами, должны быть созданы под другим пользователем с правами superuser (не уверен, что это обязательный пункт); | ||||
Tags | No tags attached. | ||||
Working with DB: | postgreSQL Server | ||||
Version of your DB | 9.6.14 | ||||
Link with superuser.png (29,767 bytes) Link without superuser.png (37,284 bytes) ERROR.png (11,943 bytes) |
|
Добрый день! А можете свойства связи в инспекторе показать для обычного пользователя? По идее Foreign Key будет пустым. |
|
Добрый день! Не совсем понимаю, что вы имеет ввиду. Второй скриншот, приложенный мной к описанию, как раз и является окном свойства связи, открытым пользователем без прав superuser'a. Или речь про какое-то другое окно? |
|
Панель справа - инспектор, показывает свойства объекта, это исходные данные для диалога Design Link. https://www.dropbox.com/s/j2a6z9zfrwiuepg/Screenshot%202019-08-28%2016.34.43.png?dl=0 Сами же свойства PK/FK зачитываются такими запросами. Primary Key: SELECT column_name FROM information_schema.constraint_column_usage WHERE constraint_schema = $PNAME AND constraint_name = $NAME; Foreign Key: SELECT column_name FROM information_schema.key_column_usage WHERE constraint_schema = $PNAME AND constraint_name = $NAME; Можете попробовать выполнить эти запросы? Если где-то полей не вернет, то будем разбираться с доступом к этой системной таблице |
|
Благодарю за скриншот. Запросы выполнил, под пользователем с обычными правами. Первый ничего не возвращает, только под superuser. Второй вернул имя колонки. Отдельно приложил скриншот с инспектором. foreign key.png (32,043 bytes) primary key.png (30,802 bytes) inspector.png (105,727 bytes) |
|
Спасибо, здесь точно такая же проблема https://stackoverflow.com/questions/39379939/how-to-access-information-schema-foreign-key-constraints-with-read-only-user-in Попробуем применить это решение. |
|
Добрый день! Можете сориентировать, планируется ли в ближайших версиях решение этой проблемы? |
|
Добрый день! Да, в ближайшее время займёмся. | |
Исправление будет доступно в следующей версии | |
9.6 few days we hope to get it | |
Date Modified | Username | Field | Change |
---|---|---|---|
2019-08-28 10:17 | Alexander | New Issue | |
2019-08-28 10:17 | Alexander | File Added: Link with superuser.png | |
2019-08-28 10:17 | Alexander | File Added: Link without superuser.png | |
2019-08-28 10:17 | Alexander | File Added: ERROR.png | |
2019-08-28 10:56 | Sergey Pashkov | Note Added: 0010954 | |
2019-08-28 11:36 | Alexander | Note Added: 0010955 | |
2019-08-28 13:38 | Sergey Pashkov | Note Added: 0010956 | |
2019-08-28 14:17 | Alexander | File Added: foreign key.png | |
2019-08-28 14:17 | Alexander | File Added: primary key.png | |
2019-08-28 14:17 | Alexander | File Added: inspector.png | |
2019-08-28 14:17 | Alexander | Note Added: 0010957 | |
2019-08-28 15:21 | Sergey Pashkov | Note Added: 0010958 | |
2019-09-04 08:02 | Alexander | Note Added: 0010976 | |
2019-09-04 08:04 | Sergey Pashkov | Note Added: 0010977 | |
2019-09-04 10:09 | Sergey Pashkov | Assigned To | => Sergey Pashkov |
2019-09-04 10:09 | Sergey Pashkov | Status | new => assigned |
2019-09-04 14:55 | Sergey Pashkov | Summary | SQL error "zero-length delimited identifier at or near """" => Fix showing related records for the user that is not an owner of linked tables |
2019-09-04 14:55 | Sergey Pashkov | Description Updated | View Revisions |
2019-09-04 14:55 | Sergey Pashkov | Steps to Reproduce Updated | View Revisions |
2019-09-04 14:59 | Sergey Pashkov | Status | assigned => resolved |
2019-09-04 14:59 | Sergey Pashkov | Resolution | open => fixed |
2019-09-04 14:59 | Sergey Pashkov | Fixed in Version | => 9.5.x |
2019-09-04 14:59 | Sergey Pashkov | Target Version | => 9.5.x |
2019-09-04 14:59 | Sergey Pashkov | Note Added: 0010978 | |
2019-09-20 07:30 | Ruslan Zasukhin | Fixed in Version | 9.5.x => 9.6.x |
2019-09-20 07:30 | Ruslan Zasukhin | Target Version | 9.5.x => 9.6.x |
2019-09-20 07:31 | Ruslan Zasukhin | Note Added: 0010988 |