【问题标题】:IdentityServer3 - which for ActiveDirectory: MembershipReboot / AspNetIdentity / UserServiceIdentityServer3 - 对于 ActiveDirectory:MembershipReboot / AspNetIdentity / UserService
【发布时间】:2015-11-05 10:42:28
【问题描述】:

我希望以下问题有意义:

  • 我在 ActiveDirectory 中管理我的用户。
  • 我通过 IdentityServer3 对它们进行身份验证。
  • 我通过用户所在的 AD 组(充当安全角色)授权 API。

我应该如何设置 IdentityServer3:

  1. 我必须使用我自己的自定义 UserService 来访问 ActiveDirectory 吗?
  2. 这是否取代了 MembershipReboot / AspNetIdentity 支持(或者我误解了 UserService 是什么)?
  3. 或者我应该使用 IdentityServer3 中的 MembershipReboot / AspNetIdentity 包之一,并以某种方式自定义它们以映射到 ActiveDirectory(如果是,如何)?

【问题讨论】:

    标签: active-directory asp.net-identity identityserver3 active-directory-group membershipreboot


    【解决方案1】:

    似乎没有“映射”,不应该是从 AD 到会员重启或 aspidentity 或更新的身份重启用户存储的映射。原因似乎很简单:mr 和 aspid 或 ir 都是以持久方式(某种数据库或存储库)存储用户信息的方式,这在 AD 中已经完成。

    用户服务就足够了。在客户端调用被“授权”属性“装饰”后或从 OP 返回后,它会导致 ASP 身份对象被填充,并且中间件按预期工作,正确且自动地调用用户身份验证和用户或资源授权(OpenID-Connect 提供者)或来自单独的授权或资源提供者,在安全调用中。

    答案更新:现在在 IdentityServer4 中,UserService 已被弃用,而您使用 IResourceOwnerPasswordValidator。

    请参阅此处以获取工作代码和详细说明,在接受后的答案中(请投票) IdentityServer4 register UserService and get users from database in asp.net core

    【讨论】:

    • 如果可能的话,您能否分享您为解决此问题而编写的代码。我现在面临同样的问题。需要使用 AD 进行身份验证,但找不到太多信息。非常感谢您的帮助。
    • 现在在 idsrv4 中不再有 UserService。请参阅此处接受的答案之后的答案,(并投票...)以了解现在如何做。那里有完整的代码。 stackoverflow.com/questions/35304038/…
    猜你喜欢
    • 1970-01-01
    • 2017-07-15
    • 1970-01-01
    • 1970-01-01
    • 2017-05-16
    • 1970-01-01
    • 1970-01-01
    • 2019-06-11
    • 2023-03-30
    相关资源
    最近更新 更多