2016年5月9日 星期一

[研究] ASP.NET Membership 與 ASP.NET Identity 驗證授權機制,AspNetUsers 與 aspnet_users

[研究] ASP.NET Membership 與 ASP.NET Identity 驗證授權機制,AspNetUsers 與 aspnet_users

2016-05-09

xxx

ASP.NET Membership (成員資格) 驗證授權機制

ASP.NET Membership (成員資格) 驗證授權機制 是 .NET 2.0 開始引入,使用 aspnet_regsql.exe 建立。

切換到下面目錄

C:\WINDOWS\Microsoft.NET\Framework\<versionNumber>\aspnet_regsql.exe

C:\WINDOWS\Microsoft.NET\Framework64\<versionNumber>\aspnet_regsql.exe

執行下列命令會在執行 SQL Server 的本機電腦上安裝成員資格和角色管理的資料庫項目。

aspnet_regsql.exe -E -S localhost -A mr

在安裝 Windows Server 2012 R2 + Visual Studio 2015 with Update 2 + Azure SDK 2.9 電腦上可找到下面幾個



 C:\Windows\Microsoft.NET\Framework\v2.0.50727 的目錄
2013/08/17  上午 08:06           106,496 aspnet_regsql.exe
               1 個檔案         106,496 位元組

 C:\Windows\Microsoft.NET\Framework\v4.0.30319 的目錄
2013/08/10  上午 08:52           127,584 aspnet_regsql.exe
               1 個檔案         127,584 位元組

C:\Windows\Microsoft.NET\Framework64\v2.0.50727 的目錄
2013/08/17  上午 08:06           102,400 aspnet_regsql.exe
               1 個檔案         102,400 位元組

C:\Windows\Microsoft.NET\Framework64\v4.0.30319 的目錄
2013/08/10  上午 08:39           127,072 aspnet_regsql.exe
               1 個檔案         127,072 位元組



C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regsql.exe -E -S localhos
t -A mr
Microsoft (R) ASP.NET SQL Registration Tool 版本 4.0.30319.33440
在 SQL Server 上安裝和解除安裝 ASP.NET 功能的管理公用程式。
Copyright (C) Microsoft Corporation. 著作權所有,並保留一切權利。


開始加入下列功能:
Membership
RoleManager

.........

已經完成。






**********






C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regsql.exe -E -ssadd -sst
ype p
Microsoft (R) ASP.NET SQL Registration Tool 版本 4.0.30319.33440
在 SQL Server 上安裝和解除安裝 ASP.NET 功能的管理公用程式。
Copyright (C) Microsoft Corporation. 著作權所有,並保留一切權利。


開始加入工作階段狀態。

........

已經完成。

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>





實際測試,不管 x86 或 x64,不管 .NET v2 或 v4,aspnet_regsql.exe 建立的資料表似乎是相同的。



********************************************************************************

ASP.NET Identity (身分) 驗證授權機制

ASP.NET Identity (身分) 驗證授權機制 是 Visual Studio 2013 和  .NET 4.5 開始引入。

使用ASP.NET Identity的好處如下:

它是以OWIN 為基礎,可以在所有ASP.NET Framework中使用,包含 ASP.NET MVC、 Web Forms、Web Pages、Web API,與SignalR等類型的應用程式,而且可以用在網站、手機…或混合式的系統。
可由程式設計師完全掌控使用者設定檔(User Profile)資訊,以及資料庫的結構描述資訊(Schema),資料庫並不綁死於使用微軟的SQL Server。
預設相關的會員資料是儲存在關聯式資料庫,使用Entity Framework Code First實作資料保存細節,只要自行實作ASP.NET Identity資料提供者(ASP.NET Identity providers )也很容易可以改用其它方式儲存。
很容易整合使用其它社群網站帳號做登入,例如使用微軟帳號、Facebook、Twitter與Google…等等。

在一開始建立方案的時候,預設的使用者帳戶機制為 ASP.NET Identitty,開發的程式第一次執行時候,就會建立相關的資料表(table)

AspNetRoles
AspNetUserClaims
AspNetUserLogins
AspNetUserRoles
AspNetUsers

也會建立下面 檢視表(view)
vw_aspnet_Applications
vw_aspnet_MembershipUsers
vw_aspnet_Profiles
vw_aspnet_Roles
vw_aspnet_Users
vw_aspnet_UsersInRoles
vw_aspnet_WebPartState_Paths
vw_aspnet_WebPartState_Shared
vw_aspnet_WebPartState_User

(完)

相關參考

ASP.NET Identity 簡介
http://tech.itdadao.com/t122442p1

ASP.NET Identity簡介
http://blogs.uuu.com.tw/Articles/post/2014/03/12/ASPNET-Identity%E7%B0%A1%E4%BB%8B.aspx

ASP.NET Identity簡介
http://blogs.uuu.com.tw/Articles/post/2014/03/12/ASPNET-Identity%E7%B0%A1%E4%BB%8B.aspx

ASP.NET專題實務 教學影片 入門實戰課程 -- MIS2000Lab.
[會員登入] ASP.NET Identity for Web Form,您一定要看
https://dotblogs.com.tw/mis2000lab/2014/12/09/aspnet_identity_for_web_form_20141209

Adding ASP.NET Identity to an Empty or Existing Web Forms Project
http://www.asp.net/identity/overview/getting-started/adding-aspnet-identity-to-an-empty-or-existing-web-forms-project

[研究] Visual Studio 2015 的「ASP.NET 4.6.1 範本」的「變更驗證」
http://shaurong.blogspot.com/2016/05/visual-studio-2015-aspnet-461.html

ASP.NET SQL Server 註冊工具 (Aspnet_regsql.exe)
https://msdn.microsoft.com/zh-tw/library/ms229862(v=vs.100).aspx

建立 SQL Server 的應用程式服務資料庫
https://msdn.microsoft.com/zh-tw/library/x28wfk74(v=vs.100).aspx

dbo.aspnet_users和dbo.aspnetusers之間的差異
http://www.ophome.cn/question/68179

ASP.NET Identity 身分驗證機制
https://dotblogs.com.tw/brooke/2014/08/01/146135

Introducing ASP.NET Identity – A membership system for ASP.NET applications
http://go.microsoft.com/fwlink/?LinkId=301889

深入瞭解
http://www.asp.net/visual-studio/overview/2013/creating-web-projects-in-visual-studio#auth

.NET Web Development and Tools Blog
https://blogs.msdn.microsoft.com/webdev/?m=20128

Account Confirmation and Password Recovery with ASP.NET Identity (C#)
http://www.asp.net/identity/overview/features-api/account-confirmation-and-password-recovery-with-aspnet-identity

沒有留言:

張貼留言