Служба единого выхода из системы должна быть настроена на поставщике услуг с указанием местоположения, куда вы бы хотели, чтобы SP перенаправлял пользователя после выхода из Identity Provider.
Чтобы проверить, правильно ли настроен этот параметр, вы можете распечатать метаданные для вашего SP. Как вы можете видеть из метаданных ниже, мой SP был настроен с SingleLogoutService (именно здесь запросы на выход и ответы отправляются из IdP).
<SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="http://localhost:3000/auth/saml-logout-callback"/>
SingleLogoutService имеет местоположение "http://localhost:3000/auth/saml-logout-callback"", что означает, что SP отправит пользователя на / auth / saml-logout-callback при получении ответа на выход из системы. Конечно, ваш SP должен быть настроен для отправки пользователь с другой конечной точкой в dev, чем в рабочей.
Настроить это было довольно просто для меня, потому что я использую библиотеку Passport SAML для настройки параметров SP. Таким образом, если вы используете библиотеку для связи с SAML, возможно, есть несколько хороших вариантов для настройки местоположения одиночного выхода SP. В паспорте вы указываете URL выхода из системы в качестве параметра при объявлении стратегии SAML.
Я написал еще немного об общем рабочем процессе для выхода: https://spin.atomicobject.com/2019/04/06/saml-2-0-flow/