【问题标题】:SimpleMembership WebForms Asp.net 4.0 rolesSimpleMembership WebForms Asp.net 4.0 角色
【发布时间】:2013-03-16 19:51:42
【问题描述】:

我正在尝试找到一种方法来管理现有 WebForms ASP.NET 4.0) 应用程序的角色。这不是 MVC。我无法将现有项目更改为 MVC 或 .NET 4.5,因此请根据我的要求提供解决方案。

我将 SimpleMembership 视为一种管理角色的可能方式,而无需使用我不需要的表安装整个成员资格 (aspnet_regsql.exe)。

这是一个内部网站。用户将通过他们的 Windows 身份进行身份验证,因此没有登录本身。大多数用户不会在任何用户数据库中,我想控制角色,以便如果没有专门为他们提供额外的角色,他们仍然可以访问(可能是公共角色,或者简单的无角色)。

对于将在数据库中的用户,我希望能够分配角色(管理员、经理等),以便他们能够更好地访问各种页面和功能。用户可以没有角色(或公共,如上所述),也可以有一个或多个角色。

那么,有可能吗?我可以为表中的那些用户创建一个基于角色的系统,并让其他人无需登录即可访问网站的某些部分吗?

SQL Server 中有一个现有的用户表。我应该可以使用这个,而不是文本文件/xml/手动的方法。将创建一个管理页面来为用户分配角色并添加用户。

看来我应该可以按照这个来使用SimpleMembership了:http://blog.osbornm.com/2010/07/21/using-simplemembership-with-asp-net-webpages/

虽然它说我需要在 _start.cshtml 中添加一些 MVC 代码,但只要我不需要将整个站点转换为 MVC 就可以了。

目前,我收到一个错误:

The type 'WebMatrix.WebData.WebSecurity' exists in both 'c:\Windows\Microsoft.NET\assembly\GAC_MSIL\WebMatrix.WebData\v4.0_1.0.0.0__31bf3856ad364e35\WebMatrix.WebData.dll' and 'c:\Windows\Microsoft.NET\assembly\GAC_MSIL\WebMatrix.WebData\v4.0_2.0.0.0__31bf3856ad364e35\WebMatrix.WebData.dll' 

我认为一旦我解决了这个问题,很可能是 web.config 设置,我应该没问题。

【问题讨论】:

    标签: c# asp.net .net-4.0 asp.net-membership membership-provider


    【解决方案1】:

    事实证明,我要做的就是在 web.config 中进行适当的设置

    <add key="webPages:Version" value="2.0" />
    <add key="enableSimpleMembership" value="false" />
    <add key="autoFormsAuthentication" value="false" />
    

    并在 _start.cshtml 文件中添加代码

    @{
        WebSecurity.InitializeDatabaseConnection("ConnectionStringNameHere", "Users", "ID", "LanID", false);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-03
      • 2011-07-13
      • 1970-01-01
      相关资源
      最近更新 更多