2016-03-07 6 views
2

Я реализую доказательство концепции поставщика услуг для аутентификации SAML/SSO с помощью Kentor.AuthServices. Вариант использования - это приложение в стиле киоска, на котором многочисленные разные пользователи могут проходить аутентификацию один за другим, когда они подписываются на нашу услугу.Правильно ли работает Kentor.AuthServices?

Проблема, с которой я столкнулась, заключается в следующем: после выхода из системы пользователь не аутентифицирован, как ожидалось (User.Identity.IsAuthenticated == false). Но когда следующий пользователь переходит на вход в систему, предыдущий пользователь будет повторно аутентифицирован без необходимости вводить учетные данные. Это ожидаемое поведение? Если да, существует ли способ предотвратить поведение (кроме ручного сброса файлов cookie)?

ответ

3

Что наиболее вероятно происходит, так это то, что вы действительно завершаете локальную сессию на SP. Но когда вы пытаетесь войти в систему снова, Idp по-прежнему имеет активный сеанс и автоматически повторно проверяет его.

Чтобы обойти это, вам нужно использовать Single Logout. У AuthServices есть поддержка для этого с 0.17.0. Чтобы включить его, вам необходимо настроить сертификат службы (необходимо, чтобы протоколируемые сообщения были подписаны). И, конечно же, Idp должен его поддерживать. Проверьте конечные точки выхода в метаданных Idp.

+0

Благодарим за отзыв. Я буду исследовать. –