• 为角色管理配置应用程序 roleManager 元素


    roleManager 元素(ASP.NET 设置架构)

    为角色管理配置应用程序。

    此元素是 .NET Framework 2.0 版中的新元素。

    configuration 元素(常规设置架构)
      system.web 元素(ASP.NET 设置架构)
        roleManager 元素(ASP.NET 设置架构)
    <roleManager
    cacheRolesInCookie="true|false"
    cookieName="name"
    cookiePath="/"
    cookieProtection="All|Encryption|Validation|None"
    cookieRequireSSL="true|false "
    cookieSlidingExpiration="true|false "
    cookieTimeout="number of minutes"
    createPersistentCookie="true|false"
    defaultProvider="provider name"
    domain="cookie domain">
    enabled="true|false"
    maxCachedResults="maximum number of role names cached"
    <providers>...</providers>
    </roleManager>

    下面几部分描述了本节涉及的属性、子元素和父元素。

    属性

    属性

    说明

    cacheRolesInCookie

    可选的 Boolean 属性。

    指定当验证某个用户是否在特定角色中时,先检查 Cookie,然后使用角色提供程序在数据源中检查角色列表。如果为 true,则缓存当前用户的 Cookie 中的角色名称列表;否则为 false

    默认值为 false

    cookieName

    可选的 String 属性。

    指定存储角色名称的 Cookie 的名称。

    默认值为 ".ASPXROLES"

    cookiePath

    可选的 String 属性。

    角色名称 Cookie 的路径。

    默认值为 "/"

    cookieProtection

    可选的 CookieProtection 属性。

    指定 CookieProtection 枚举值之一。

    默认值为 All 值。

    cookieRequireSSL

    可选的 Boolean 属性。

    指定角色名称 Cookie 是否需要使用 SSL 来发送到服务器。

    如果设置为 true,则角色名称 Cookie 需要使用 SSL 来发送到服务器。

    默认值为 false

    cookieSlidingExpiration

    可选的 Boolean 属性。

    指定是否将定期重置角色名称 Cookie 的过期日期和时间。

    如果设置为 true,则 Cookie 的过期日期和时间最初将设置为当前日期和时间与 CookieTimeout 值(分钟)的加和。当用户继续主动地使用 ASP.NET 应用程序时,Cookie 的过期日期和时间将在剩余时间不足 CookieTimeout 值的一半时自动更新。有关更多信息,请参见 Expires

    默认值为 true

    cookieTimeout

    可选的 Int32 属性。

    角色名称 Cookie 过期之前的时间(分钟)。

    默认值为 "30"(分钟)。

    createPersistentCookie

    可选的 Boolean 属性。

    指定角色名称 Cookie 是否为会话 Cookie;即,该 Cookie 会在浏览器关闭时丢失。

    如果设置为 true,则角色名称 Cookie 是可跨多个浏览器会话使用的持久性 Cookie。持久性 Cookie 的过期日期和时间设置为当前的日期和时间与 CookieTimeout 值(分钟)的加和。

    默认值为 false

    defaultProvider

    可选的 String 属性。

    默认角色提供程序的名称。有关更多信息,请参见 Provider

    默认值为 "AspNetSqlRoleProvider"

    domain

    可选的 String 属性。

    指定角色名称 Cookie 的 Domain 值。

    默认值为 HttpCookie 属性默认值,该值为空字符串 ("")。

    enabled

    可选的 Boolean 属性。

    指定是否要启用角色管理。

    如果设置为 true,则启用角色管理。

    在 Machine.config 文件中,默认值为 false

    maxCachedResults

    可选的 Int32 属性。

    指定缓存在角色 Cookie 中的角色名称的最大数目。

    默认值为 25

    继承的属性

    可选的属性。

    由所有 section 元素继承的属性。有关更多信息,请参见节元素所继承的常规属性

    子元素

    元素

    说明

    providers

    可选的元素。

    为角色管理定义一个角色提供程序的集合。

    父元素

    元素

    说明

    configuration

    指定公共语言运行库和 .NET Framework 应用程序所使用的每个配置文件中均需要的根元素。

    system.web

    为 ASP.NET 配置节指定根元素。

    roleManager 元素为角色管理配置应用程序。

    有关访问和修改应用程序代码中 roleManager 元素的配置值的信息,请参见 RoleManagerSection

    默认配置

    下面的默认 roleManager 元素不是在 Machine.config 文件或根 Web.config 文件中显式配置的。但是,它是应用程序返回的默认配置。提供程序在 Machine.config 文件中是显式配置的。

    <roleManager
    enabled="false"
    cacheRolesInCookie="false"
    cookieName=".ASPXROLES"
    cookieTimeout="30"
    cookiePath="/"
    cookieRequireSSL="false"
    cookieSlidingExpiration="true"
    cookieProtection="All"
    defaultProvider="AspNetSqlRoleProvider"
    createPersistentCookie="false"
    maxCachedResults="25">
    <providers>
    <clear />
    <add
    connectionStringName="LocalSqlServer"
    applicationName="/"
    name="AspNetSqlRoleProvider"
    type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    <add
    applicationName="/"
    name="AspNetWindowsTokenRoleProvider"
    type="System.Web.Security.WindowsTokenRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    </providers>
    </roleManager>

    下面的代码示例演示如何配置一个 ASP.NET 应用程序,以使用 SqlRoleProvider 类来存储和检索角色信息。

    <configuration>
    <system.web>
    <roleManager defaultProvider="SqlProvider"
    enabled="true"
    cacheRolesInCookie="true"
    cookieName=".ASPROLES"
    cookieTimeout="30"
    cookiePath="/"
    cookieRequireSSL="false"
    cookieSlidingExpiration="true"
    cookieProtection="All" >
    <providers>
    <add
    name="SqlProvider"
    type="System.Web.Security.SqlRoleProvider"
    connectionStringName="SqlServices"
    applicationName="SampleApplication" />
    </providers>
    </roleManager>
    </system.web>
    </configuration>

    配置节处理程序

    RoleManagerSection

    配置成员

    RoleManager

    可配置的位置

    Machine.config

    根级别的 Web.config

    应用程序级别的 Web.config

    要求

    Microsoft Internet 信息服务 (IIS) 版本 5.0、5.1 或 6.0

    .NET Framework 2.0 版

    Microsoft Visual Studio 2003 或 Visual Studio 2005

  • 相关阅读:
    增强for循环赋值并且向list集合里添加元素,每个元素都一样
    《《《Spring 视频学习笔记
    xml中的<where><if>模糊查询
    《《《layui入门笔记
    《《《Vue element学习笔记
    《《《Spring Boot视频学习笔记
    intellij idea设置打开多个文件显示在多行tab上
    postMan安装完成,打开提示找不到,或者报错 可能原因
    Intellij IDEA debug模式下项目启动慢/无法启动的事件解决过程记录
    idea代码注释
  • 原文地址:https://www.cnblogs.com/star250/p/1245042.html
Copyright © 2020-2023  润新知