Applies ToInternet Information Services Internet Information Services 7.5

Symptoms

You deploy a Microsoft ASP.NET 2.0-based Web application to a Web site that is hosted on an Office SharePoint server. You have Internet Information Services (IIS) 7.0 or IIS 7.5 running in Integrated mode on the server. In this situation, you encounter the following issues.Issue 1You deploy some partially trusted Web parts on the SharePoint site. These Web parts have more permissions than they should have. This issue may create a security risk on the SharePoint site. For example, these Web parts may generate database requests or HTTP requests unexpectedly. This behavior creates a security risk.Note Partially trusted Web parts are Web parts that are deployed to the Bin directory of a Web application. Issue 2The "Requests Queued" performance counter in an ASP.NET performance object functions incorrectly. When you run the SharePoint site, this issue may decrease the performance of the SharePoint site.The "Requests Queued" performance counter functions correctly when the following conditions are true:

  • The application runs in IIS Classic mode.

  • When requests are posted to the common language runtime (CLR) thread pool, the value of the performance counter increases.

  • When requests leave the CLR thread pool, the value of the performance counter decreases.

Cause

Issue 1This issue occurs because of an error in the ASP.NET 2.0 authentication component. The error causes the partially trusted Web parts to impersonate the application pool account. Therefore, the Web parts have full permission to access the SharePoint site.Issue 2This issue occurs because the “ASP.NET\Request Queued” performance counter only reports values when a request is queued in the ASP.NET Queue. It does not count the requests that are waiting for the CLR thread pool.

Resolution

Issue 1This hotfix makes a new application setting available in ASP.NET 2.0. The new application setting is aspnet:AllowAnonymousImpersonation. You can enable this setting by adding the following section to the Web.config file:

    <appSettings>        <add key="aspnet:AllowAnonymousImpersonation" value="true" />    </appSettings>

To enable this setting, you must have IIS 7 or IIS 7.5 running in Integrated mode. When this setting is enabled, the application runs under the security context of the IUSR identity.Issue 2If you monitor the “ASP.NET\Request Queued” performance counter after you apply this hotfix, you see the values increase for the same application under the same load. This is because the “ASP.NET\Request Queued” performance counter counts both the requests that are queued in the ASP.NET Queue and the requests that are waiting for the CLR thread pool.

Hotfix information

A supported hotfix is now available from Microsoft. However, it is intended to correct only the problem that is described in this article. Apply it only to systems that are experiencing this specific problem. This hotfix may receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.To resolve this problem immediately, contact Microsoft Customer Support Services to obtain the hotfix. For a complete list of Microsoft Customer Support Services telephone numbers and information about support costs, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=supportNote In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

Prerequisites

To apply this hotfix, you must have the Microsoft .NET Framework 3.5 Service Pack 1 (SP1) installed on a computer that is running one of the following operating systems:

  • Windows Vista Service Pack 2 (SP2)

  • Windows Server 2008 SP2

  • Windows 7

  • Windows Server 2008 R2

Restart requirement

You must restart the computer after you apply this hotfix if any affected files are being used when you install the hotfix. To avoid restarting the computer, shut down any ASP.NET Web site before you install the hotfix.

Hotfix replacement information

This hotfix does not replace any other hotfixes.

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

For all supported x86-based versions of Windows Vista SP2 and of Windows Server 2008 SP2

File name

File version

File size

Date

Time

Platform

Aspnet_wp.exe

2.0.50727.4435

30,544

03-Mar-2010

12:08

x86

Webengine.dll

2.0.50727.4435

435,536

03-Mar-2010

12:08

x86

System.web.dll

2.0.50727.4435

5,242,880

03-Mar-2010

12:08

x86

For all supported x64-based versions of Windows Vista SP2 and of Windows Server 2008 SP2

File name

File version

File size

Date

Time

Platform

Aspnet_wp.exe

2.0.50727.4435

42,320

03-Mar-2010

12:08

x64

Webengine.dll

2.0.50727.4435

744,784

03-Mar-2010

12:08

x64

System.web.dll

2.0.50727.4435

5,255,168

03-Mar-2010

12:08

x64

For all supported IA-64-based versions of Windows Server 2008 SP2

File name

File version

File size

Date

Time

Platform

Aspnet_wp.exe

2.0.50727.4435

82,256

03-Mar-2010

12:09

IA-64

Webengine.dll

2.0.50727.4435

1,229,648

03-Mar-2010

12:09

IA-64

System.web.dll

2.0.50727.4435

4,775,936

03-Mar-2010

12:09

IA-64

For all supported x86-based versions of Windows 7

File name

File version

File size

Date

Time

Platform

Aspnet_wp.exe

2.0.50727.5007

30,544

03-Mar-2010

23:27

x86

Webengine.dll

2.0.50727.5007

436,048

03-Mar-2010

23:27

x86

System.web.dll

2.0.50727.5007

5,246,976

03-Mar-2010

23:27

x86

For all supported x64-based versions of Windows 7 and of Windows Server 2008 R2

File name

File version

File size

Date

Time

Platform

Aspnet_wp.exe

2.0.50727.5007

42,320

03-Mar-2010

23:26

x64

Webengine.dll

2.0.50727.5007

745,296

03-Mar-2010

23:26

x64

System.web.dll

2.0.50727.5007

5,255,168

03-Mar-2010

23:26

x64

For all supported IA-64-based versions of Windows Server 2008 R2

File name

File version

File size

Date

Time

Platform

Aspnet_wp.exe

2.0.50727.5007

82,256

03-Mar-2010

23:25

IA-64

Webengine.dll

2.0.50727.5007

1,231,184

03-Mar-2010

23:25

IA-64

System.web.dll

2.0.50727.5007

4,775,936

03-Mar-2010

23:25

IA-64

Workaround

To work around issue 1, use one of the following methods. Method 1Create an account that has the same username and password as the IUSR identity. Then, type the name and the password into an identity section, and then add the section into the application-level Web.config file. For example, you add the following section into the application-level Web.config file:

<identity impersonate="true" username="username" password=" password" />

Additionally, you must add the following configuration to the application-level Web.config file to suppress the IIS configuration error that occurs when you add the identity section:

<system.webServer><validation validateIntegratedModeConfiguration="false" /></system.webServer>

Method 2Enable Anonymous Authentication and ASP.NET Forms Based Authentication in IIS Classic mode. Then, use the following configuration to impersonate the anonymous user token:

<identity impersonate=”true”/>

In this situation, the anonymous user token is the IUSR token.

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

More Information

For more information about options that you can use to deploy SharePoint Web parts, visit the following Microsoft TechNet Web site:

Configure and deploy secure Web parts on an Office SharePoint serverFor more information about performance counters for ASP.NET, visit the following Microsoft Developer Network (MSDN) Web site:

Performance counters for ASP.NETFor more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.