Deux problèmes se produisent lorsque vous déployez une application basée sur ASP.NET 2.0 sur un serveur qui exécute IIS 7.0 ou IIS 7.5 en mode intégré


Symptômes


Vous déployez une application Web basée sur Microsoft ASP.NET 2.0 sur un site Web qui est hébergé sur un serveur Office SharePoint. Vous disposez d’Internet Information Services (IIS) 7.0 ou IIS 7.5 en mode intégré sur le serveur. Dans ce cas, vous rencontrez les problèmes suivants.

Problème 1

Déploiement de certains composants de niveau de confiance partiel sur le site SharePoint. Ces composants WebPart possèdent plus d’autorisations qu’ils doivent avoir. Ce problème peut créer un risque de sécurité sur le site SharePoint. Par exemple, ces composants WebPart peut générer inattendue des requêtes de base de données ou des requêtes HTTP. Ce comportement crée un risque de sécurité.

Remarque Niveau de confiance partiel des composants WebPart sont des composants WebPart qui est déployés dans le répertoire Bin d’une application Web.

Problème 2

Le compteur de performance « Demandes en file d’attente » dans un objet de performance ASP.NET ne fonctionne pas convenablement. Lorsque vous exécutez le site SharePoint, ce problème peut diminuer les performances du site SharePoint.

Les performances de « Demandes en file d’attente » compteur fonctionnement correctement lorsque les conditions suivantes sont remplies :
  • L’application s’exécute en mode classique d’IIS.
  • Lorsque les demandes sont validées dans le pool de thread de common language runtime (CLR), la valeur du compteur de performance augmente.
  • Lorsque des demandes quittent le pool de threads CLR, la valeur du compteur de performance diminue.

Cause


Problème 1

Ce problème se produit en raison d’une erreur dans le composant d’authentification ASP.NET 2.0. L’erreur entraîne les niveau de confiance partiel WebPart imiter le compte de pool d’applications. Par conséquent, les composants WebPart ont toutes les autorisations requises pour accéder au site SharePoint.

Problème 2

Ce problème se produit car le compteur de performance « ASP.NET\Request en file d’attente » signale uniquement des valeurs lorsqu’une demande est en attente dans la file d’attente de ASP.NET. Il ne compte pas les demandes qui sont en attente pour le pool de threads CLR.

Résolution


Problème 1

Ce correctif apporte une nouvelle application de configuration disponibles dans ASP.NET 2.0. Le nouveau paramètre d’application est aspnet:AllowAnonymousImpersonation. Vous pouvez activer ce paramètre en ajoutant la section suivante au fichier Web.config :
    <appSettings>        <add key="aspnet:AllowAnonymousImpersonation" value="true" />
</appSettings>

Pour activer ce paramètre, vous devez disposer d’IIS 7 ou IIS 7.5 en mode intégré. Lorsque ce paramètre est activé, l’application s’exécute sous le contexte de sécurité de l’identité IUSR.

Problème 2

Si vous surveillez le compteur de performance « ASP.NET\Request mises en attente » après avoir appliqué ce correctif, vous voyez les valeurs augmentent de la même application, sous la même charge. C’est parce que le compteur de performance « ASP.NET\Request en file d’attente » compte à la fois les demandes en attente dans la file d’attente de ASP.NET et les demandes sont en attente pour le pool de threads CLR.

Informations sur le correctif

Un correctif pris en charge est désormais disponible auprès de Microsoft. Toutefois, il est conçu pour résoudre uniquement le problème décrit dans cet article. Il s’applique uniquement aux systèmes rencontrant ce problème spécifique. Ce correctif peut subir des tests supplémentaires. Par conséquent, si vous n’êtes pas sérieusement concerné par ce problème, nous vous recommandons d’attendre le prochain service pack qui comprendra ce correctif.

Pour résoudre ce problème immédiatement, contactez les Services de Support technique Microsoft pour obtenir le correctif. Pour obtenir une liste complète des numéros de téléphone des Services de Support technique Microsoft et des informations sur les coûts de support, visitez le site Web de Microsoft à l’adresse suivante :Remarque Dans des cas particuliers, des frais généralement encourus pour les appels au support technique peuvent être annulés si un technicien du support technique Microsoft détermine qu'une mise à jour spécifique peut résoudre votre problème. Les coûts habituels du support technique s’appliqueront aux autres questions et problèmes qui ne relèvent pas de la mise à jour spécifique en question.

Conditions préalables

Pour appliquer ce correctif, vous devez disposer du Microsoft.NET Framework 3.5 Service Pack 1 (SP1) installé sur un ordinateur qui exécute l’un des systèmes d’exploitation suivants :
  • Windows Vista Service Pack 2 (SP2)
  • Windows Server 2008 SP2
  • Windows 7
  • Windows Server 2008 R2

Nécessite un redémarrage

Vous devez redémarrer l’ordinateur après avoir appliqué ce correctif logiciel si tous les fichiers affectés sont utilisées lorsque vous installez le correctif. Pour éviter de redémarrer l’ordinateur, mettez hors tension tous les sites Web d’ASP.NET avant d’installer le correctif.

Informations de remplacement du correctif


Ce correctif ne remplace aucun autre correctif.

Informations sur les fichiers

La version anglaise de ce correctif dispose des attributs de fichier (ou version ultérieure) répertoriés dans le tableau suivant. Les dates et heures de ces fichiers sont répertoriées en temps universel coordonné (UTC). Lorsque vous affichez les informations de fichier, elles sont converties en heure locale. Pour trouver la différence entre l’UTC et l’heure locale, utilisez l’onglet fuseau horaire dans l’élément de Date et heure dans le panneau de configuration.
Pour toutes les versions prises en charge x86-Windows Vista SP2 et Windows Server 2008 SP2
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Aspnet_wp.exe2.0.50727.443530,54403-Mar-201012:08x86
Webengine.dll2.0.50727.4435435,53603-Mar-201012:08x86
System.web.dll2.0.50727.44355.242.88003-Mar-201012:08x86
Pour toutes les versions prises en charge x64-Windows Vista SP2 et Windows Server 2008 SP2
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Aspnet_wp.exe2.0.50727.443542,32003-Mar-201012:08x64
Webengine.dll2.0.50727.4435744,78403-Mar-201012:08x64
System.web.dll2.0.50727.44355,255,16803-Mar-201012:08x64
Pour toutes les versions basés sur IA-64 prises en charge de Windows Server 2008 SP2
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Aspnet_wp.exe2.0.50727.443582,25603-Mar-201012:09IA-64
Webengine.dll2.0.50727.44351,229,64803-Mar-201012:09IA-64
System.web.dll2.0.50727.44354,775,93603-Mar-201012:09IA-64
Pour toutes les versions x86 de Windows 7 prises en charge
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Aspnet_wp.exe2.0.50727.500730,54403-Mar-201023:27x86
Webengine.dll2.0.50727.5007436,04803-Mar-201023:27x86
System.web.dll2.0.50727.50075,246,97603-Mar-201023:27x86
Pour toutes les versions 64 bits de Windows 7 et Windows Server 2008 R2
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Aspnet_wp.exe2.0.50727.500742,32003-Mar-201023:26x64
Webengine.dll2.0.50727.5007745,29603-Mar-201023:26x64
System.web.dll2.0.50727.50075,255,16803-Mar-201023:26x64
Pour toutes les versions IA-64 prises en charge de Windows Server 2008 R2
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Aspnet_wp.exe2.0.50727.500782,25603-Mar-201023:25IA-64
Webengine.dll2.0.50727.50071,231,18403-Mar-201023:25IA-64
System.web.dll2.0.50727.50074,775,93603-Mar-201023:25IA-64

Solution de contournement


Pour contourner le problème 1, utilisez une des méthodes suivantes.

Méthode 1

Créer un compte qui possède les mêmes nom d’utilisateur et mot de passe comme identité IUSR. Puis, tapez le nom et le mot de passe dans une section de l’identité, puis ajoutez la section dans le fichier Web.config de niveau application. Par exemple, vous ajoutez la section suivante dans le fichier Web.config au niveau de l’application :
<identity impersonate="true" username="username" password=" password" />
En outre, vous devez ajouter la configuration suivante au fichier Web.config de niveau application pour supprimer l’erreur de configuration de IIS qui se produit lorsque vous ajoutez la section de l’identité :
<system.webServer><validation validateIntegratedModeConfiguration="false" />
</system.webServer>
Méthode 2

Activer l’authentification anonyme et l’authentification par ASP.NET Forms en mode classique d’IIS. Ensuite, utilisez la configuration suivante pour emprunter l’identité du jeton de l’utilisateur anonyme :
<identity impersonate=”true”/>
Dans ce cas, le jeton d’utilisateur anonyme est le jeton IUSR.

État


Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés dans la section « S'applique à ».

Plus d'informations


Pour plus d’informations sur les options que vous pouvez utiliser pour déployer des composants WebPart SharePoint, visitez le site Web Microsoft TechNet suivant :Pour plus d’informations sur les compteurs de performance pour ASP.NET, visitez le site Web de Microsoft Developer Network (MSDN) à l’adresse suivante :Pour plus d'informations sur la terminologie de mise à jour logicielle, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :

Description 824684 terminologie standard utilisée pour décrire les mises à jour logicielles de Microsoft