roleManager 項目 (ASP.NET 設定結構描述)
更新:2007 年 11 月
設定角色管理的應用程式。
這個項目是 .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 應用程式時,如果剩餘的 CookieTimeout 值不到一半,就會自動更新 Cookie 的到期日和時間。如需詳細資訊,請參閱 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 項目都會繼承的屬性。如需詳細資訊,請參閱 Section 項目繼承的一般屬性。 |
子項目
項目 |
描述 |
---|---|
providers |
選擇性項目。 為角色管理定義角色提供者的集合。 |
父項目
項目 |
描述 |
---|---|
configuration |
指定 Common Language Runtime 和 .NET Framework 應用程式所使用之每個組態檔中需要的根項目 (Root Element)。 |
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>
項目資訊
組態區段處理常式 |
|
組態成員 |
|
可設定的位置 |
Machine.config 根層次的 Web.config 應用程式層級的 Web.config |
需求 |
Microsoft Internet Information Services (IIS) 5.0、5.1 或 6.0 版 .NET Framework 2.0 版 Microsoft Visual Studio 2003 或 Visual Studio 2005 |
請參閱
工作
概念
參考
system.web 項目 (ASP.NET 設定結構描述)
roleManager 的 providers 項目 (ASP.NET 設定結構描述)