2014-11-10 3 views
2

У меня возникла эта проблема при использовании аутентификации SAML SSO. Я успешно настроил сервер удостоверений WSO2IS 5.0.0, мне также удалось настроить (по крайней мере, надеюсь) вторичное хранилище пользователей. Я использовал реализацию JDBCUserStoreManager. Я установил этот магазин как DOMAIN. Этот магазин пользователей работает хорошо, по крайней мере, я думаю, что это так. Потому что хранение атрибутов пользователя в свои таблицы (USER_ATTRIBUTES) и эти атрибуты читаются администрацией WSO2IS ...WSO2 Identity Server 5.0.0 не возвращает запросы пользователей в SAMLResponse для пользователя из вторичного хранилища пользователей

https://localhost:9443/carbon/userprofile/edit.jsp?username=DOMAIN/demo_jbu&profile=default&fromUserMgt=true  

Пользователи идентифицируются как ДОМЕН \ имя_пользователя поэтому, когда я хочу войти пользователь с этого домена, запрос переходит к моей реализации AUTHENTICATOR, поэтому я могу управлять аутентификацией для пользователей из этого домена.

Странно, что если я использую страницы администрирования WSO2IS, я могу хорошо настроить и прочитать атрибуты пользователей. И если я буду использовать аутентификацию SAML SSO (уже создали сервис-провайдер & исковые отображения) для пользователей из PRIMARY домена, все идет нормально и вызов SP получает все атрибуты - отображается в WSO2IS администрации здесь:

https://localhost:9443/carbon/application/configure-service-provider.jsp  

Если я использую SAML SSO, но я хочу зарегистрировать пользователя из моего DOMAIN, SP ничего не получает.

Я могу переопределить это поведение в DefaultResponseBuilder, я могу помещать в SAMLResponse все, что хочу, но я не чувствую, что этот подход в порядке. Может ли кто-нибудь сказать мне, где искать ошибку? Что может быть неправильным? Где я должен искать проблемы? Я уже пытался отладить его, и кажется, что он (SAML SSO/AUTHENTICATOR) не находит никаких претензий к пользователю DOMAIN.

Заранее спасибо.

Josef

ответ

3

Я думаю, что это ошибка в идентичности сервера 5.0.0. Когда вы используете SSO SAML2, пользователь может войти в Identity Server с именем пользователя с именем домена и именем пользователя без имени домена. В основном bob и foo.com/bob должны работать и возвращать атрибуты пользователя bob от магазина пользователей foo.com. Однако существует проблема с IS 5.0.0, если вторичный пользовательский логин пользователя без имени домена, Identity Server не возвращает пользовательские атрибуты. Но, пожалуйста, попробуйте войти в систему с foo.com/bob, затем он вернет атрибуты пользователя.

Вы можете найти общественность jira. Он содержит источник diff. Это должно быть простое исправление, и вы даже можете скомпилировать источник и добавить исправление на Identity Server.

+0

Hallo Asela, Кажется, что это был случай. Когда мы начали использовать домен/пользователь и добавили патч, как вы заявили выше (jira ...), все начали работать. Большое спасибо, Josef –

+0

@Asela - Я использовал это (http://sureshatt.blogspot.in/2012/11/how-to-read-saml-20-response-with.html) логика, чтобы получить SAMLAssertion, но когда я отправляю ее вперед, она дает мне {"error": "invalid_grant", "error_description": "Предоставлено разрешение на авторизацию недействительно."}, даже я не вижу никаких исключений ... Я включил журналы, я смотрю wso2is-5.0.0/репозиторий/журналы/wso2carbon.log Не могли бы вы помочь как можно скорее? –

+0

Только что проверили, и, похоже, такая же проблема существует с 5.1.0. Исправление jira упоминается не в источнике 5.1.0. Кто-нибудь испытал то же самое или это недостающая конфигурация? – Hos

Смежные вопросы