An application that ran correctly before a restart now does not run because the Active Directory schema is not correctly cached by ADSI (327437)
The information in this article applies to:
- Microsoft Internet Information Services 5.0
- Microsoft ASP.NET (included with the .NET Framework 1.1)
- Microsoft ASP.NET (included with the .NET Framework) 1.0
This article was previously published under Q327437 SYMPTOMSAfter a server is restarted or a Web service is restarted, an application that ran correctly before the restart now does not run. You may receive the following error message: 0x8000500C, The property in
cache cannot be converted from native datatype CAUSEThe Active Directory directory service schema is not correctly cached by
ADSI.
For additional information about how ADSI caches the schema of an LDAP server, click the following article number to view the article in the Microsoft Knowledge Base:
251189
Locating an LDAP server schema cached by ADSI
The previous article describes how ADSI tries to cache the schema one time for each process. This information is important because Microsoft ASP.NET runs under a
single Aspnet_wp.exe process in Microsoft Windows 2000. If you have some Web users who experience the double-hop authentication limitation and some Web users who do
not experience the double-hop authentication limitation, this problem may be caused by the first user who runs an ASP.NET page that
uses ADSI on that server. Typically, you
notice that an application works by launching a Web browser locally. The Web
site is now live and the Web site works until the server is
restarted or the Web service is restarted. When the server is
restarted or the Web service is restarted, the ASP.NET application stops
responding. This problem occurs because the user who is experiencing the double-hop authentication limitation is the user who accessed the server
first, and ADSI did not cache the schema correctly. The schema that
ADSI uses is stored in the cn=Aggregate object in the schema namespace. The Pre-Windows 2000 Compatible Access built-in group does not have permissions to this aggregate
object. The Everyone principal also does not have permissions to this aggregate object. Therefore, schema information is not accessible. There is a property in the cache that was retrieved from
the server, and ADSI knows nothing about this property. Because ADSI cannot determine the
type of the property, ADSI cannot convert that property to a string, to an integer, to a security
descriptor, or to other data formats, and you may receive the error message that is mentioned in the "Symptoms" section. RESOLUTIONFor additional information about possible resolutions to this problem, including using
Kerberos delegation, see the Windows 2000
Resource Kit.
For additional information, click the following article numbers to view the articles in the Microsoft Knowledge Base:
264921
How IIS authenticates browser clients
283201 How to use
delegation in Windows 2000 with COM+
317012 Process and request identity in ASP.NET
STATUS This
behavior is by design.
Modification Type: | Major | Last Reviewed: | 6/1/2004 |
---|
Keywords: | kbprb KB327437 kbAudDeveloper kbAudITPRO |
---|
|