91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

IdentityServer4中OpenID Connect如何添加用戶認證

發布時間:2021-12-30 09:26:24 來源:億速云 閱讀:158 作者:柒染 欄目:大數據

本篇文章為大家展示了IdentityServer4中OpenID Connect如何添加用戶認證,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

  我們希望使用OpenID Connect這種方式來驗證我們的MVC程序(需要有IdentityServer4),我們首先需要干什么呢?那就是搞一個UI,這樣非常美觀既可以看到我們的身份驗證效果,那么IdentityServer官方已經給我們提供了一套UI了,我們從哪里可以獲取呢?

  可以通過這個地址就行克隆安裝到本地并附加到你的MVC程序中,地址。當然我們可以根據PowerShell 進行遠程拉取(以下命令在項目根目錄進行Code)

在Windows中我們的命令如下:

iex((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/IdentityServer/IdentityServer4.Quickstart.UI/master/getmaster.ps1'))

或者在macOS或Linux上使用bash one-line:

\curl -L https://raw.githubusercontent.com/IdentityServer/IdentityServer4.Quickstart.UI/master/getmaster.sh | bash

 下圖所示是我在Windows Powershell中進行遠程拉取的。

IdentityServer4中OpenID Connect如何添加用戶認證

安裝完項目中會添加一個Quickstart的這么一個文件夾,其中有IdentityServer給我們寫好的代碼,有控制器,模型,視圖,靜態文件等等。

IdentityServer4中OpenID Connect如何添加用戶認證

當然還需要在Startup類中配置好你的MVC,這需要在ConfigureService里面將MVC添加到DI中并在Configure方法中將MVC中間件添加到管道上。

IdentityServer4中OpenID Connect如何添加用戶認證

  首先我們通過 AddAuthentication 將身份驗證服務添加到我們的DI中。其中參數有三個,第一個 DefaultScheme 它呢可以設置我們通過Cookies進行保存登錄信息。那么后面是我們的 DefaultChallengeScheme ,它的參數是 oidc ,也就是因為當我們需要用戶登錄時,我們將使用OpenID Connect協議。然后 AddCookie ,我們使用添加可處理cookie的處理程序。最后, AddOpenIdConnect 用于配置執行OpenID Connect協議的處理程序。這 Authority 表明我們信任IdentityServer。然后我們通過 ClientId 。識別這個客戶。  SaveTokens 用于在cookie中保留來自IdentityServer的令牌,同時我還關閉了JWT聲明映射,這樣會讓我們的應用程序流暢地通過: JwtSecurityTokenHandler.DefaultInboundClaimTypeMap.Clear(); 。

  最后,我們需要讓我們的認證請求達到響應,應在管道中的MVC之前添加認證中間件。

IdentityServer4中OpenID Connect如何添加用戶認證

為了觸發驗證,我們在 HomeController 中添加一個特性 [Authorize] 。還要修改該Action的View以顯示用戶的信息,例如:

IdentityServer4中OpenID Connect如何添加用戶認證

如果你現在啟動的話,會出現內部錯誤,因為MVC客戶端在認證平臺服務器中并沒有注冊。

現在我們回到我們的認證服務中心,在Config.cs中添加如下代碼(范圍代表您想要保護的內容以及客戶想要訪問的內容。與OAuth相比,OIDC中的范圍不代表API,而是代表用戶ID,名稱或電子郵件地址等身份數據。)

IdentityServer4中OpenID Connect如何添加用戶認證

然后,您需要將這些身份資源添加到Startup.cs中的IdentityServer配置中。使用 AddInMemoryIdentityResources 擴展方法調用 AddIdentityServer() 。

IdentityServer4中OpenID Connect如何添加用戶認證

  最后一步是將MVC客戶端的配置添加到IdentityServer。基于OpenID Connect的客戶端與我們目前添加的OAuth 2.0客戶端非常相似。但由于OIDC中的流程始終是交互式的,因此我們需要在配置中添加一些重定向URL。將以下內容添加到您的客戶端配置:

IdentityServer4中OpenID Connect如何添加用戶認證

就這樣我們啟動項目,現在啟動項目也就沒有什么問題了。

IdentityServer4中OpenID Connect如何添加用戶認證

 其中我們用到了IdentityServer的Quickstart,雖說已經寫好了很多相關的控制器等等,這個Ui但是還是自己寫個好,或者改造!

上述內容就是IdentityServer4中OpenID Connect如何添加用戶認證,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

屏边| 鄂托克前旗| 西和县| 巴东县| 武鸣县| 林州市| 喀喇沁旗| 游戏| 察隅县| 上犹县| 沙湾县| 石城县| 玉溪市| 孝感市| 富平县| 朔州市| 东莞市| 屏山县| 淳安县| 松阳县| 河南省| 龙山县| 万盛区| 梓潼县| 扎囊县| 旬邑县| 绿春县| 沙洋县| 嫩江县| 顺平县| 嵩明县| 内黄县| 梅河口市| 文化| 玉林市| 稷山县| 米林县| 抚远县| 夏河县| 桐城市| 东源县|