4

我希望下面的問題是有道理的:IdentityServer3 - 這對於ActiveDirectory的:MembershipReboot/AspNetIdentity/UserService

  • 管理我的用戶的ActiveDirectory。
  • 我通過IdentityServer3對其進行身份驗證。
  • 我通過用戶所在的AD組授權API(充當安全角色)。

我應該如何設置IdentityServer3:

  1. 我必須用我自己的自定義UserService訪問ActiveDirectory中?
  2. 這是否代替MembershipReboot/AspNetIdentity支持(或者我誤解了UserService是什麼)?
  3. 或者我應該使用IdentityServer3中的MembershipReboot/AspNetIdentity包之一,並以某種方式將它們自定義爲映射到ActiveDirectory(如果可以,如何)?

回答

1

似乎沒有「映射」,不應該是從AD到成員資格重新映射或身份驗證或新的身份重新啓動用戶存儲的映射。原因似乎很簡單:mr和aspid或ir都是以持久方式(某種數據庫或存儲庫)存儲用戶信息的方式,這已經在AD中完成。

用戶服務就夠了。它會導致ASP Identity對象被填充,並且中間件按照預期工作,在客戶端調用具有「授權」屬性的「裝飾」後,或者在從OP返回後,正確自動地調用用戶認證和用戶或資源授權(OpenID Connect連接提供程序)或從單獨的授權或資源提供程序中進行安全調用。

回答更新:現在在IdentityServer4中,UserService已被棄用,而是使用IResourceOwnerPasswordValidator。

看到這裏的工作代碼和詳細的解釋,在接受一前一後的答案(投上一票,請) IdentityServer4 register UserService and get users from database in asp.net core

+0

如果可能的話,你可以分享你寫來解決這個問題的代碼。我現在面臨同樣的問題。需要使用AD進行身份驗證,但無法找到更多信息。非常感謝您的幫助。 – Venky

+0

現在在idsrv4中不再有UserService。在這裏看到接受的答案之後的答案,並且(現在把它投票給...)如何去做。完整代碼在那裏。 http://stackoverflow.com/questions/35304038/identityserver4-register-userservice-and-get-users-from-database-in-asp-net-core – pashute