Vue d'ensemble de la configuration ASP.NET

Mise à jour : novembre 2007

À l'aide des fonctionnalités du système de configuration ASP.NET, vous pouvez configurer toutes les applications ASP.NET installées sur un serveur, une seule application ASP.NET, des pages individuelles ou des sous-répertoires d'application. Vous pouvez configurer des fonctionnalités comme les modes d'authentification, la mise en cache de pages, les options du compilateur, les erreurs personnalisées, les options de débogage et de traçage, et bien plus encore.

Les sections suivantes décrivent les fonctionnalités du système de configuration ASP.NET.

Pour plus d'informations sur la configuration d'applications clientes du .NET Framework, consultez Configuration d'applications.

Remarque :

Les fonctionnalités du système de configuration ASP.NET s'appliquent uniquement aux ressources ASP.NET. Par exemple, l'authentification par formulaire applique uniquement des restrictions d'accès sur des fichiers ASP.NET, pas sur des fichiers statiques ou des fichiers ASP (classiques) à moins que ces ressources soient mappées à des extensions de nom de fichier ASP.NET. Utilisez les fonctionnalités de configuration IIS pour configurer des ressources non ASP.NET. Pour plus d'informations, consultez Working with the IIS Metabase et IIS Metabase Property Reference.

Fichiers de configuration

Les données de configuration ASP.NET sont stockées dans des fichiers texte XML nommés Web.config. Les fichiers Web.config peuvent apparaître dans plusieurs répertoires d'applications ASP.NET. Ces fichiers vous permettent de modifier facilement des données de configuration avant, pendant ou après le déploiement des applications sur le serveur. Vous pouvez créer et modifier des fichiers de configuration ASP.NET en utilisant des éditeurs de texte standard, le composant logiciel enfichable MMC ASP.NET, l'outil Administration de site Web ou l'API de configuration ASP.NET.

Les fichiers de configuration ASP.NET conservent les paramètres de configuration de l'application séparés du code de l'application. La séparation des données de configuration du code simplifie l'association de paramètres aux applications, la modification éventuelle de paramètres après le déploiement d'une application et l'extension du schéma de configuration.

Pour plus d'informations sur l'organisation des données dans les fichiers de configuration ASP.NET, consultez Fichiers de configuration ASP.NET. Les paramètres de configuration disponibles sont décrits dans les Paramètres de configuration ASP.NET.

Hiérarchie de fichiers de configuration et héritage

Chaque fichier Web.config applique des paramètres de configuration au répertoire dans lequel il figure et à tous les répertoires enfants situés sous celui-ci. Les paramètres dans les répertoires enfants peuvent éventuellement substituer ou modifier des paramètres spécifiés dans les répertoires parents. Les paramètres de configuration dans un fichier Web.config peuvent parfois être appliqués à des fichiers individuels ou à des sous-répertoires en spécifiant un chemin d'accès dans un élément location.

La racine de la hiérarchie de configuration ASP.NET est le fichier systemroot\Microsoft.NET\Framework\numéroversion\CONFIG\Web.config qui inclut des paramètres s'appliquant à toutes les applications ASP.NET qui exécutent une version spécifique de .NET Framework. Dans la mesure où chaque application ASP.NET hérite des paramètres de configuration par défaut du fichier Web.config racine, vous devez créer uniquement des fichiers Web.config pour les paramètres se substituant aux paramètres par défaut.

Remarque :

Le fichier Web.config racine hérite de certains paramètres de configuration de base du fichier Machine.config, placé dans le même répertoire. Certains de ces paramètres ne peuvent pas être substitués dans les fichiers Web.config. Pour plus d'informations, consultez Hiérarchie du fichier de configuration ASP.NET et héritage.

Au moment de l'exécution, ASP.NET utilise les fichiers Web.config pour calculer hiérarchiquement une collection unique de paramètres de configuration pour chaque demande d'URL entrante. Ces paramètres sont calculés une seule fois puis mis en cache sur le serveur. ASP.NET détecte toutes les modifications apportées aux fichiers de configuration puis applique automatiquement ces modifications aux applications concernées, en redémarrant les applications dans la plupart des cas. Les paramètres de configuration hiérarchiques sont automatiquement recalculés et remis en cache chaque fois qu'un fichier de configuration de la hiérarchie est modifié. Le serveur IIS ne doit pas être redémarré pour que les modifications entrent en vigueur sauf si la section processModel a été modifiée.

Pour plus d'informations sur le fonctionnement de la hiérarchie de configuration ASP.NET, consultez Hiérarchie du fichier de configuration ASP.NET et héritage et Scénarios de configuration ASP.NET.

Modification directe de fichiers de configuration

Vous pouvez utiliser un éditeur de texte ou un éditeur XML pour modifier directement les fichiers de configuration. Pour utiliser la syntaxe appropriée, consultez les rubriques de référence dans les sections de configuration de Paramètres de configuration ASP.NET et Paramètres généraux de configuration (ASP.NET). Pour plus d'informations, consultez Modification des fichiers de configuration ASP.NET.

Éléments de configuration supplémentaires dans le fichier Web.config ASP.NET 3.5

Le fichier Web.config d'une application ASP.NET qui cible le .NET Framework version 3.5 contient des éléments de configuration introuvables dans les fichiers Web.config des versions antérieures. Ce fichier Web.config étendu est également créé lorsque vous ouvrez un site Web existant dans le .NET Framework version 3.5 et mettez à niveau ce site pour cibler cet environnement. Dans ce cas, Visual Studio met à jour le fichier Web.config de l'application de manière à inclure les éléments de configuration supplémentaires.

Le tableau suivant indique les nouveaux éléments de configuration et les modifications apportées aux éléments de configuration par rapport aux versions antérieures du .NET Framework.

Élément de configuration

Modifications dans la version 3.5

system.codedom

(Nouveauté) Indique comment le modèle CodeDOM (Code Document Object Model) du .NET Framework doit compiler le code source au moment de l'exécution.

configSections

(Nouveauté) Définit la section system.web.extensions utilisée par ASP.NET AJAX pour définir la manière dont les services Web sont appelés à partir du script client. Pour plus d'informations, consultez Services Web dans ASP.NET AJAX.

assemblies

(Nouveauté dans l'élément compilation) Spécifie la collection des assemblys référencés lors de la compilation des pages ASP.NET. Les assemblys qui sont nouveaux dans la version 3.5 d'ASP.NET sont inclus de cette section.

namespaces

(Mise à jour) Cette section indique les espaces de noms importés par défaut. Les espaces de noms Linq, Linq et Generic ont été ajoutés.

controls

(Mise à jour) Cette section enregistre des assemblys contenant des contrôles et fournit un préfixe pour référencer le contrôle, de la même manière que la directive de page Instructions relatives aux pages Web ASP.NET enregistre des contrôles dans une page individuelle. Par défaut, cette section enregistre les contrôles dans l'assembly Extensions. Ceux-ci comprennent le contrôle ListView et les contrôles lies à AJAX.

system.webServer

Cette section remplace les modules et les gestionnaires HTTP liés à AJAX qui sont ajoutés dans les sections httpHandlers et httpModules. Cette section rend les gestionnaires et les modules disponibles dans IIS 7.0 lorsque l'application s'exécute en mode Intégré.

assemblyBinding

(Mise à jour) Cette section dirige l'exécution de manière à utiliser l'infrastructure ASP.NET AJAX qui fait partie de la version 3.5 d'ASP.NET au lieu d'utiliser une version antérieure de l'infrastructure ASP.NET AJAX.

Outils de configuration

Le système de configuration ASP.NET fournit des outils de configuration d'application bien plus efficaces qu'un éditeur de texte parce qu'ils incluent une fonctionnalité de détection d'erreurs.

Composant logiciel enfichable MMC ASP.NET

Le composant logiciel enfichable MMC (Microsoft Management Console) pour ASP.NET offre un moyen pratique de manipuler des paramètres de configuration ASP.NET à tous les niveaux sur un serveur Web local ou distant. Le composant logiciel enfichable MMC ASP.NET utilise l'API de configuration ASP.NET, mais il simplifie le processus de modification de paramètres de configuration en fournissant une interface utilisateur graphique (GUI). De plus, l'outil prend en charge les fonctionnalités de l'API de configuration ASP.NET qui contrôlent si les paramètres peuvent être hérités par les applications Web et gèrent les dépendances entre les niveaux de la hiérarchie de configuration.

Remarque :

Pour utiliser le composant logiciel enfichable MMC ASP.NET, vous devez vous connecter à l'ordinateur avec un compte qui possède des privilèges d'administration.

Le composant logiciel enfichable MMC ASP.NET apparaît comme un onglet ASP.NET sur la feuille de propriétés d'un répertoire virtuel.

Pour plus d'informations, consultez Composant logiciel enfichable MMC pour ASP.NET.

Outil Administration de site Web

L'outil Administration de site Web permet à tout utilisateur possédant des privilèges d'administration pour le site Web de gérer les paramètres de configuration de ce site Web. L'outil Administration de site Web est conçu pour fournir un outil d'édition graphique et convivial destiné à tous les paramètres de configuration les plus couramment utilisés dans les sites Web individuels. Dans la mesure où l'outil utilise une interface de type navigateur, il vous permet de modifier à distance des paramètres de site Web, ce qui est utile pour l'administration d'un site déjà déployé sur un serveur Web de production, tel qu'un site Web hébergé.

L'outil Administration de site Web diffère du composant logiciel enfichable MMC ASP.NET à plusieurs égards. Par exemple, le composant logiciel enfichable MMC ASP.NET est idéal pour une configuration de niveau administrateur car il fournit l'accès à toute la hiérarchie des fichiers de configuration sur le serveur Web au lieu des paramètres de configuration d'un seul site Web. Par ailleurs, vous devez être administrateur pour utiliser le composant logiciel enfichable MMC ASP.NET, alors que l'outil Administration de site Web permet uniquement aux propriétaires de site Web individuels de configurer le fichier Web.config dans le répertoire racine des sites pour lesquels ils possèdent des privilèges d'administration. Enfin, vous ne pouvez pas utiliser le composant logiciel enfichable MMC ASP.NET pour administrer IIS à distance, mais l'interface de navigateur de l'outil Administration de site Web autorise la configuration à distance pour IIS 6.0 et les versions ultérieures.

L'outil Administration de site Web inclut une interface avec onglets qui groupe des paramètres de configuration connexes dans les onglets suivants :

  • Onglet Sécurité, qui contient des paramètres visant à sécuriser des ressources d'application Web et à gérer des rôles et des comptes d'utilisateur.

  • Onglet Profil, qui contient des paramètres destinés à la gestion de la collecte des informations sur les visiteurs par le site Web.

  • Onglet Application, qui contient des paramètres pour gérer des éléments de configuration affectant des applications ASP.NET.

  • Onglet Fournisseur, qui contient des paramètres permettant d'ajouter, de modifier, de supprimer, de tester ou d'assigner des fournisseurs d'applications.

L'outil d'administration de site Web est automatiquement installé avec le .NET Framework version 2.0 et ultérieure. Pour plus d'informations sur l'utilisation de cet outil, consultez Outil Administration de site Web ASP.NET.

Outils de ligne de commande

Le .NET Framework inclut des outils de ligne de commande qui exécutent des opérations de configuration spécifiques. Par exemple, l'outil Aspnet_regiis.exe vous permet de spécifier la version du .NET Framework qui s'applique à votre application ASP.NET. Pour plus d'informations, consultez Outils du .NET Framework.

API de configuration ASP.NET

Le système de configuration ASP.NET fournit une interface managée complète pour configurer des applications ASP.NET par programme sans modifier directement les fichiers de configuration XML. En outre, l'API de configuration ASP.NET offre les avantages suivants :

  • Elle simplifie les tâches d'administration en fournissant un affichage intégré des données de tous les niveaux de la hiérarchie de configuration.

  • Elle prend en charge les tâches de déploiement, y compris la création des configurations et la configuration de plusieurs ordinateurs avec un seul script.

  • Elle fournit une interface de programmation unique pour les développeurs qui génèrent des applications ASP.NET, des scripts et des applications console, des outils de gestion Web et des composants logiciels enfichables MMC.

  • Elle empêche les développeurs et les administrateurs de définir des paramètres de configuration non valides.

  • Elle permet d'étendre le schéma de configuration. Vous pouvez définir de nouveaux paramètres de configuration et écrire les gestionnaires de sections de configuration pour les traiter.

  • Elle fournit des méthodes statiques pour obtenir des informations de configuration de l'application en cours d'exécution et des méthodes non statiques pour obtenir des informations de configuration d'une autre application. L'utilisation de méthodes statiques permet à votre application de s'exécuter plus rapidement mais ces méthodes peuvent être utilisées uniquement dans l'application dont vous voulez obtenir les données de configuration.

Pour plus d'informations, consultez API de configuration ASP.NET.

Sécurité de la configuration

Le système de configuration ASP.NET contribue à protéger les fichiers de configuration d'un accès par des utilisateurs non autorisés. ASP.NET configure IIS pour refuser l'accès à tout navigateur qui demande l'accès aux fichiers Machine.config ou Web.config. Une erreur d'accès HTTP 403 (refusé) est retournée aux navigateurs tentant de demander directement un fichier de configuration.

En outre, les fichiers de configuration d'une même application ASP.NET se voient refuser l'accès aux paramètres de configuration d'autres applications ASP.NET à moins que votre application de configuration ne s'exécute avec un niveau de confiance totale sous un compte qui possède des autorisations en lecture sur le fichier de configuration de l'autre application.

Pour plus d'informations, consultez Sécurisation de la configuration ASP.NET et Chiffrement des informations de configuration à l'aide de la configuration protégée.

Voir aussi

Tâches

Procédure pas à pas : configuration d'applications ASP.NET dans IIS 6.0 à l'aide de MMC

Procédure pas à pas : configuration d'applications ASP.NET dans IIS 7.0

Concepts

Hiérarchie du fichier de configuration ASP.NET et héritage

Sécurisation de la configuration ASP.NET

Autres ressources

API de configuration ASP.NET

Fichiers de configuration ASP.NET

Composant logiciel enfichable MMC pour ASP.NET

Outil Administration de site Web ASP.NET

Paramètres de configuration ASP.NET

Paramètres généraux de configuration (ASP.NET)

Chiffrement des informations de configuration à l'aide de la configuration protégée

Configuration ASP.NET et IIS