AuthorizationStoreRoleProvider.ApplicationName Eigenschap

Definitie

Hiermee wordt de naam opgehaald of ingesteld van de autorisatieopslagtoepassing waarvoor rolgegevens moeten worden opgeslagen en opgehaald.

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

Waarde van eigenschap

De naam van de autorisatieopslagtoepassing waarvoor rolgegevens moeten worden opgeslagen en opgehaald. De standaardwaarde is de ApplicationPath eigenschapswaarde voor de huidige Request.

Uitzonderingen

Er is een poging gedaan om de ApplicationName tekenreeks in te stellen op een tekenreeks die langer is dan 256 tekens.

Voorbeelden

In het volgende voorbeeld ziet u het element <roleManager> in de sectie system.web van het Web.config-bestand voor een ASP.NET toepassing. Hiermee geeft u het exemplaar van AuthorizationStoreRoleProvider de toepassing op en stelt u de ApplicationName eigenschap in op 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>

Opmerkingen

De ApplicationName wordt gebruikt door de AuthorizationStoreRoleProvider om gebruikers en rollen te koppelen aan verschillende autorisatiebeheertoepassingen, waardoor meerdere ASP.NET toepassingen dezelfde autorisatiebeheerbeleidsopslag kunnen gebruiken om rolgegevens op te slaan zonder conflicten tussen dubbele rolnamen. U kunt ook meerdere ASP.NET toepassingen hetzelfde beleidsarchief gebruiken door dezelfde waarde op te geven in de eigenschap ApplicationName. De ApplicationName eigenschap kan programmatisch worden ingesteld of deze kan declaratief worden ingesteld in het Web.config-bestand van de toepassing met behulp van het applicationName kenmerk.

Als er geen waarde is opgegeven voor het applicationName kenmerk in het bestand Web.config, wordt de HttpRequest.ApplicationPath eigenschapswaarde voor het huidige HttpContext.Request object gebruikt.

Note

Namen van autorisatiebeheertoepassingen mogen het /-teken dat in de HttpRequest.ApplicationPath eigenschap is opgenomen, niet bevatten. Als gevolg hiervan kan de standaardwaarde voor de ApplicationName eigenschap niet worden gebruikt als naam van een autorisatiebeheertoepassing. In het Web.config-bestand van de toepassing moet u altijd een applicationName kenmerk opgeven in het provider element om uw AuthorizationStoreRoleProvider exemplaar te configureren.

Caution

Omdat één exemplaar van een standaardrolprovider wordt gebruikt voor alle aanvragen die door een HttpApplication object worden verwerkt, kunt u meerdere aanvragen tegelijk uitvoeren en de ApplicationName eigenschapswaarde instellen. De ApplicationName eigenschap is niet thread veilig voor meerdere schrijfbewerkingen en het wijzigen van de ApplicationName eigenschapswaarde kan leiden tot onverwacht gedrag wanneer er meerdere gebruikers van een toepassing zijn. U wordt aangeraden geen code te schrijven waarmee gebruikers de ApplicationName eigenschap kunnen instellen, tenzij u dat moet. Een voorbeeld van een toepassing waarbij het instellen van de ApplicationName eigenschap mogelijk vereist is, is een beheertoepassing waarmee rolgegevens voor meerdere toepassingen worden beheerd. Een dergelijke toepassing moet een toepassing met één gebruiker zijn en geen webtoepassing.

Van toepassing op

Zie ook