跳转到内容

ASP.NET/角色

来自维基教科书,开放的书籍,开放的世界

角色是一组用户,他们根据授予的特权进行唯一标识。一个典型的网站有三种角色

  • 管理员
  • 高级用户
  • 用户

管理员对特定网站拥有所有权限,而高级用户和普通用户则没有。

角色的创建

[编辑 | 编辑源代码]

角色可以通过多种方式创建。典型的角色创建过程涉及在 Web.config 中使用角色管理器标签。

示例

<configuration>
  <connectionStrings>
    <add name="SqlServices" connectionString="Data Source=localhost;Initial Catalog=aspnetdb;Integrated Security=SSPI;" />
  </connectionStrings>

  <system.web>
    <authentication mode="Forms" >
      <forms loginUrl="login.aspx"
      name=".ASPXFORMSAUTH" />
    </authentication>

    <authorization>
      <deny users="?" />
      <allow roles="Administrators" />
      <deny users="*" />
    </authorization>

    <membership defaultProvider="AspNetSqlProvider" userIsOnlineTimeWindow="15">
    </membership>

    <roleManager defaultProvider="SqlProvider" 
      enabled="true"
      cacheRolesInCookie="true"
      cookieName=".ASPROLES"
      cookieTimeout="30"
      cookiePath="/"
      cookieRequireSSL="true"
      cookieSlidingExpiration="true"
      cookieProtection="All" >

      <providers>
        <clear />
        <add
          name="SqlProvider"
          type="System.Web.Security.SqlRoleProvider"
          connectionStringName="SqlServices"
          applicationName="SampleApplication" />
        </providers>

    </roleManager>
  </system.web>
</configuration>

也可以使用 Role 类以编程方式分配或修改角色。

使用网站管理工具

[编辑 | 编辑源代码]

可以使用 ASP.NET 网站管理工具在 .NET 2.0 中创建角色。此工具在解决方案资源管理器工具栏中可用。

该工具允许用户更改

  • 安全设置
  • 应用程序配置
  • 提供程序配置

以下是该工具的一些快照。这些快照是不言自明的。

参考文献

[编辑 | 编辑源代码]

C# 中的 Role 类,MSDN 网站

华夏公益教科书