MVC提示查询参数

问题描述 投票:0回答:2

我想为MVC Web应用程序覆盖Azure AD SSO登录。我不想注销其他应用程序,但是出于安全目的需要登录。我正在通过Owin和OIDC一起使用OAuth2.0进行身份验证。

我正在尝试使用提示符= login的查询参数,理论上应该可以解决问题。我发现最近在Core中提供了对此的Github引用,但无法在MVC5.2中跟踪如何做到这一点

是否可以在Application Builder中进行?获取访问代码时,我尝试将.WithExtraQueryParameters ("prompt=login")添加到ConfidentialClientApplicationBuilder。没运气。

如果代码不是现成的,还有其他解决方法吗?

model-view-controller azure-active-directory owin
2个回答
0
投票

您可以使用ForceLogin将参数添加到ForceLogin

ConfidentialClientApplicationBuilder:使应用程序开发人员可以使用户通过服务提示输入凭据,即使不需要这样做。如果获取令牌失败,让用户重新登录,这将很有用。 这是通过将ForceLogin发送给身份提供者来完成的。同样,我们已经看到它在某些注重安全性的应用程序中使用,在这些应用程序中,组织治理要求用户每次访问身份验证程序的特定部分时都重新登录。一个应用程序。

因此,请使用以下代码:

prompt=login

0
投票

修饰符result = await app.AcquireTokenInteractive(scopes) .WithPrompt(Prompt.ForceLogin) .ExecuteAsync(); 将无济于事。您需要改用.WithExtraQueryParameters。请参考.WithPrompt

示例:

article
© www.soinside.com 2019 - 2024. All rights reserved.