Dot-Net

您如何管理生產中的 asp.net SQL 成員角色/使用者?

  • March 26, 2009

如何在生產機器上設置 asp.net sql 成員角色/成員提供者?我正在嘗試設置 BlogEngine.NET,所有文件都說要使用 Visual Studio 中的 ASP.NET 網站管理工具,但這在生產機器上不可用。我是第一個在非開發機器上使用它的 BlogEngine 使用者嗎?

SQL 伺服器完全與生產框隔離,但我確實在那里安裝了 SQL Management Studio。

編輯:我的意思是,您如何添加新使用者/角色,而不是如何創建表。我已經執行 aspnet_regsql 來創建架構。

EDIT2:MyWSAT 不起作用,因為它還需要數據庫中的初始使用者。我需要一個應用程序,它允許我在成員數據庫中創建新使用者而無需任何身份驗證,只需一個連接字元串。

我通過在應用程序啟動時設置預設超級使用者解決了這個問題。

通過將此添加到 gobal.asax


   void Application_Start(object sender, EventArgs e) 
   {
       // Code that runs on application startup

       // check that the minimal security settings are created
       Security.SetupSecurity();
   }

然後在安全類中:


使用系統;
使用 System.Data;
使用 System.Configuration;
使用 System.Web;
使用 System.Web.Security;
使用 System.Web.UI;
使用 System.Web.UI.HtmlControls;
使用 System.Web.UI.WebControls;
使用 System.Web.UI.WebControls.WebParts;

///
/// 為應用程序訪問創建最小角色和使用者。
///
公共類安全
{
// 應用角色
公共靜態字元串 [] applicationRoles =
{“角色 1”、“角色 2”、“角色 3”、“角色 4”、“角色 5”};
// 超級使用者
私有靜態字元串 superUser = "super";
// 預設密碼,第一次連接時需要修改
私有靜態字元串 superUserPassword = "default";

私人安全()
{
//
// TODO: 在此處添加建構子邏輯
//
}

///
/// 創建最小的成員環境。
///
公共靜態無效設置安全()
{
設置角色();
設置超級使用者();
}

///
/// 檢查角色,創建缺失。
///
公共靜態無效SetupRoles()
{
// 創建角色
對於 (int i = 0; 我
/// 檢查是否創建了超級使用者帳戶。
/// 創建帳戶並將其分配給所有角色。
///
公共靜態無效SetupSuperuser()
{
// 創建超級使用者
MembershipUser 使用者 = Membership.GetUser(superUser);
如果(使用者 == 空)
Membership.CreateUser(superUser, superUserPassword, "maintenance@acorel.com");

// 將超級使用者分配給角色
對於 (int i = 0; 我

一旦有了預設使用者,就可以使用 AspNetWSAT 或其他。

引用自:https://stackoverflow.com/questions/156563