SAML2将AuthMode设置为稍后在应用程序上激活

时间:2019-03-21 07:36:17

标签: saml-2.0 sustainsys-saml2

我正在为我们的应用程序SAML2 SSO使用https://github.com/Sustainsys/Saml2库。我想稍后将AuthMode设置为在应用程序上处于活动状态,其背后的原因不是我们的所有客户端都使用SAML2,因此,如果客户端访问其域,则应将其重定向到其IDP登录页面。

但是,此AuthMode属性仅在Startup.Auth.cs中可用,我无法在应用程序中的某个位置访问它。

通过这种方式,我使用Owin。

反正我可以这样做吗?

1 个答案:

答案 0 :(得分:1)

是的,有可能。保留对Saml2AuthenticationOptions的引用(例如静态属性/字段),然后在运行时进行更改。它将立即生效。

但是,您可能不想走这条路。您已经使cookie中间件处于活动状态,并且Owin管道仅针对一种活动中间件而设计,而不是多个。

因此,相反,将CookieAuthenticationHandler中的LoginPath设置为一个控制器/操作,该操作仅以Saml2身份验证方法作为质询方案返回一个ChallengeResponse。 (如果创建新的应用程序,则ChallengeResponse将包含在asp.net身份模板代码中。)