AuthorizationStoreRoleProvider Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hanterar lagring av information om rollmedlemskap för ett ASP.NET program i ett auktoriseringshanterares principarkiv, antingen i en XML-fil, i en služba Active Directory eller på en služba Active Directory programlägesserver.
public ref class AuthorizationStoreRoleProvider : System::Web::Security::RoleProvider
public class AuthorizationStoreRoleProvider : System.Web.Security.RoleProvider
type AuthorizationStoreRoleProvider = class
inherit RoleProvider
Public Class AuthorizationStoreRoleProvider
Inherits RoleProvider
- Arv
Exempel
I följande kodexempel visas en Web.config fil som ska användas AuthorizationStoreRoleProvider för rollhantering.
<configuration>
<connectionStrings>
<add name="AuthorizationServices" connectionString="msxml://~\App_Data\SampleStore.xml" />
</connectionStrings>
<system.web>
<authentication mode="Windows" />
<identity impersonate="true" />
<roleManager defaultProvider="AuthorizationStoreRoleProvider"
enabled="true"
cacheRolesInCookie="true"
cookieName=".ASPROLES"
cookieTimeout="30"
cookiePath="/"
cookieRequireSSL="false"
cookieSlidingExpiration="true"
cookieProtection="All" >
<providers>
<clear />
<add
name="AuthorizationStoreRoleProvider"
type="System.Web.Security.AuthorizationStoreRoleProvider"
connectionStringName="AuthorizationServices"
applicationName="SampleApplication"
cacheRefreshInterval="60"
scopeName="" />
</providers>
</roleManager>
</system.web>
</configuration>
Kommentarer
Den här klassen används av klasserna Roles och RolePrincipal för att tillhandahålla rollhanteringstjänster för ett ASP.NET-program med hjälp av ett auktoriseringshanterarearkiv. Du kan använda rollhantering för att ange olika auktoriseringsnivåer för ditt program. Auktoriseringshanteraren kan nås med hjälp av Microsoft Management Console.
Objektet AuthorizationStoreRoleProvider fungerar med både Windows authentication- och formulärautentiseringslägen.
Du kan konfigurera objektet AuthorizationStoreRoleProvider att använda antingen en lokal XML-fil eller en služba Active Directory- eller služba Active Directory ADAM-server (Application Mode). När du använder en lokal fil bör reťazec pripojenia se ut som i följande exempel.
msxml://<path to xml file>
Om den lokala filen lagras i katalogträdet i ett ASP.NET webbprogram kan du använda tilde-tecknet ("~") för att ange rotkatalogen. Om du till exempel vill ange att den lokala filen lagras i webbprogrammets datakatalog använder du en reťazec pripojenia som liknar följande exempel.
msxml://~\App_Data\datafilename.xml
Important
Att lagra en XML-datafil i webbprogramkatalogen är ett potentiellt säkerhetshot. Som standard kommer IIS att hantera XML-datafiler på webben. För att förbättra säkerheten när du använder en lokal datafil i ett ASP.NET program bör du lagra datafilen i katalogen App_Data. Filer som lagras i App_Data katalogen kommer inte att hanteras på webben.
Om du använder en služba Active Directory- eller ADAM-server för principarkivet bör din reťazec pripojenia likna följande exempel.
msldap://myserver/CN=MyAzManStore,OU=MyOU,DC=MyDomain,DC=MyDC,DC=Com
Undantagen som anges i dokumentationen för AuthorizationStoreRoleProvider objektmetoder är de undantag som genereras av AuthorizationStoreRoleProvider objektet. Eftersom providern förlitar sig på den underliggande Authentication Manager-körningen kan ett COMException undantag utlöses när AuthorizationStoreRoleProvider objektet vidarebefordrar ett metodanrop till Authentication Manager-körningen.
Important
Objektet AuthorizationStoreRoleProvider har följande krav för att köras i miljöer med partiellt förtroende:
När du använder ett filbaserat principarkiv i ett ASP.NET program avgör fil-I/O-behörigheterna som beviljas av den aktuella förtroendenivån om läs- och skrivåtgärder tillåts av providern. Det ASP.NET programmet måste ha läsbehörighet för filen för att läsa data från principarkivet och måste ha skrivbehörighet för att spara ny information eller uppdatera befintlig information i principarkivet. Standardfilen med medelhög förtroendeprincip ger ett ASP.NET program läs-/skrivbehörighet i programkatalogen. Standardfilen med låg förtroendeprincip ger bara ett ASP.NET program läsbehörighet i programkatalogen. Dessutom måste processidentiteten som ASP.NET-programmet körs under ha filsystembehörighet för att läsa och/eller skriva principfilen.
När du använder en služba Active Directory- eller ADAM-server behöver ASP.NET-programmet ohanterad kodbehörighet eftersom den interna AuthorizationStoreRoleProvider-objektkoden använder COM-interop.
När du använder objektet AuthorizationStoreRoleProvider utanför ASP.NET behöver den anropande koden ohanterad kodbehörighet.
Konstruktorer
| Name | Description |
|---|---|
| AuthorizationStoreRoleProvider() |
Initierar en ny instans av AuthorizationStoreRoleProvider klassen. |
Egenskaper
| Name | Description |
|---|---|
| ApplicationName |
Hämtar eller anger namnet på det auktoriseringsarkivprogram som rollinformationen ska lagras och hämtas för. |
| CacheRefreshInterval |
Hämtar antalet minuter mellan uppdateringar av cacheminnet för principlagringsdata. |
| Description |
Hämtar en kort, vänlig beskrivning som är lämplig för visning i administrativa verktyg eller andra användargränssnitt (UIs). (Ärvd från ProviderBase) |
| Name |
Hämtar det eget namn som används för att referera till providern under konfigurationen. (Ärvd från ProviderBase) |
| ScopeName |
Hämtar eller anger omfångsnamnet för auktoriseringsarkivet. |
Metoder
| Name | Description |
|---|---|
| AddUsersToRoles(String[], String[]) |
Lägger till de angivna användarnamnen i var och en av de angivna rollerna. |
| CreateRole(String) |
Lägger till en ny roll i principarkivet för rollauktoriseringshanteraren. |
| DeleteRole(String, Boolean) |
Tar bort en roll från auktoriseringshanterarens principarkiv. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| FindUsersInRole(String, String) |
Den här metoden stöds inte av rollprovidern för auktoriseringsarkivet. |
| GetAllRoles() |
Hämtar en lista över alla roller för programmet. |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetRolesForUser(String) |
Hämtar en lista över de roller som en användare finns i. |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| GetUsersInRole(String) |
Hämtar en lista över användare i den angivna rollen. |
| Initialize(String, NameValueCollection) |
Initierar rollprovidern authorization-manager med de egenskapsvärden som anges i ASP.NET-programmets konfigurationsfil. Den här metoden är inte avsedd att användas direkt från koden. |
| IsUserInRole(String, String) |
Hämtar ett värde som anger om den angivna användaren finns i den angivna rollen. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| RemoveUsersFromRoles(String[], String[]) |
Tar bort de angivna användarnamnen från de angivna rollerna. |
| RoleExists(String) |
Hämtar ett värde som anger om det angivna rollnamnet redan finns i policyarkivet för authorization-manager. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |