Partager via


AuthorizationStoreRoleProvider.ApplicationName Propriété

Définition

Obtient ou définit le nom de l’application de magasin d’autorisations pour laquelle stocker et récupérer des informations de rôle.

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

Valeur de propriété

Nom de l’application de magasin d’autorisations pour laquelle stocker et récupérer les informations de rôle. La valeur par défaut est la ApplicationPath valeur de propriété pour le fichier actif Request.

Exceptions

Une tentative a été effectuée pour définir la ApplicationName chaîne sur une chaîne de plus de 256 caractères.

Exemples

L’exemple suivant montre l’élément <roleManager> dans la system.web section du fichier Web.config pour une application ASP.NET. Elle spécifie l’instance de l’application AuthorizationStoreRoleProvider et définit la ApplicationName propriété MyApplicationsur .

<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>

Remarques

Il ApplicationName est utilisé par l’association AuthorizationStoreRoleProvider d’utilisateurs et de rôles à différentes applications de gestionnaire d’autorisation, ce qui permet à plusieurs applications ASP.NET d’utiliser le même magasin de stratégies de gestionnaire d’autorisations pour stocker les informations de rôle sans entrer en conflit entre les noms de rôles en double. Vous pouvez également utiliser plusieurs applications ASP.NET le même magasin de stratégies en spécifiant la même valeur dans la ApplicationName propriété. La ApplicationName propriété peut être définie par programmation, ou elle peut être définie de manière déclarative dans le fichier Web.config de l’application à l’aide de l’attribut applicationName .

Si une valeur n’est pas spécifiée pour l’attribut applicationName dans le fichier Web.config, la HttpRequest.ApplicationPath valeur de propriété de l’objet actuel HttpContext.Request est utilisée.

Note

Les noms d’application du gestionnaire d’autorisations ne peuvent pas contenir le caractère « / » inclus dans la HttpRequest.ApplicationPath propriété. Par conséquent, la valeur par défaut de la ApplicationName propriété ne peut pas être utilisée comme nom d’application du gestionnaire d’autorisations et, dans le fichier Web.config de l’application, vous devez toujours spécifier un applicationName attribut dans l’élément provider pour configurer votre AuthorizationStoreRoleProvider instance.

Avertissement

Étant donné qu’une seule instance de fournisseur de rôles par défaut est utilisée pour toutes les requêtes traitées par un HttpApplication objet, vous pouvez avoir plusieurs requêtes s’exécutant simultanément et tenter de définir la valeur de propriété ApplicationName . La ApplicationName propriété n’est pas thread-safe pour plusieurs écritures et la modification de la valeur de propriété ApplicationName peut entraîner un comportement inattendu lorsqu’il existe plusieurs utilisateurs d’une application. Nous vous recommandons d’éviter d’écrire du code qui permet aux utilisateurs de définir la ApplicationName propriété, sauf si vous devez. Un exemple d’application où la définition de la ApplicationName propriété peut être nécessaire est une application administrative qui gère les données de rôle pour plusieurs applications. Une telle application doit être une application mono-utilisateur et non une application web.

S’applique à

Voir aussi