Вопрос: как узнать логин/имя/ЕМайл текущего пользователя для использовании в КУБе? Чтобы потом на основе этой информации настроить ролевую модель (разграничение доступов к данным, исходя из настроечной таблицы)
Расскажу немного о задаче:
- Есть массив данных (регион (Москва,Центр,Кавказ,Урал…), значение)
- Есть настроечная таблица, в которой указан Логин/Фио/Емайл пользователя и область данных (в виде значения поля).
Например: Ivanov, Москва. В этом случае пользователю “Ivanov” доступны данные только по региону Москва
Может быть несколько строк:
Ivanov, Москва
Ivanov, Урал
В это случае этому пользователю доступны исключительно данные регионов Москва и/или Урал
Если же у пользователя стоит “*”, то ему доступны данные всех регионов (можно также этот вопрос решить через дополнительный столбец “Роль”: Админ/пользователь)
Добрый день!
Для того, чтобы получить одно из полей по пользователю, который в настоящее время авторизовался на платформе, можно воспользоваться функцией ниже.
Данную функцию необходимо подставить в условие where в кубе при работе с запросом в источник.
Пример функции:
${filter( cond($(user.username)))}
- если вместо login указать другую колонку из таблицы adm.users, то можно получить значения других полей.
В результате будет отправлен запрос в источник с теми данными для выборки, которые соответствуют тому пользователю, который в настоящее время авторизовался в системе.
При указании такого условия в итоговом запросе просто получается where и пустота, возможно что-то не совсем так надо писать ?