AuthorizationStoreRoleProvider.ApplicationName Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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 des informations de rôle. La valeur par défaut est celle de la propriété ApplicationPath du Request en cours.
Exceptions
Une tentative a été faite pour affecter à ApplicationName une chaîne dépassant 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. Il spécifie l’instance de l’application AuthorizationStoreRoleProvider et définit la propriété sur ApplicationNameMyApplication
.
<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
le ApplicationName est utilisé par pour AuthorizationStoreRoleProvider associer des utilisateurs et des rôles à différentes applications de gestion des autorisations, ce qui permet à plusieurs applications ASP.NET d’utiliser le même magasin de stratégies de gestionnaire d’autorisations pour stocker des informations de rôle sans rencontrer de conflits entre les noms de rôles en double. Plusieurs applications ASP.NET peuvent également utiliser 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 aucune valeur n’est spécifiée pour l’attribut applicationName
dans le fichier Web.config, la valeur de propriété HttpRequest.ApplicationPath de l’objet actuel HttpContext.Request est utilisée.
Notes
Les noms d’application du gestionnaire d’autorisation 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.
Attention
Étant donné qu’une seule instance de fournisseur de rôle par défaut est utilisée pour toutes les demandes traitées par un HttpApplication objet, vous pouvez avoir plusieurs requêtes s’exécutant simultanément et en essayant de définir la valeur de la ApplicationName propriété. La ApplicationName propriété n’est pas thread-safe pour plusieurs écritures, et la modification de la valeur de la ApplicationName propriété peut entraîner un comportement inattendu lorsqu’il y a 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 le devez. Une application administrative qui gère les données de rôle pour plusieurs applications est un exemple d’application où la définition de la ApplicationName propriété peut être requise. Une telle application doit être une application mono-utilisateur et non une application web.