Identity和IdentityServer的区别及联系
關于Identity和IdentityServer初學的時候可能會有一些疑惑(雖然我也不是很精深吧),但是,這里說一下自己關于這兩者的一些理解,如有錯誤,歡迎指正
?
總體上,
ASP.NET Core Identity提供了一個用來管理和存儲用戶賬戶的框架.
IdentityServer是一個中間件,它可以添加符合OpenID Connect和OAuth2.0的終端(endpoints)到一個任意的ASP.NET Core應用.?
關于Identity
ASP.NET Core Identity?是用來在ASP.NET Core?應用中增加登錄功能的。用戶可以使用存儲在Identity中的登錄信息創建一個賬戶,或者他們可以使用第三方登錄,支持的一些第三方登錄:Facebook,Google,Microsoft Account,Twitter。當然,你可以集成一些國內的,QQ等
Identity可以被配置為使用SQL Server數據庫存儲用戶名,密碼,和其他信息。當然,你也可以使用另一個持久化存儲,例如Azure Table Storage
ASP.NET Core Identity提供了一個用來管理和存儲用戶賬戶的框架,在ASP.NET Core應用中。當你在創建項目時,身份驗證選擇的是Individual User Accounts(個人用戶賬戶),Identity被添加到了你的項目中。Identity默認使用的是Entity Framework Core?數據模型。
關于這個,可以看下這個
關于IdentityServer
下面的表,包含了一些開源的關于認證(authentication)的提供者,其中就包含IdentityServer
上面關于認證的一些開源項目各有特點
下面簡單說下IdentityServer
IdentityServer是用來幫助公司使用.net建立Identity(標識,注意這里不是上面說的ASP.NET Core Identity框架,而是表示一種標識,即識別用戶的), 和access control(權限控制)的,?包括單點登錄(single sign-on),Identity?管理,授權(authorization)和api?安全.?基于成功的開源項目例如IdentityServer, 可以提供了設計方案的靈活性來滿足你的要求.?
IdentityServer是一個中間件,它可以添加符合OpenID Connect和OAuth2.0的終端(endpoints)到一個任意的ASP.NET Core應用.?
典型的,你建立一個應用,這個應用包含一個登錄和登出頁面,并且IdentityServer中間件添加必要的協議到應用中,以便客戶端應用可以使用這些標準的協議和這個協議交流。
?
參考資料:
https://identityserver4.readthedocs.io/en/latest/index.html
https://docs.microsoft.com/en-us/aspnet/core/?view=aspnetcore-2.2
https://docs.microsoft.com/en-us/aspnet/core/security/authentication/community?view=aspnetcore-2.2
https://identityserver.io/
原文地址:https://www.cnblogs.com/Vincent-yuan/p/11030223.html
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總?http://www.csharpkit.com?
總結
以上是生活随笔為你收集整理的Identity和IdentityServer的区别及联系的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Consul初探-集成ocelot
- 下一篇: C#规范整理·集合和Linq