使用 OWIN 无需单击按钮即可重定向到外部身份验证提供程序
Redirect to external authentication provider without button click using OWIN
背景:我公司最近设立了一个身份提供者 (IdP)。我正在使用 Kentor AuthServices 库、OWIN 和 ASP.NET Identity 来允许用户通过此 IdP 登录网站。 这有效。
现在用户请求我们网站上的一个页面,他们被重定向到登录页面,那里有一个通过我们的 IdP 登录的按钮。他们点击它,登录,然后被重定向回来。这就像一个标准的 VS2015 ASP.NET Web 应用程序项目,具有外部(例如,Twitter、Facebook)身份验证提供程序 - 只是在 /App_Start/Startup.Auth.cs 中为我公司的 IdP 添加了一些自定义代码。
由于我们只提供一个登录提供程序,并且整个站点都需要登录(登录页面除外),因此我想简单地将用户重定向到我们的 IdP,而无需中间登录页面和手动按钮点击。是否有我可以调用的方法或我可以通过编程方式制作的 POST/redirect 来模拟用户单击登录按钮时发生的情况?
不幸的是,我是 OWIN 和 ASP.NET Identity 的新手。
- Google 让我失望
- 调试和断点无法捕捉重定向到提供商的工作方式
它应该像用硬编码 HttpContext.GetOwinContext().Authentication.Challenge("MyIdpAuthType");
替换将显示登录按钮的登录控制器一样简单
背景:我公司最近设立了一个身份提供者 (IdP)。我正在使用 Kentor AuthServices 库、OWIN 和 ASP.NET Identity 来允许用户通过此 IdP 登录网站。 这有效。
现在用户请求我们网站上的一个页面,他们被重定向到登录页面,那里有一个通过我们的 IdP 登录的按钮。他们点击它,登录,然后被重定向回来。这就像一个标准的 VS2015 ASP.NET Web 应用程序项目,具有外部(例如,Twitter、Facebook)身份验证提供程序 - 只是在 /App_Start/Startup.Auth.cs 中为我公司的 IdP 添加了一些自定义代码。
由于我们只提供一个登录提供程序,并且整个站点都需要登录(登录页面除外),因此我想简单地将用户重定向到我们的 IdP,而无需中间登录页面和手动按钮点击。是否有我可以调用的方法或我可以通过编程方式制作的 POST/redirect 来模拟用户单击登录按钮时发生的情况?
不幸的是,我是 OWIN 和 ASP.NET Identity 的新手。
- Google 让我失望
- 调试和断点无法捕捉重定向到提供商的工作方式
它应该像用硬编码 HttpContext.GetOwinContext().Authentication.Challenge("MyIdpAuthType");
替换将显示登录按钮的登录控制器一样简单