簡體   English   中英

Identityserver和SQL Server數據庫

[英]Identityserver and SQL server Database

我們正在尋找Identityserver4的全新實現,我通過文檔訪問並在VS2017和sqlserver中的DB上安裝了Project。

使用為機器人ConfigurationData提供的默認遷移腳本以及Operational DAta創建數據庫。 我很困惑,用戶將如何添加客戶端等? 同樣在啟動時,默認的ASPNEtIdentity被添加,但是在數據庫中沒有ApplicationUser表,那么用戶數據將在哪里? 我的要求很簡單-用戶將足以通過其憑據(或可能由第三方應用程序)登錄到應用程序,並且將使用該應用程序或API將直接使用身份服務器進行客戶端憑據范圍的訪問,

請在此告訴我:

  1. 是否應該介紹AspNetIdentity,為什么?
  2. 遷移生成的數據庫中的用戶表和用戶密碼在哪里。
  3. 我們如何將用戶客戶端和資源添加到已創建的數據庫中
  4. 我需要添加“登錄/注銷”頁面嗎?
  5. 在API中,APIResource用於定義資源“ api1”,並且客戶端代碼使用相同的資源來獲取訪問權限,但是此“ api1”在任何與方法的定義/簽名都不使用的地方,那么它會被關聯嗎?

首先,IdentityServer4本身無法處理用戶或其身份驗證-您要么需要使用ASP.Net Identity以及將其連接到IdentityServer4的集成庫,要么自己構建所有這些東西。

所以總結一下:

  1. 是的,您需要使用它或滾動您自己的用戶存儲和身份驗證邏輯
  2. 由ASP.Net Identity提供或自行構建
  3. https://www.identityserver.com/documentation/admin-ui/可能適合您的需求,或者您可以構建自己的工具和/或腳本來這樣做
  4. 是的,盡管快速入門示例提供了良好的基本起點
  5. 默認情況下,不記名令牌中間件將驗證受眾(ApiResource.Name),但我更喜歡使用過濾器(例如[ScopeAuthorize("my.api")] public MyResult ApiAction() { ... }在更精細的控制器或操作級別上強制作用域[ScopeAuthorize("my.api")] public MyResult ApiAction() { ... } )。 此過濾器將檢查是否在ClaimsPrincipal中的一組索賠中定義了指定的范圍。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM