trust, élément (Schéma des paramètres ASP.NET)
Configure le niveau de sécurité d'accès du code (CAS) appliqué à une application. Utilisez cet élément si vous souhaitez exécuter une application Web avec une confiance inférieure à Full.
<trust
hostSecurityPolicyResolverType ="security policy resolution type"
legacyCasModel = "[True|False]"
level="[Full|High|Medium|Low|Minimal]"
originUrl="URL"
permissionSetName = "name of the permission set"
processRequestInApplicationTrust = "[True|False]"
/>
Attributs et éléments
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributs
Attribut |
Description |
---|---|
hostSecurityPolicyResolverType |
Attribut de chaîne facultatif. Spécifie un type de résolution de la stratégie de sécurité personnalisé. Lorsque cet attribut a pour valeur une chaîne vide, ASP.NET utilise la stratégie par défaut pour déterminer les autorisations d'un assembly. La stratégie par défaut pour l'évaluation d'autorisations accorde une confiance totale aux assemblys Global Assembly Cache (GAC) et une confiance partielle aux autres assemblys. Cet attribut ne peut pas avoir pour valeur une valeur null. La valeur par défaut est un string vide. |
legacyCasModel |
Attribut boléen facultatif. Spécifie si la sécurité d'accès du code héritée (CAS) est activée. Lorsque la sécurité d'accès du code héritée est activée, les règles de sécurité suivantes s'appliquent :
La valeur par défaut est false. |
level |
Attribut String requis. Spécifie le niveau de confiance sous lequel l'application sera exécutée. Chaque niveau de confiance est mappé à un fichier de stratégie XML qui utilise un élément trustLevel du fichier de configuration. Le fichier de stratégie répertorie le jeu d'autorisations accordé par chaque niveau de confiance. Pour plus d'informations sur ASP.NET et les fichiers de stratégie, consultez Fichiers de stratégie et niveaux de confiance ASP.NET. Cet attribut peut être une valeur définie par l'utilisateur, s'il existe un mappage de stratégie de sécurité correspondant défini dans un élément trustLevel de l'élément securityPolicy, élément (Schéma des paramètres ASP.NET) ou alors une des valeurs possibles suivantes, par ordre croissant de restriction.
ValeurDescription
Full Spécifie des autorisations sans restriction.Accorde les autorisations d'application ASP.NET permettant d'accéder à toute ressource qui est soumise à la sécurité de système d'exploitation.Toutes les opérations privilégiées sont prises en charge.Ce paramètre est appelé Unrestricted dans l'énumération AspNetHostingPermissionLevel.
High Spécifie un niveau de sécurité d'accès du code élevé, ce qui signifie que l'application ne peut pas effectuer les actions suivantes par défaut :
Medium Spécifie un niveau de sécurité d'accès du code moyen, ce qui signifie qu'en plus des restrictions associées au niveau High, l'application ASP.NET ne peut pas effectuer les actions suivantes par défaut :
Low Spécifie un niveau de sécurité d'accès du code faible, ce qui signifie qu'en plus des restrictions associées au niveau Medium, l'application ASP.NET ne peut pas effectuer les actions suivantes par défaut :
Minimal Spécifie un niveau de sécurité d'accès du code minimal, ce qui signifie que l'application possède uniquement des autorisations Exécuter.
(La valeur par défaut est Full (aucune restriction). |
originUrl |
Attribut String facultatif. Spécifie une URL à utiliser avec l'autorisation WebPermission limitée qui est configurée au niveau de confiance moyen. Si elle est spécifiée, elle peut être utilisée pour certaines classes, telles que HttpWebRequest, qui permettent de se connecter uniquement à des URL spécifiques, définies par une autorisation WebPermission. Les autorisations reposant sur une notion d'hôte peuvent ainsi fonctionner correctement. |
permissionSetName |
Attribut de chaîne facultatif. Spécifie le nom du jeu d'autorisations. La valeur par défaut est « ASP.NET ». |
processRequestInApplicationTrust |
Attribut Boolean facultatif. Spécifie si les demandes de page sont automatiquement limitées aux autorisations qui sont configurées dans le fichier de stratégie de confiance qui est appliqué à l'application ASP.NET. Les fichiers de stratégie de confiance sont spécifiés dans des éléments trustLevel de l'élément securityPolicy. Une stratégie de confiance unique est appliquée à une application ASP.NET à l'aide de l'attribut level de l'élément trust. Si la valeur est False, les demandes ASP.NET peuvent être éventuellement exécutées avec une confiance Full, même si l'attribut level spécifie un niveau de confiance différent. À moins que cela soit justifié, conservez à cet attribut la valeur par défaut true. Cet attribut est une nouveauté de .NET Framework version 2.0. La valeur par défaut est True. |
Éléments enfants
Aucun
Éléments parents
Élément |
Description |
---|---|
configuration |
Spécifie l'élément racine requis dans chaque fichier de configuration utilisé par le Common Language Runtime et les applications .NET Framework. |
system.web |
Spécifie l'élément racine des paramètres de configuration ASP.NET dans un fichier de configuration et contient des éléments de configuration qui configurent des applications Web ASP.NET et contrôlent le comportement des applications. |
Notes
L'élément trust configure le niveau de sécurité d'accès du code (CAS, Code Access Security) appliqué à une application. Les fichiers de stratégie de sécurité sont mappés à des noms de niveaux de confiance dans l'élément de collection securityPolicy. Le fichier de stratégie indique le jeu d'autorisations accordé par chaque niveau de confiance. L'élément trust spécifie quel niveau de confiance appliquer à l'application ASP.NET. Pour plus d'informations sur ASP.NET et les fichiers de stratégie, consultez Fichiers de stratégie et niveaux de confiance ASP.NET.
Par défaut, les applications Web sont exécutées avec le niveau de confiance Full. Des autorisations d'accès au code sans restriction sont accordées aux applications ayant un niveau de confiance total par la stratégie de sécurité d'accès du code. Ces autorisations incluent des autorisations système et personnalisées intégrées. Cela signifie que la sécurité d'accès du code n'empêchera pas votre application d'accéder à des ressources sécurisées. La réussite ou l'échec de la tentative de l'accès à la ressource est déterminé purement par la sécurité au niveau du système d'exploitation. Si une application est configurée avec un niveau de confiance autre que Full, elle est désignée comme application de confiance partielle. Les applications de confiance partielle possèdent des autorisations restreintes, qui limitent l'accès aux ressources sécurisées de l'application.
Pour améliorer la sécurité dans un environnement hébergé, utilisez l'élément location dans le fichier Web.config racine pour contenir les éléments securityPolicy et trust des applications hébergées, et l'attribut allowOverride="False" pour empêcher les applications de substituer les paramètres d'un fichier Web.config local. Vous pouvez utiliser éventuellement plusieurs éléments d'emplacement, chacun avec un attribut de chemin d'accès distinct, si vous souhaitez configurer différents niveaux de confiance pour des applications hébergées différentes. Pour obtenir un exemple de ce type de configuration, consultez la section « Exemple », plus loin dans cette rubrique.
Remarque |
---|
Les applications Web reposant sur le .NET Framework version 1.0 sont toujours exécutées avec le niveau de confiance Full car les types System.Web exigent des appelants bénéficiant d'une confiance totale.Lors de la mise à niveau vers une version plus récente du .NET Framework, ne modifiez pas le niveau de confiance sans tester les applications existantes. |
Configuration par défaut
L'élément trust par défaut suivant est configuré dans le fichier Web.config racine.
<location allowOverride="true">
<system.web>
<securityPolicy>
<trustLevel name="Full" policyFile="internal" />
<trustLevel name="High" policyFile="web_hightrust.config" />
<trustLevel name="Medium" policyFile="web_mediumtrust.config" />
<trustLevel name="Low" policyFile="web_lowtrust.config" />
<trustLevel name="Minimal" policyFile="web_minimaltrust.config"/>
</securityPolicy>
<trust
level="Full"
originUrl=""
processRequestInApplicationTrust="true"
/>
</system.web>
</location>
Exemple
L'exemple de code suivant montre comment utiliser un fichier Web.config racine pour spécifier des paramètres de niveau de confiance Medium pour toutes les applications ASP.NET hébergées sur le serveur et l'élément location pour verrouiller les paramètres. Un autre élément location du même fichier de configuration est utilisé pour permettre au fichier Web.config de l'application Default Web Site/Temp de substituer les paramètres du fichier Web.config racine.
<location allowOverride="false">
<system.web>
<securityPolicy>
<trustLevel name="Full" policyFile="internal" />
<trustLevel name="High" policyFile="web_hightrust.config" />
<trustLevel name="Medium" policyFile="web_mediumtrust.config" />
<trustLevel name="Low" policyFile="web_lowtrust.config" />
<trustLevel name="Minimal" policyFile="web_minimaltrust.config"/>
</securityPolicy>
</system.web>
</location>
<location allowOverride="false">
<system.web>
<trust level="Medium" originUrl="" />
</system.web>
</location>
<location allowOverride="true" path="Default Web Site/Temp">
<system.web>
<trust level="Medium" originUrl="" />
</system.web>
</location>
Informations sur les éléments
Gestionnaire de section de configuration |
|
Membre de configuration |
|
Emplacements configurables |
Machine.config Web.config racine Web.config au niveau de l'application |
Configuration requise |
Microsoft Internet Information Services (IIS) version 5.0, 5.1 ou 6.0 .NET Framework version 1.0, 1.1 ou 2.0 Microsoft Visual Studio 2003 ou Visual Studio 2005 |
Voir aussi
Tâches
Comment : configurer des répertoires spécifiques à l'aide des paramètres d'emplacement
Comment : verrouiller des paramètres de configuration ASP.NET
Référence
system.web, élément (Schéma des paramètres ASP.NET)
configuration, élément (Schéma des paramètres généraux)
trustLevel, élément de securityPolicy (Schéma des paramètres ASP.NET)
securityPolicy, élément (Schéma des paramètres ASP.NET)
Concepts
Fichiers de stratégie et niveaux de confiance ASP.NET
Fichiers de stratégie et niveaux de confiance ASP.NET
Administration de la stratégie de sécurité
Sécurisation de la configuration ASP.NET
Scénarios de configuration ASP.NET
Autres ressources
Sécurité des applications Web ASP.NET
Paramètres généraux de configuration (ASP.NET)
Paramètres de configuration ASP.NET
Administration de site Web ASP.NET