我有带有ResourceOwner流的IdentityServer v3,我需要将其配置为能够从一个端点授权来自AspNetIdentityUserStore(第一用户服务)的用户和来自ActiveDirectory(第二用户服务)的用户。
第一个微不足道的决定是制作自定义UserService,它将组成第一和第二用户服务并封装逻辑,但是我想知道是否可以根据当前客户端选择已注册UserService的行为?
或者有更好的方法可以更好地解决问题?
答案 0 :(得分:1)
基于客户端拆分UserService似乎是一个好主意,但引入此客户端偏差会导致许多问题。这会对您的用户群造成很大的混淆,因为有效凭据可能无法在另一个客户端的同一登录页面上运行。它还使得身份提供者将来更难以处理,因为每当添加另一个客户端时,都必须修改用户身份验证。
出于身份验证的目的,您现在和将来都可以在不知道客户端的情况下拥有身份提供商的UserService行为。客户应负担确定身份服务器提供的用户主体是否具有足够的授权。