Мы хотим использовать FIWARE IdM, как Keystone, так и Horizon. В частности во время регистрации мы хотимОшибка в программном обеспечении KeyRock SCIM API: _check_allowed_to_get_and_assign() получил неожиданный аргумент ключевого слова 'userName'
- создать пользователя
- добавить пользователя в организации
- авторизовать пользователя для приложения
Мы установили Keystone и горизонт с использованием новейших Изображение докеры KeyRock на концентраторе докера (https://hub.docker.com/r/fiware/idm/).
Поскольку KeyRock веб-интерфейс создает облачные организации, пользователи сообщества в регионах, как Испания и т.д. я решил попробовать использовать API SCIM для создания и авторизации пользователей:
Примечание: Документы, API SCIM (http://docs.keyrock.apiary.io/#reference/scim-2.0) подразумевают, что вызовы SCIM находятся на порту сервера KeyRock, однако они доступны на порту сервера Keystone. Документация SCIM будет понятнее, если упомянутый http://[keystone сервер]/v3/OS-SCIM/v2/Users/вместо http://keyrock/v3/OS-SCIM/v2/Users/
Допустим, у нас есть приложение (SCIM потребителей) с application_id = app1. Это приложение создается с использованием интерфейса Horizon или с использованием
POST /v3/OS-OAUTH2/consumers
звонок. Я не знаю разницы между двумя способами создания приложения, хотя я еще не пробовал последнего. Это одноразовая операция, поэтому мы использовали веб-интерфейс для создания приложения и связанной с ним роли.
поэтому у нас есть роль для приложения = role1
и создает пользователь с помощью SCIM
POST /v3/OS-SCIM/v2/Users/
, который дает user_id = user1
Когда я пытаюсь разрешить его для нашего приложения с
PUT /v3/OS-ROLES/users/user1/applications/app1/roles/role1
Я получаю следующее сообщение об ошибке:
{
"error": {
"message": "_check_allowed_to_get_and_assign() got an unexpected keyword argument 'userName'",
"code": 400,
"title": "Bad Request"
}
}
Следующим шагом будет получить владелец ресурса маркер через KeyRock используя
POST [KeyStone server]/oauth2/token
Но это спорный вопрос, из-за ошибки выше.
Вход в пользовательский интерфейс KeyRock с помощью user1 дает ошибку: «У вас нет прав для каких-либо проектов». Я предполагаю, что это связано с тем, что user1 не разрешен для организации. user1 невидим для других пользователей или администратора в пользовательском интерфейсе KeyRock, поэтому я не могу назначить необходимые авторизации.
Любые идеи кто-нибудь? Какие роли у пользователя1 еще нужно иметь и как их назначить, чтобы KeyRock был удовлетворен?
Я Робин, мы все еще работаем над этим, чтобы предоставить вам решение. –
Прошел месяц с моего вопроса. Любые обновления или сведения об обходных методах? – Robin
Теперь прошло два месяца, и мы по-прежнему не в состоянии программно создать пользователя, использующего API SCIM. Кто-нибудь работает над этим? Должны ли мы отказаться от API SCIM? – Robin