Вызов проверки подлинности HttpRequest.GetOwinContext принудительно перенаправляет на вход

Похоже, что всякий раз, когда этот код выполняется, он принудительно перенаправляет пользователя на страницу входа:

Я попытался добавить эту строку перед ней на основе некоторых комментариев, которые я видел в другой ветке, но это не сработало:HttpContext.Current.Response.SuppressFormsAuthenticationRedirect = true;

Я также попытался установить это в параметрах OpenIDConnectAuthenticationNotifications, но он возвращает ошибку «login_required».notification.ProtocolMessage.SetParameter("prompt", "none");

Вариант использования: когда пользователь ранее вошел в другое приложение, которое использовало наш SSO (приложение A), а затем переходит к другому приложению (приложение B), приложение B имеет целевую страницу, которая не требует от пользователя входа в систему. Тем не менее, целевая страница приложения B имеет значок в верхней части страницы, показывающий, вошел ли пользователь в систему или нет, и предоставляет им возможность войти в систему или просмотреть свой профиль (если они вошли в систему). Таким образом, целевая страница должна знать, вошел ли пользователь в систему или нет, сделав вызов, НО, если они не вошли в систему, она не должна перенаправлять их на страницу входа после выполнения вызова.

Есть ли способ предотвратить это принудительное перенаправление при использовании следующего? Я чувствую, что я на правильном пути с prompt=none, я просто не знаю, как и где обрабатывать ошибку.request.GetOwinContext().Authentication.Challenge("OpenIdConnect");

Спасибо!

0 ответов

Другие вопросы по тегам