Where is the built-in ASP.NET account?

G

Guest

I've reinstalled my Windows 2003 server and VS2003 without much luck on
finding this ASP.NET account. Using IIS 6.0.

My c# application requires access to read a file (C:\\Test.jpg) from the
file system.

Got the following error:

***********
General access denied error

Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.

Exception Details: System.UnauthorizedAccessException: General access denied
error

ASP.NET is not authorized to access the requested resource. Consider
granting access rights to the resource to the ASP.NET request identity.
ASP.NET has a base process identity(typically {MACHINE}\ASPNET on IIS 5 or
Network Service on IIS6) that is used if the application is not
impersonating. If the application is impersonating via <identity
impersonate="true"/>, the identity will be the anonymous user (typically
IUSR_MACHINENAME) or the authenticated request user.

To grant ASP.NET write access to a file, right-click the file in Explorer,
choose "Properties" and select the Security tab. Click "Add" to add the
appopriate user or group. Highlight the ASP.NET account, and check the boxes
for the desired access.

*******

I tried impersonation by putting the following in the web.config file of my
application: the user has administrative privileges

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

That didn't work. Kept receiving the same above error.

I then found the following to try to recreate the ASP.NET account using the
run command:

%systemroot%\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe /i

that didn't work either

Could anyone help me with this? Is there a solution on finding this ASP.NET
account?

I'm using II 6.0

Any suggestions would be appreciated.

Thanks.

bebop
 
J

Juan T. Llibre

re:
Could anyone help me with this?
Is there a solution on finding this ASP.NET account?

Right click the folder for which you want to
grant permissions for, using Windows Explorer.

Select "Properties", and then click the "Security" tab.
Click "Add", and then click "Advanced".

Click "Find Now".
Scroll down to the "NETWORK SERVICE" account
( Careful. There's also a "NETWORK" account. Don't pick that one.)

Double-click the "NETWORK SERVICE" account to
add it to the account list allowed access to that folder.

Assign the desired permissions by checking "Allow" or "Deny".
OK your way out of there.

The default account for ASP.NET under IIS 6.0 is "NETWORK SERVICE".

If you're impersonating a different account, select that one instead.
 
G

Guest

So, this built-in ASP.NET account doesn't exist in Windows Server 2003 using
IIS 6.0?

I tried your suggestion, gave Network Service account full control of the
folder and still receive the same error message.

Should I reinstall and see if that helps?

bebop
 
J

Juan T. Llibre

re:
So, this built-in ASP.NET account doesn't exist
in Windows Server 2003 using IIS 6.0?

Yes, it does exist.

See the table at the bottom of :
http://www.bluevisionsoftware.com/WebSite/TipsAndTricksDetails.aspx?Name=AspNetAccount
to understand the different results when using impersonation or not,
and to get specifics on how to setup a custom ASP.NET account.

Apparently, some of the changes you already made are causing
your server to run ASP.NET under a different account.

Also, see : How To Create a Custom Account to Run ASP.NET
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/secmod/html/secmod15.asp

Here's a short file you can use to determine
which account ASP.NET is running as :
-----------------
<%@ Page Language="VB" %>
<%@ Import NameSpace = System.Security.Principal %>
<script runat="server">
Sub Page_Load()
Dim tmp As String = WindowsIdentity.GetCurrent.Name()
Label1.Text = tmp
End Sub
</script>
<html>
<head>
<title>WindowsIdentity.GetCurrent.Name()</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" Runat="server" Text="Label"></asp:Label>
</div>
</form>
</body>
</html>
 

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

Forum statistics

Threads
473,756
Messages
2,569,535
Members
45,008
Latest member
obedient dusk

Latest Threads

Top