Account that creates folders and files under Temporary Internet files

R

rogersw8n

Some how, some way the account that creates folders under Temporary
Internet files has been changed to a domain account for VS 2003 and VS
2005. I recently installed VS 2005. All seemed to be ok afterwards.
I did no development for a couple of weeks, came back and I kept
receiving Access Denied to Microsoft.Net\Temporary Internet Files\...
Access is Denied. ASPNET had full access to that file and all
subfolders. The website I am working with is not impersonating. I
gave the Network Service account full access as well even though I have
IIS 5.0. I downloaded a FileMon utility from the Microsoft website.
It showed me that a domain account was now being used by VS 2003 and VS
2005 when trying to create the temp files for processing. I am not
sure how this was changed but would like to get it set to another
account.

Thanks in advance.

RS
 
J

Juan T. Llibre

Copy this little file I wrote and run it from any folder in your application:

identity.aspx:
------------------
<%@ Page Language="VB" %>
<%@ Import NameSpace = System.Security.Principal %>
<script runat="server">
Sub Page_Load()
Dim tmp As String = WindowsIdentity.GetCurrent.Name()
Label1.Text = "ASP.NET is running as the account : " & tmp
End Sub
</script>
<html>
<head>
<title>What account is ASP.NET running as ?</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" Runat="server" Text="Label"></asp:Label>
</div>
</form>
</body>
</html>
------------

Running that page will return the name of the account ASP.NET is running as.

*That* account is the one that needs full permissions to the Temporary Folders tree
( not just for the root... ).

You might as well make sure the same account has the
necessary permissions to the directories listed in this article :

"ASP.NET Required Access Control Lists (ACLs)"
http://msdn2.microsoft.com/en-us/library/kwzs111e.aspx
 
R

rogersw8n

I did this and it states that ASPNET is running under
<computername>\aspnet. However, when Visual Studio tries to create
files under the Temporary Internet files folder it is using another
account...<DomainName>\generic user. I need to change this.
 
J

Juan T. Llibre

re:
I did this and it states that ASPNET is running under <computername>\aspnet.

That means you're using Windows XP, unless you changed the ASP.NET user on purpose.

Did you check whether the ASPNET account has the
necessary permissions for all the directories listed in :

http://msdn2.microsoft.com/en-us/library/kwzs111e.aspx

?

re:
However, when Visual Studio tries to create files under the Temporary Internet
files folder it is using another account...<DomainName>\generic user.

By "generic user", do you mean the anonymous account ?

Also, does this happen when you use VS's ASP.NET development server, or when you use IIS ?

Checking which users are allowed to use the ASP.NET development
server is easy, just check the accounts authorized to run :

Drive:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\WebDev.WebServer.EXE
Right-click that file and select the "Properties" and then the "Security" tab.

The ASPNET account should be one of them.





I did this and it states that ASPNET is running under
<computername>\aspnet. However, when Visual Studio tries to create
files under the Temporary Internet files folder it is using another
account...<DomainName>\generic user. I need to change this.
 
R

rogersw8n

However, when Visual Studio tries to create files under the Temporary Internet
Also, does this happen when you use VS's ASP.NET development server, or when you use IIS ?

VS IDE.
Checking which users are allowed to use the ASP.NET development
server is easy, just check the accounts authorized to run :

Drive:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\WebDev.WebServer.EXE
Right-click that file and select the "Properties" and then the "Security" tab.

The ASPNET account should be one of them.

ASPNET is for this file which is for VS 2005, right? What about VS
2003?
 
J

Juan T. Llibre

re:

With the VS IDE, you can use both IIS and the Development Web Server.

If you're testing a file-based project, you're using the Dev Server.
If you're using HTTP, you're using IIS.

Which one is it you're using ?

re:
ASPNET is for this file which is for VS 2005, right?

No. The account used depends on the operating system/IIS version used.

IIS 5.0 and 5.1 use the ASPNET account.
IIS 6.0 uses the NETWORK SERVICE account.

VS 2005 will use whichever account corresponds to the OS/IIS version it runs under.

re:
What about VS 2003?

It will use whichever account corresponds to the OS/IIS version it runs under.





Also, does this happen when you use VS's ASP.NET development server, or when you use IIS ?

VS IDE.
Checking which users are allowed to use the ASP.NET development
server is easy, just check the accounts authorized to run :

Drive:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\WebDev.WebServer.EXE
Right-click that file and select the "Properties" and then the "Security" tab.

The ASPNET account should be one of them.

ASPNET is for this file which is for VS 2005, right? What about VS
2003?
 

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,770
Messages
2,569,584
Members
45,075
Latest member
MakersCBDBloodSupport

Latest Threads

Top