У нас есть заказчик, который недавно развернул ADFS 3.0 на сервере 2K12 R2 в качестве IDP для нашего продукта SaaS (мы являемся поставщиком услуг и используем SimpleSAMLPHP). Этот клиент - наш первый клиент ADFS 3.0, но у нас много довольных клиентов 2.0. Этот клиент использует сквозную аутентификацию с IE в своем домене, но ему нужна аутентификация на основе форм вне домена - ADFS 3.0 отлично подходит для этого. Однако мы наткнулись на загвоздку ...
Если они войдут в наше приложение второй раз в том же контексте браузера, что и IE, они получат HTTP 400 от своего сервера ADFS перед отправкой обратно нам.
Еще немного цвета ... У нас есть кнопка выхода в нашем приложении, которая убивает сеанс пользователя в нашем приложении, но не завершает их сеанс с помощью ADFS (но на самом деле, как вы можете завершить его с помощью сквозного доступа и IE, ваша личность - это ваша учетные данные домена). ЕСЛИ они возвращаются в наше приложение после выхода, мы отправляем их обратно их IDP для аутентификации. Обычно они просто отправляются обратно аутентифицированными, и все довольны.
Пара фактов:
Еще интереснее:
Служба поддержки Microsoft:
По сути, с моей точки зрения, как только мы вошли в систему, сервер ADFS выдает 400 каждый раз, когда мы когда-либо пытаемся поговорить с ним снова.
Любые идеи? Заранее спасибо!
Какой у вас URL SLO? Я вижу, что многие люди SAML пытаются выйти из системы с помощью AD FS, используя запрос на https://sts.contoso.com/adfs/ls/?wa=wsignout1.0
. Это не способ выхода из приложения SAML. Это WSFederation.
Вам необходимо отправить правильно сконструированный запрос samp: logout на пассивную конечную точку / adfs / ls.