首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >支持使用Identity Server对不同租户进行不同的身份验证

支持使用Identity Server对不同租户进行不同的身份验证
EN

Stack Overflow用户
提问于 2018-04-20 17:18:14
回答 1查看 515关注 0票数 1

我使用的是带有ASP.NET Core2的IdentityServer4,我使用的是多租户的Saaskit多租户。随着Core2的最新变化,Configure():AddXYZ身份验证已经被ConfigureService():AddXYZ取代。

ConfigureService只运行一次,而不是每个租户。因此,所有租户都需要支持相同的身份验证。比如Cookie和Google。(我们可以通过使用IConfigureNamedOptions接口实现一个类,为每个租户配置单独的身份验证。

但是,如何才能让一个租户使用Google身份验证,而另一个租户使用Microsoft身份验证呢?我需要为每个租户注册身份验证中间件。在ASP.net核心1中,这是可能的,因为我们在UsePerTenant方法内部注册了身份验证。但Asp.net酷睿2并非如此。

期待您的帮助!

EN

回答 1

Stack Overflow用户

发布于 2018-04-20 19:21:49

您可以完全控制最终用户的登录流程,因此,一旦您知道他们是哪个租户,就可以调用您喜欢的任何方案。您目前如何解析租户?

(非常简化的) psuedo MVC代码可能如下所示:

代码语言:javascript
复制
var tenantConfig = resolveTenantConfig(Request); 
return Challenge(tenantConfig.Scheme);

长话短说,您不必将中间件连接起来以实现自动化,如果您愿意,可以在MVC框架中编写自己的决策逻辑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49938215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档