将ASP.NET网站管理工具功能引入网页

时间:2012-01-20 02:46:51

标签: c# asp.net .net active-directory

我正在使用VS2005 .NET 2.0 C#。

我目前通过ASP.NET网站管理工具中的内置管理用户角色,管理用户等,以及使用ActiveDirectory身份验证

我有两个问题。


首先,是否有任何示例代码可以在网上引用,以便在我的网页上实现ASP.NET网站管理工具的角色编辑? GUI不需要存在,我只需要用户名和我的网页上的角色复选框。

enter image description here 工作代码示例将不胜感激


其次,在我将身份验证从 Web 更改为 Windows 后,我尝试创建新用户时收到错误,它使用ActiveDirectory。以下是错误:

enter image description here

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


修改

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

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]=@Name";
    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中检索用户列表并按照我上面的方法实现它?

1 个答案:

答案 0 :(得分:3)

关于您的第一个问题,网站管理工具只是一个位于会员资格API 之上的网络界面。换句话说,如果您点击网络管理工具上的“添加新角色”之类的内容,您基本上会调用Roles.CreateRole()

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