Как OKTA использует SCIM для разных типов пользователей?

Я реализую сервер SCIM для интеграции OKTA с моим приложением. В моем приложении у меня есть два разных типа пользователей. Как лучше всего справиться с этим в OKTA?

Изучив RFC основной схемы SCIM v2, я думаю, что есть несколько возможностей:

  • Используйте «группы»
  • Используйте «роли»
  • Используйте «права»

Какой из них (если есть) является лучшим способом реализации этой функции? Какие функции поддерживает OKTA? И как вы настраиваете их в OKTA?


person Lee Sanderson    schedule 04.10.2017    source источник
comment
Мое требование также такое же, как ваше. Хотел узнать, как вы решили свою проблему? Я не вижу никаких библиотек, предоставляемых весенней загрузкой для SCIM. Итак, должен ли я просто рассматривать это как реализацию REST API самостоятельно?   -  person gbhati    schedule 25.05.2020


Ответы (1)


Okta поддерживает инициализацию API SCIM 1.1 и SCIM 2.0.

SCIM 2.0 реализует OAuth 2.0 для управления доступом. Окта поддерживает:

  • Процесс предоставления кода авторизации OAuth 2.0
  • Базовая аутентификация
  • Пользовательский HTTP-заголовок

Какой из них (если есть) является лучшим способом реализации этой функции?

--> Используйте библиотеку SCIM, например SDK SCIM 2 для Java

Какие функции поддерживаются OKTA?

  • Создать пользователей
  • Чтение пользователей и групп
  • Обновить пользователей
  • Удаление (деактивация) пользователей
  • Синхронизировать пароль

И как вы настраиваете их в OKTA? --> Пожалуйста, уточните, что такое «эти»?

Как вы можете использовать объекты User/Group для реализации нескольких пользовательских «типов»? Различные типы пользователей — это просто разные ресурсы SCIM.

Вы можете различать пользователей по членству в группе или областям действия OAUth 2.0.

person jwilleke    schedule 04.10.2017
comment
Чтобы было ясно, моя проблема связана не с протоколом SCIM или поддерживаемой версией, а с тем, какие функции объектов «Пользователь/Группа» я могу использовать для реализации нескольких типов пользователей. - person Lee Sanderson; 04.10.2017
comment
Я знаю, что могу определять новые типы ресурсов (так же, как корпоративный пользователь является расширением пользователя). Но если предположить, что OKTA является главным репозиторием в этом сценарии, мое приложение не будет создавать пользователей. Вместо этого OKTA создаст пользователей и отправит их в мое приложение. Как в этом случае мне сопоставить пользователей OKTA с пользователями моего приложения? В частности, как мне узнать, какой тип пользователя создать для данного пользователя OKTA? - person Lee Sanderson; 05.10.2017
comment
Честно говоря, я теряюсь в том, что вы хотите достичь. - person jwilleke; 05.10.2017
comment
Вот простой пример: в моем приложении есть два типа учетных записей пользователей, которые называются Consumers и Supervisors. Теперь рассмотрим следующее: 1) администратор с помощью админ-портала OKTA создает нового пользователя. 2) новый пользователь отправляется в мое приложение через конечную точку SCIM Create User. 3) При получении пользователя я должен создать потребителя или супервизора? - person Lee Sanderson; 05.10.2017