2012-01-20 172 views
5

我正在使用VS2005 .NET 2.0 C#。将ASP.NET网站管理工具功能带到网页

我目前在ASP.NET网站管理工具构建管理我的用户角色,管理用户等,以及使用ActiveDirectory的认证

我有2个问题。


首先,有什么样的代码,可以参考我在网络上,以实现ASP.NET网站管理工具的作用,编辑到我的网页?该GUI不必在那里,我只需要用户名和我的网页上的角色复选框。

enter image description here 工作代码示例可以理解


其次,我已经收到一个错误,当我试图创建一个新的用户我已经改变了我的身份验证从网络Windows后,它使用ActiveDirectory。下面是错误:

enter image description here

是因为AD不允许新用户创建或者是不是因为我在connectionUsernameconnectionPassword在web.config中提供的帐户没有足够的特权?


编辑:

对于我第一的问题,我有它加载从数据库中的用户角色的按钮。

enter image description here

下面是方法:

protected void loadUser_Click(object sender, EventArgs e) 
{ 
    AdminCb.Checked = false; 
    UserCb.Checked = false; 
    SqlConnection conn = new SqlConnection("Data Source=TP;Initial Catalog=MP;User ID=user;Password=password"); 
    string sql = "SELECT [User Type] FROM [UserRoles] where [Name][email protected]"; 
    SqlCommand cmd = new SqlCommand(sql, conn); 
    cmd.Parameters.Add("@Name", SqlDbType.VarChar, 50).Value = UserNameList.Text; 
    conn.Open(); 
    Object result = cmd.ExecuteScalar(); 
    conn.Close(); 

    if (result != null) 
    { 
     string usertype = result.ToString(); 
     if (usertype == "Super User") 
     { 
      AdminCb.Checked = true; 
     } 
     if (usertype == "Normal User") 
     { 
      UserCb.Checked = true; 
     } 

    } 
} 

是否有可能对我来说,从ActiveDirectory中检索用户列表,并实现它类似于上面我的方法?

回答

3

关于你提到的第一个问题,网站管理工具是一个简单的Web界面,在成员API的顶部坐镇。换句话说,如果您点击网络管理工具上的“添加新角色”,则基本上会调用Roles.CreateRole()

您想如何设计您的网络界面取决于您。但要利用网站管理工具的完整功能,您需要在System.Web.Security命名空间中实现许多类。

+0

感谢您对该工具的结构细分。我可否知道是否可以调用'角色。CreateRole()'方法以及其他任何方法,例如从我的* .asp *网页上的特定角色撤消用户并将其分配给button_click? – gymcode

+0

@RUiHAO您是使用ASP.NET还是传统的ASP?我只能代表ASP.NET发言,但在那种情况下是的。当您调用静态的'Roles.CreateRole()'方法时,您的应用程序将使用* web.config *文件中的'roleManager'来访问底层成员数据存储(即数据库)以添加角色。 – 2012-01-20 02:56:20

+0

我正在使用ASP.NET。网上有没有提供该工具使用的方法列表的指南? – gymcode