AuthorizationStoreRoleProvider.ApplicationName Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví název aplikace autorizačního úložiště, pro které se mají ukládat a načítat informace o rolích.
public:
virtual property System::String ^ ApplicationName { System::String ^ get(); void set(System::String ^ value); };
public override string ApplicationName { get; set; }
member this.ApplicationName : string with get, set
Public Overrides Property ApplicationName As String
Hodnota vlastnosti
Název aplikace úložiště autorizace, pro kterou se mají ukládat a načítat informace o rolích. Výchozí hodnota je ApplicationPath hodnota vlastnosti pro aktuální Request.
Výjimky
Došlo k pokusu ApplicationName o nastavení řetězce delšího než 256 znaků.
Příklady
Následující příklad ukazuje <roleManager> prvek v oddílu system.web
souboru Web.config pro ASP.NET aplikaci. Určuje instanci aplikace AuthorizationStoreRoleProvider a nastaví ApplicationName vlastnost na MyApplication
.
<roleManager defaultProvider="AuthorizationStoreProvider"
enabled="true"
cacheRolesInCookie="true"
cookieName=".ASPROLES"
cookieTimeout="30"
cookiePath="/"
cookieRequireSSL="false"
cookieSlidingExpiration="true"
cookieProtection="All" >
<providers>
<add
name="SqlProvider"
type="System.Web.Security.AuthorizationStoreRoleProvider"
connectionStringName="AuthorizationStoreServices"
scopeName="MyScope"
applicationName="MyApplication" />
</providers>
</roleManager>
Poznámky
Používá ApplicationName se AuthorizationStoreRoleProvider k přidružení uživatelů a rolí k různým aplikacím správce autorizace, které umožňuje více aplikacím ASP.NET používat stejné úložiště zásad správce autorizace k ukládání informací o rolích, aniž by došlo ke konfliktům mezi duplicitními názvy rolí. Alternativně může více aplikací ASP.NET použít stejné úložiště zásad zadáním stejné hodnoty ve ApplicationName vlastnosti. Vlastnost ApplicationName lze nastavit programově nebo ji lze nastavit deklarativním způsobem v souboru Web.config aplikace pomocí atributu applicationName
.
Pokud není pro applicationName
atribut v souboru Web.config zadána hodnota, HttpRequest.ApplicationPath použije se hodnota vlastnosti aktuálního HttpContext.Request objektu.
Poznámka
Názvy aplikací správce autorizace nemohou obsahovat znak /, který je součástí HttpRequest.ApplicationPath vlastnosti. V důsledku toho nelze výchozí hodnotu vlastnosti ApplicationName použít jako název aplikace správce autorizace a v souboru Web.config aplikace je nutné vždy zadat applicationName
atribut v elementu provider
pro konfiguraci instance AuthorizationStoreRoleProvider .
Upozornění
Vzhledem k tomu, že se pro všechny požadavky obsluhované objektem HttpApplication používá jedna výchozí instance zprostředkovatele role, můžete mít několik souběžných žádostí a pokus o ApplicationName nastavení hodnoty vlastnosti. Vlastnost ApplicationName není bezpečná pro více zápisů a změna ApplicationName hodnoty vlastnosti může vést k neočekávanému chování, pokud existuje více uživatelů aplikace. Doporučujeme, abyste se vyhnuli psaní kódu, který uživatelům umožňuje nastavit ApplicationName vlastnost, pokud je to nutné. Příkladem aplikace, kde je možné nastavit ApplicationName vlastnost, je aplikace pro správu, která spravuje data rolí pro více aplikací. Taková aplikace by měla být aplikace s jedním uživatelem, nikoli webová aplikace.