在我的应用程序中,外部组件在应用程序启动期间注册了AuthenticationMiddleware<TOptions>
中间件,特别是OpenIdConnectAuthenticationMiddleware
实例。我想使用所有身份验证中间件上可用的公共Options
属性来更改此实例的配置,稍后在应用程序启动后的某一时刻进行。这可能吗?
我无法更改此中间件的启动过程,也无法在其中进行配置(尽管我可以添加自己的中间件)。我想在创建中间件实例之后以某种方式访问中间件实例,尽管我还没有找到实现此目的的方法,但是可能通过OwinContext
访问中间件对象。
详细信息:
我想通过以下方式更改OpenIdConnectAuthenticationMiddleware
的选项:
OpenIdConnectAuthenticationMiddleware middleware = ...;
middleware.Options.TokenValidationParameters.ValidIssuers = new[] { "https://sts.windows.net/some-guid/" };
这将常见的Microsoft Azure Active Directory租户添加为有效问题,从而允许站点上具有Microsoft ID的公共SSO。