Базовая аутентификация WSO2 возвращает ошибку
Я пытаюсь использовать приложение для проверки подлинности, которое поставляется с WSO2, в качестве новой единственной точки входа для входа в старое приложение. Для тестирования я только что сделал страницу, которая перенаправляет на этот URL
Страница входа в систему выглядит, как и ожидалось, но как только я установлю имя пользователя и пароль, появится следующее сообщение:
Ошибка аутентификации! Внимание: что-то пошло не так во время процесса аутентификации. Пожалуйста, попробуйте войти снова.
Видя вывод в консоли в режиме отладки, это то, что показано
... Многие из той же ошибки говорят, что контекст аутентификации имеет значение null [2017-01-06 15:40:08,836] DEBUG {org.wso2.carbon.identity.application.authentication.framework.util.FrameworkUtils} - контекст аутентификации null [2017-01-06 15:40:08,836] DEBUG {org.wso2.carbon.identity.application.authentication.framework.util.FrameworkUtils} - контекст аутентификации равен null [2017-01-06 15:40:08,836] DEBUG {org.wso2.carbon.identity.application.authentication.framework.util.FrameworkUtils} - контекст проверки подлинности равен нулю [2017-01-06 15:40:08,837] DEBUG {org.wso2.carbon.identity.application.authentication.framework.handler.request.impl.DefaultRequestCoordinator} - Ключ данных сеанса: 22451696 [2017-01-06 15:40:08,837] ОШИБКА {org.wso2.carbon.identity.application.authentication.framework.handler.request.impl.DefaultRequestCoordinator} - контекст не существует. Вероятно, из-за недействительного кэша
Я думаю, что я делаю что-то не так, возможно, отправлено недостаточно параметров, или они неправильные, пользователь и пароль верны, потому что я могу войти в сам углерод с ним, и он также является действительным пользователем для тестирование SP.
Конфигурация SP описана:
Основная информация
Название поставщика услуг: Test-App
Конфигурация претензии
Использовать локальный URI диалекта претензии Subject Subject http://wso2.org/claims/username
Роль / Разрешение Конфигурация Разрешения AdminTest Сопоставление ролей AdminTest->Admin
Конфигурация входящей аутентификации
SAML2 Web SSO Конфигурация эмитента: My-Issuer
URL получателя утверждения: https: //localhost/Test/main.asp URL получателя подтверждения по умолчанию: https: //localhost/Test/main.asp Формат NameID: urn:oasis:names:tc:SAML:1.1:nameid-format: Псевдоним сертификата emailAddress: wso2carbon Алгоритм подписи ответов: ...#rsa-sha1 Алгоритм дайджеста ответов: ...#sha1
Проверенные значения Включить подпись ответа Включить однократный выход из системы Включить профиль атрибутов Включить атрибуты в ответ Всегда включать инициированный IdP SSO Включить SLO инициированный IdP
Другие в пустых OAuth, OpenID, и т. Д. (Дайте мне знать, если это, возможно, проблема, поэтому должны быть заполнены.
Конфигурация локальной и исходящей аутентификации
Тип аутентификации: я пробовал с Default и Local Authentication = basic и password-reset-принудительно
Это проверено:
- Подтвердить идентичность, используя сопоставленный локальный субъектный идентификатор
- Использовать домен арендатора в локальном идентификаторе субъекта.
Использовать домен магазина пользователя в локальном идентификаторе темы
Запрос конфигурации пути аутентификации basic-auth
Конфигурация входящей инициализации Конфигурация SCIM PRIMARY Dumb Mode не включен
Остальное оставлено пустым
Я потратил много дней, отслеживая эту проблему, но не получил ответов или для более старых версий.
Я тестировал с JDK 7 и 8 (последний из них) Я работаю с WSO2 IS 5.2.0. Кто-то может привести меня к решению использовать это приложение в качестве единственной точки входа для моих SP? Идея заключается в том, чтобы отправить ответ SAML2 на страницу на стороне SP, которая считывает информацию и управляет частью авторизации.
Заранее спасибо.
1 ответ
Вы настроили сценарий единого входа SAML. Поэтому ваш SP должен вызвать конечную точку единого входа SAML WSO2 Identity Server с действительным запросом SAMLRequest. Это https: // имя хоста: порт / samlsso.
AuthenticationEndpoint - это просто промежуточное приложение. Конечная точка единого входа SAML - это та, которая должна перенаправить пользователя в AuthenticationEndpoint после первой обработки SAMLRequest. Вы не должны называть это напрямую.
Обратитесь к этому, чтобы узнать, как запустить пример приложения SAML SSO с WSO2 IS. Во время этого вы можете отслеживать поток HTTP-запросов / ответов с помощью такого инструмента, как SSOTracer for Firefox, и понимать, как работает связь.
Аналогично потоку единого входа SAML, если вы используете какой-либо другой протокол аутентификации, вы сначала должны вызвать конкретную конечную точку протокола. Например, если вы используете OAuth2 или OpenIDConnect, вам следует вызвать конечную точку /oauth2. Никогда / проверка подлинности конечной точки напрямую.