"Failed to access IIS metabase" on XP

G

Guest

All,

I can't seem to find a solution to this problem. I'm not sure if this is a
Visual Studio problem, a .NET Framework problem, an IIS problem, or an
ASP.NET problem, so please stick with me ...

I had Visual Studio (the original) installed on my XP workstation. When
Visual Studio 2003 came out, I installed that as well, leaving the old Visual
Studio in place. All this time, I had no problems running ASP.NET apps,
whether running under .NET 1.0 or 1.1.

When Visual Studio 2005 came out, I installed it on my machine side-by-side
with Visual Studio 2003. After this, I was unable to run any ASP.NET pages -
I'd constantly get the "Failed to access IIS metabase" error message. This
was with 1.0, 1.1, or 2.0 applications. Running aspnet_regiis -u in the
\Microsoft.NET\Framework\v2.0.50727 brought my 1.0 and 1.1 applications back
to life, but left me with out the ability to run 2.0 applications.

I took to Google and tried every suggestion I saw:
- The Metaacl.vbs file (Added ASPNET, the IUser account, eventually the
Everyone group) to add read and enumeration rights.
- Made sure IIS was installed before VS 2k5 (it was - many years prior).
- The 2.0 Framework was installed via scheduled updates, so that was a
default install.
- I tried running aspnet_regiis -u followed by aspnet_regiis -i

None of these suggestions worked. The only option I couldn't try was adding
ASPNET to the operators tab of IIS, and that's because IIS 5.1 doesn't have
the Operators tab.

So, here I am, wondering what I can do to get this working. I've already
tried a reinstall of the 2.0 Framework as well as Visual Studio 2005, but I'm
at a loss.

Someone help me out before I pave over my entire desktop and am forced to
start from scratch ...

Clint
 
S

Steven Cheng[MSFT]

Hi Clint,

Welcome to the ASPNET newsgroup.

From your description, you've originally installed ASP.NET 1.0 and 1.1 on
your XP machine which works correctly. After you installed .net framework
2.0/ASP.NET 2.0 on it, any ASP.NET applications no longer work and report
"Failed to access IIS metabase..." error. Also, if you remove ASP.NET 2.0,
the 1.0 and 1.1 web application can work correctly. If there is anything I
misunderstand, please feel free let me know.

Based on my experience, the problem is likely involved by the new installed
net framework 2.0 and should be a environment specfic issue. Before you
perform a thorough reinstall, I think we can try the following steps:

1. Revert the machine to your original status(remove the 2.0 and ensure 1.0
and 1.1 works), then reinstall the .net framework 2.0 and configure the
default site to use 2.0 (perform iisreset).

2. After that try run a simple asp.net 2.0 web page at IIS root site to see
whether it report the same error.

3. If the same error occur, try change the ASP.NET worker process account
from the default "machine\ASPNET" account to Local System account. This can
be configured in machine.config(in .net 2.0's framework folder) through the
<processModel> element. Since 2.0 hidden the default configuration for
<processModel> you need to explicitly add the configuration (just change
the username attribute to "SYSTEM"). Here is the msdn reference which have
mentioend the .net 2.0's default configuration of <processModel>, you can
modify the machine.config according to it:

#processModel Element (ASP.NET Settings Schema)
http://msdn2.microsoft.com/en-us/library/7w2sway1.aspx

After change the machine.config, save and perform IIS reset, after that,
try running the asp.net web app again.

4. If still not work, this is not likely a simple permission issue and
there may has some serious problem with the .net 2.0's intallation. If it
start work, the problem is likely a permission issue, so that we can swtich
back the processModel setting and try using filemon tool to monitor the
file access failures to find the file which cause the permission error.

Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)
 
G

Guest

Thanks for your reply, Steven!

Changing the process account to SYSTEM worked perfectly. Incidentally,
adding the ASPNET account to the Administrators group works as well.

I noticed that the file C:\windows\system32\inetsrv\metabase.bin only had
Administrators and SYSTEM access. If I add ASPNET to this as read-only, my
applications run well. Problem is, if I perform an iisreset or reboot, the
permissions on this file are reset to Administrators and SYSTEM.

Any suggestions? I'd prefer ASPNET not be running as an Administrator, but
I'm not sure how to get around it.

Thanks!
Clint
 
G

Guest

Steven,

I'm sorry, I made a mistake in my previous post. If I grant ASPNET
permissions to metabase.bin, the applications still error with the "Failed to
access..." error. I forgot to remove ASPNET from the Administrators group
when I ran that test.

The programs still run if aspnet_wp runs as SYSTEM, though.

Clint
 
S

Steven Cheng[MSFT]

Thanks for your response Clint,

Yes, granting ASPNET account to the metabase.bin is not necessary since
I've also checked a XP machine with ASP.NET 2.0 on my side. I think there
has some other security permissions which is not granted correctly. I
suggest you switch the account to ASPNET and try using filemon tool(also
regmon if necessary) to monitor access errors when running asp.net 2.0
application. In addition ,here is a msdn article which described creating a
custom ASP.NET account and the needed permissions. You can also check the
items listed in it though it is for asp.net 1.x:

#How To: Create a Custom Account to Run ASP.NET
http://msdn.microsoft.com/library/en-us/dnnetsec/html/SecNetHT01.asp?frame=t
rue

Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,009
Latest member
GidgetGamb

Latest Threads

Top