Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Здравствуйте! Подскажите, пожалуйста.
Можно ли сделать так, чтобы таблица была видна только определенным пользователям?
Пока скрыл только поле, следующим образом (можно ли указать id таблицы или нужно скрывать каждое поле):
Section Access;
LOAD * INLINE [
ACCESS, NTNAME, OMIT
ADMIN, ADMIN,
USER, USER1, SALES
USER, USER2, SALES
............
];
Section Application;
Т.е. доступ к документу имеют admin, user1 и user2. Admin видит всё, user1,2 не видят поле SALES.
Попутно возникло 2 вопроса:
1) Есть ли более удобный способ настройки доступа? При указанном выше способе, при добавлении лицензии новому пользователю, его придется добавить в Section Access и прокачать скрипт.
2) Сделал Section Access в скрытом скрипте и теперь не могу его открыть/отредактировать/удалить (пароль помню):
Добрый день,
Ограничение доступа на уровне данных возможно делать либо на уровне поля(ей) целиком, либо на уровне конкретных значений поля. На уровне таблиц это не делается.
По лицензиям: лицензии никак не связаны с секцией доступа.
Очевидно, что если ставится задача разграничения доступа к данным для каких-то пользователей на уровне записей в модели данных, то для этих пользователей должны быть описаны правила в секции доступа.
По скрытому скрипту: для его открытия вы должны быть администратором документа (содержимым поля ACCESS в секции доступа для этого пользователя должен быть ADMIN).
Опять же не забывайте, что для массовых и сложных разграничений доступа целесообразнее использовать не только и не столько Section Access, сколько QlikView Publisher.
Добрый день,
Ограничение доступа на уровне данных возможно делать либо на уровне поля(ей) целиком, либо на уровне конкретных значений поля. На уровне таблиц это не делается.
По лицензиям: лицензии никак не связаны с секцией доступа.
Очевидно, что если ставится задача разграничения доступа к данным для каких-то пользователей на уровне записей в модели данных, то для этих пользователей должны быть описаны правила в секции доступа.
По скрытому скрипту: для его открытия вы должны быть администратором документа (содержимым поля ACCESS в секции доступа для этого пользователя должен быть ADMIN).
Опять же не забывайте, что для массовых и сложных разграничений доступа целесообразнее использовать не только и не столько Section Access, сколько QlikView Publisher.
Сергей, спасибо за ответ!
Сергей, объясните, пожалуйста.. Скрипт с секцией доступа не выполняется из QMC, выдает:
29.05.2015 15:31:23 Error Document open call failed. The document might require username and password.
29.05.2015 15:31:23 Error The document failed to open.
29.05.2015 15:31:24 Error Document could not be opened
29.05.2015 15:31:24 Error The task ".../тест.qvw" failed. Exception:
QDSMain.Exceptions.
DistributionFailedException: Distribute failed with errors to follow. ---> QDSMain.Exceptions.ReloadFailedException: Reload failed ---> QDSMain.Exceptions.FailedDocumentCheckoutException: Failed to check out document with path: ...\тест.qvw
at QDSMain.ReloadTask.Reload(String fileName, TaskResult taskResult, String sectionAccessUserName, String sectionAccessPassword, eReloadOptions reloadOption, String variableName, String variableValue, Boolean moniterCpuUsage)
--- End of inner exception stack trace ---
at QDSMain.ReloadTask.Reload(String fileName, TaskResult taskResult, String sectionAccessUserName, String sectionAccessPassword, eReloadOptions reloadOption, String variableName, String variableValue, Boolean moniterCpuUsage)
at QDSMain.DistributeTask.Execute(TaskResult currentTaskResult)
--- End of inner exception stack trace ---
at QDSMain.DistributeTask.Execute(TaskResult currentTaskResult)
at QDSMain.Task.AbstractTask.TaskExecution(ILogBucket logBucket, TaskResult taskResult)
Аутентификацию провожу только по NTNAME:
Section Access;
LOAD * INLINE [
ACCESS, NTNAME, OMIT
....
Первым делом проверьте - включили ли вы в секцию доступа учетную запись пользователя, от имени которой работают службы сервера QlikView.
Эта учетная запись должна быть включена в секцию доступа с привилегиями ADMIN.