Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

  1. Перейдите на вкладку “Сопоставление атрибутов“.
  2. Включите сопоставление атрибутов, нажав кнопку "Включить сопоставление атрибутов".
  3. Задайте параметры сопоставления:
    1. Фамилия – атрибут, в котором хранится фамилия пользователя;
    2. Имя – атрибут, в котором хранится имя пользователя;
    3. Отчество – атрибут, в котором хранится отчество пользователя;
    4. Email – атрибут, в котором хранится email пользователя.
    5. Дополнительные атрибуты – используются для разграничения прав доступа к данным. Подробно описание см. в Разграничение прав доступа к данным
  4. Для сохранения настроек нажмите “Сохранить“.

...

Информация

Если сопоставление атрибутов не включено, то при создании пользователей, Фамилия будет получена из атрибута для "UserName claim" на вкладке Настройка внешней авторизации.

Настройка ролей

Для настройки соответствия ролей пользователей во внешнем провайдере и ролям в Visiology:

...

Информация
Если включено “Включить сопоставление ролей“, то при авторизации пользователя, его роли в Visiology будут обновлены согласно с заданными настройкам сопоставления. 

Примеры сопоставления ролей

Имеется массив с ролями из токена:

Блок кода
{
   "resource_access":{
      "test":{
         "roles":[
            "foo",
            "fooo"
         ]
      }
   }
}

Пример 1

Для сопоставления ролей из токена с ролями на платформе необходимо ввести следующую команду в поле JMESPath:

resource_access.test.roles

Результат будет таким:

[ "foo", "fooo" ]

В данном случае роли на платформе и в провайдере должны иметь одинаковые наименования.

Пример 2

Если в провайдере присутствует определённая роль, вы можете произвести мапинг. Для этого на платформе введите следующую команду:

[contains(resource_access.test.roles, 'foo') && 'bar', contains(resource_access.test.roles, 'fooo') && 'barr']

Результат будет таким:

[ "bar", "barr" ] 

Пример 3

Если нужно к массиву ролей из провайдера добавить свою роль, например, чтобы назначить эту роль абсолютно всем пользователям, то необходимо ввести следующую команду:

[[resource_access.test.roles, 'bar']].map(&[], @)[0]

Результат будет таким:

[ "foo", "fooo", "bar" ]