First of all, "impersonation" is the term applied only inside the same machine, if your network share (or IIS, or virtual dir, or MS SQL Server, etc.) is on another computer then it is delegation and you should configure it between computers (read SPN, Service Principal Name).
Are your network share on the same or on the different computer?
Then, it is not "double hop" since you do not pass-through original identity of your webapp user but use fixed impersonation in web.config.
I hope it is not in production? This, putting credentials in web.config, is EVIL, EVIL, EVIL, do not ever do this, just don't!
BTW, you can reach the same result without fixed impersonation in web.config by running your webapp in custom application pool under your domain user, cf. . This is more easy, configurable and reliable.
I could have tried to write you instructions for all possible cases since the exact context is blurred in your post but it would have ended up in unreadable dozens-page article.
OK, I started writing:
Disable "Anonymous access" and enable "Basic authentication" in IIS (properties of website)
<authentication mode="None" />
<authentication mode="Windows" />
Disable "Use simple file sharing" in Windows Explorer --> menu Tools ---> Folder Options... ---> tab View
Give permissions for username on network share
Make sure that NTLM is enabled on all involved interacting computers
Plz read and follow instructions in .
I could not find the description of the same quality for IIS7/W2006 but I strongly believe what you need did not change.
If you would have any further questions or problems, post more specific questions.
How To: Create a Service Account for an ASP.NET 2.0 Application
How To: Use Impersonation and Delegation in ASP.NET 2.0