IdentityServer为每个客户端选择UserService

3
我有一个使用ResourceOwner流程的IdentityServer v3,并且我需要配置它以便能够从一个端点授权AspNetIdentityUserStore(第一个UserService)和ActiveDirectory(第二个UserService)中的用户。
第一个微不足道的决定是制作自定义UserService,该服务将组合第一个和第二个用户服务并封装逻辑,但我想知道是否可以根据当前客户端选择注册的UserService的行为?
还是有其他不同的方法可以更好地解决这个问题吗?
1个回答

1
将您的UserService基于客户端进行拆分可能看起来是一个好主意,但引入这种客户端偏见会导致许多问题。这将对您的用户群体造成很大的困惑,因为有效凭据可能无法在另一个客户端的同一登录页面上使用。这也会使身份提供者在未来更难处理,因为每当添加另一个客户端时,用户认证就必须进行修订。
出于认证目的,现在和将来都应该让身份提供者的UserService在不知道客户端的情况下进行操作。负担应该落在客户端身上,以确定身份服务器提供的用户主体是否具有足够的授权。

但是你认为将两个UserServices组合成一个UserService并尝试先通过AD进行用户身份验证,然后再通过Asp.Net Identity进行身份验证,这样做是否明智? - Mitklantekutli

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接