[ASP.NET 2.0 Security FAQs]如何設定SQL Server或SQL Express資料庫,使其支援Membership、Profiles和Role

來源:互聯網
上載者:User

[ASP.NET 2.0 Security FAQs]目錄

原文連結

翻譯:2005-12-10   by Jackei Lin

ASP.NET 2.0 中的Membership, Profiles 和Role需要把相關資訊儲存到資料來源中. 這幾項特性的預設的provider分別是 SqlMembershipProvider, SqlProfileProvider 和 SqlRoleProvider.

如果你沒有配置使用特別的provider, 你的程式就會使用以上預設的provider. 當你的程式第一次調用某個預設的provider時, ASP.NET會自動在App_Data 目錄下建立一個SQL Express database用於儲存所需的資訊.

如果你想使用特定的SQL Server或SQL Express database server, 你必須配置你的程式以提供provider 所需的調用特定資料庫的資訊. 除此之外你必須配置相關的資料庫.

使用Aspnet_regsql.exe來建立或配置特定的資料庫.例如, 在命令列工具(cmd)裡執行如下的指令:

 aspnet_regsql -S (local) -E -A mpr

-S  指派特定的資料庫伺服器, 在這個例子裡是(local).

-E  使用Windows信任連接串連相關SQL Server伺服器.

-A mpr  添加相關支援,為:m: membership,p: profiles, r: roles.

執行Aspnet_regsql /?,你可以得到所有相關命令的列表.

Aspnet_regsql 配置成功的aspnetdb(或其他)資料庫是使用資料庫角色(database roles)來控制書庫訪問的. 你必須讓運行ASP.NET 程式的帳號能夠訪問aspnetdb資料庫,這樣你的程式才能使用資料庫中的相關資訊. 例如, 在SQL Query Analyzer裡執行以下語句,使Network Service帳號能夠造作相關的資料:

 --為Network Service帳號建立一個SQL Server登陸 sp_grantlogin 'NT AUTHORITY\Network Service'
 --允許帳號訪問membership資料庫 USE aspnetdb GO sp_grantdbaccess 'NT AUTHORITY\Network Service', 'Network Service'
 --把使用者添加到資料角色 USE aspnetdb GO sp_addrolemember 'aspnet_Membership_FullAccess', 'Network Service'

譯者註:aspnet_regsql.exe位於C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 目錄下,它還可以用來設定資料庫以用於儲存session。

其他相關資料:
Configuring ASP.NET 2.0 Application Services to use SQL Server 2000 or SQL Server 2005  by Scott Guthrie
中文:將 ASP.NET 2.0 應用程式服務配置為使用 SQL Server 2000 或 SQL Server 2005

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.