ASP.NET process identity does not have read permissions to the global assembly cache

  • Thread starter Thread starter Michael Neumann
  • Start date Start date
M

Michael Neumann

I'm trying to set up a test environment for an ASP.NET site on a Windows XP
Pro box. I installed IIS5.1 and then .Net V2.

I put up a web site that contains just a simple Default.aspx "hello world"
page. When I try to connect, I get the "Server Unavailable" page. Plain HTML
pages are served with no problems.

Looking at the Event Viewer Application section I see two error entries:

aspnet_wp.exe (PID: 1676) stopped unexpectedly.

Failed to execute the request because the ASP.NET process identity does
not have read permissions to the global assembly cache. Error:
0x80070005 Access is denied.

I have checked the permissions, the ASPNET account has read on C:\, and Read
& Execute on C:\Windows with "inherit below." I turned off the GAC "Cache
Viewer" shell extension and checked the security on the folders in the GAC,
the permissions were inheriting correctly. I added "Write" to the GAC
folders manually.

None of this made any difference. I tried adding ASPNET to the
Administrators group and restarting IIS, still the same error. I've
reinstalled .Net a couple of times with no change.

I'm having trouble figuring out what the error really means. The process
list contains aspnet_wp running under the ASPNET account even though it
"stopped unexpectedly."

In an attempt to run the worker process under System, I tried modifying the
machine.config processModel element userName/password attributes in the
CONFIG folder and restarting IIS. This didn't make any difference either,
and the aspnet_wp process still shows as running under ASPNET. I'm new to
ASP.NET so I'm not sure if that's normal.

I've been able to get ASP.NET working on a couple of similar machines with
no problems, but I'm not sure what to do in this case. I don't want to
flatten the machine unless I have to.

Anyone out there familiar with this error or know any ways to solve it?

Thanks,

Mike N.
 
Hi Mike,

Welcome to MSDN newsgroup!

Based on my experience, the current problem was caused by the ASPNET
account not having the correct permissions on the system. I suggest you
perform below steps:

1 Using aspnet_regiis -u;
2 Delete the ASPNET account;
3 Using aspnet_regiis -i;

If the problem still occurs, please change the <processModel> tag to have
the userName run as SYSTEM. If the application works fine after
modification, I recommend you grant the ASPNET account's permissions listed
in the following article:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetsec/ht
ml/SecNetHT01.asp

Then, please changing userName back in <processModel> tag and check whether
the problem still occurs.

I hope the above information helps, if you have any questions or concerns,
please do not hesitate to let me know. I am standing by to help you.

Regards,

Yuan Ren [MSFT]
Microsoft Online Support
 

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

Back
Top