473,671 Members | 2,422 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

How to Enable Impersonation

I have been working my way through an ASP.NET tutorial and I find that any
code that attempts to update an Access table evokes the error: "Operation
must use an updateable query."

A search of the MSDN Knowledge Base turned up an article describing my
problem exactly and recommending that I

(a) Configure the ASP.NET worker proces to run under the SYSTEM account in
the <processModel > section of the Machine.config file.

or

(b) For security reasons, Microsoft recommends that you enable impersonation
on your ASP.NET application. This method works if the impersonated user has
necessary permissions to the computer and the database that you are accessing.

Unfortunately, I have been unable to find any information on how to
accomplish either of the above. I'm new to .NET and am still feeling my way
around. I'd greatly appreciate any advice.
Nov 19 '05 #1
4 1674
That happens most commonly because the account ASP.NET
is using doesn't have write privileges to the directory where
the Access .MDB file is located.

An .LDB security file needs to be created in the same directory
where the .MDB file resides.

That will happen whether you impersonate or not,
since whichever account ASP.NET is running as
will need write permission to the directory.

Try giving the ASP.NET account write privileges to the directory
where the Access .MDB is located.


Juan T. Llibre
ASP.NET MVP
http://asp.net.do/foros/
Foros de ASP.NET en Español
Ven, y hablemos de ASP.NET...
=============== =======

"Sheldon Penner" <Sh***********@ discussions.mic rosoft.com> wrote in message
news:74******** *************** ***********@mic rosoft.com...
I have been working my way through an ASP.NET tutorial and I find that any
code that attempts to update an Access table evokes the error: "Operation
must use an updateable query."

A search of the MSDN Knowledge Base turned up an article describing my
problem exactly and recommending that I

(a) Configure the ASP.NET worker proces to run under the SYSTEM account in
the <processModel > section of the Machine.config file.

or

(b) For security reasons, Microsoft recommends that you enable impersonation
on your ASP.NET application. This method works if the impersonated user has
necessary permissions to the computer and the database that you are accessing.

Unfortunately, I have been unable to find any information on how to
accomplish either of the above. I'm new to .NET and am still feeling my way
around. I'd greatly appreciate any advice.

Nov 19 '05 #2
"Sheldon Penner" <Sh***********@ discussions.mic rosoft.com> wrote in message
news:74******** *************** ***********@mic rosoft.com...
A search of the MSDN Knowledge Base turned up an article describing my
problem exactly and recommending that I : : (b) For security reasons, Microsoft recommends that you enable impersonation
on your ASP.NET application. This method works if the impersonated user has
necessary permissions to the computer and the database that you are accessing. : : Unfortunately, I have been unable to find any information on how to
accomplish either of the above.


Option (a) was inadvisable because it gives ASPNET blanket power over your
system.

To enable impersonation for option (b), you just need to open the "web.config "
file in your web application and add an <identity> element under <system.web>
like this,

<identity impersonate="tr ue" />

For more information, see the following help topics in the .NET Framework SDK,

http://msdn.microsoft.com/library/en...ersonation.asp
http://msdn.microsoft.com/library/en...itysection.asp
Derek Harmon
Nov 19 '05 #3
Thanks for your response, Derek. I have added a web.config file to the root
of the test application, as you advised, and I find that I still get the same
"...updatea ble query" message. However, if I specify my user name and
password in the identity tag, the data update succeeds without an error.

"Derek Harmon" wrote:
"Sheldon Penner" <Sh***********@ discussions.mic rosoft.com> wrote in message
news:74******** *************** ***********@mic rosoft.com...
A search of the MSDN Knowledge Base turned up an article describing my
problem exactly and recommending that I

: :
(b) For security reasons, Microsoft recommends that you enable impersonation
on your ASP.NET application. This method works if the impersonated user has
necessary permissions to the computer and the database that you are accessing.

: :
Unfortunately, I have been unable to find any information on how to
accomplish either of the above.


Option (a) was inadvisable because it gives ASPNET blanket power over your
system.

To enable impersonation for option (b), you just need to open the "web.config "
file in your web application and add an <identity> element under <system.web>
like this,

<identity impersonate="tr ue" />

For more information, see the following help topics in the .NET Framework SDK,

http://msdn.microsoft.com/library/en...ersonation.asp
http://msdn.microsoft.com/library/en...itysection.asp
Derek Harmon

Nov 19 '05 #4
Thank you for your message, Juan. I tried your suggestion of giving the
ASP.NET account write privileges in the directory containing the mdb file,
but no dice, I continue to get the same error.

Derek Harmon wrote suggesting I create a web.config file and include an
identity tag containing 'impersonate="t rue"'. I find that this works if I
also specify my login name and password; otherwise, same old error.

"Juan T. Llibre" wrote:
That happens most commonly because the account ASP.NET
is using doesn't have write privileges to the directory where
the Access .MDB file is located.

An .LDB security file needs to be created in the same directory
where the .MDB file resides.

That will happen whether you impersonate or not,
since whichever account ASP.NET is running as
will need write permission to the directory.

Try giving the ASP.NET account write privileges to the directory
where the Access .MDB is located.


Juan T. Llibre
ASP.NET MVP
http://asp.net.do/foros/
Foros de ASP.NET en Español
Ven, y hablemos de ASP.NET...
=============== =======

"Sheldon Penner" <Sh***********@ discussions.mic rosoft.com> wrote in message
news:74******** *************** ***********@mic rosoft.com...
I have been working my way through an ASP.NET tutorial and I find that any
code that attempts to update an Access table evokes the error: "Operation
must use an updateable query."

A search of the MSDN Knowledge Base turned up an article describing my
problem exactly and recommending that I

(a) Configure the ASP.NET worker proces to run under the SYSTEM account in
the <processModel > section of the Machine.config file.

or

(b) For security reasons, Microsoft recommends that you enable impersonation
on your ASP.NET application. This method works if the impersonated user has
necessary permissions to the computer and the database that you are accessing.

Unfortunately, I have been unable to find any information on how to
accomplish either of the above. I'm new to .NET and am still feeling my way
around. I'd greatly appreciate any advice.


Nov 19 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
5161
by: Chris | last post by:
Hello all, Here is my problem. I have a windows service (C#) that is supposed to move files from/to the local drive to/from a UNC share (\\domainserver\share). The service is running on a Win3k server not connected to a domain, as a local user. The service impersonates a local user (on domainserver) that has full permissions to that share. Any File.Move, File.Copy operations are successfull. Any Directory.GetFiles fail with "Logon...
1
10006
by: Ripa Horatiu | last post by:
Does anyone knows how can I impersonate to another user (basically Administrator) for a piece of my code? I've tried the samples provided by MS but they didn't worked. -- Horatiu Ripa
12
2563
by: Anil Krishnamurthy | last post by:
We have an ASP.NET application that uses COM objects through Interop. The web application requires access to network and database resources and hence, needs to impersonate a domain account. The problem is that even when it is configured to run under a certain identity through Web.config, the impersonation is not carried through to COM library. Consequently, the code in COM object runs under a local account and any code that needs to access...
1
3955
by: techfuzz | last post by:
I'm posting my problem experience and solution I found here for other ASP.NET developers. I have a web application that uses Forms Authentication with Active Directory to control access. In this web application, I have search page that utilizes the Windows Indexing Service (MSIDXS provider). For reasons I'm not aware of at this time, setting <identity impersonation="true" /> in the web.config causes an error whenever you try to search.
11
2844
by: Phil | last post by:
Hi, I've currently setup a local user as described in: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnne...
1
1877
by: Patrick | last post by:
I have an ASP.NET web service whose Web.Config is set to use impersonation <authentication mode="Windows" /> <identity impersonate="true" /> Within a Web Method, I want to use Multi-threading to spawn off an asynchronous process, as it takes quite long to return. How could I get the worker thread to runas the same impersonated user on ASP.NET?
0
1262
by: velvet.graham | last post by:
I'm having a difficult time with impersonation. I've created an impersonation class. Here is the code below: ******Impersonation Class Code********* Imports System Imports System.Web.Security Imports System.Runtime.InteropServices Imports System.Security.Principal Imports System.DirectoryServices Imports System.Security.Permissions
1
1531
by: zhuang | last post by:
Dear all, I found a very interesting thing about viewing crystal report (located on network drive) with asp.net application. To do the impersonation, modify web.config does not work, you have to modify machine.config. which is not recommended. However, there is no way around. To prove I did the impersonation properly, I did the below test.
5
2663
by: =?Utf-8?B?S2l0dHlIYXdr?= | last post by:
I am in the process of migrating an II6 environment from a single server to a network load balanced system. Thus, I am using a virtual directory on a UNC share to house the dynamic data that the web farm will access. Since ASP.NET runs as a local account on the IIS servers, I have to use impersonation to perform any operations on the data that resides on the UNC share. I am hard-coding the impersonation credentials in the web.config files...
0
8483
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8401
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
8926
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
8603
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8673
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
7444
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6236
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
4227
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4416
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.