Security issue with DirectoryServices

C

Carl

In an attempt to programmatically create a website using
Dim site As New DirectoryEntry(CType(objIIs.Invoke("Create", "IIsWebServer",
intSiteID), DirectoryEntry))

....

site.Invoke("SetInfo")

works fine until the SetInfo is called.

It produces an "Access denied" from source "mscorlib". I am sure this as
been address here previously but can someone who has resolved this kindly
repost the fix/workaround.

Thanks
 
J

Joe Kaplan \(MVP - ADSI\)

Are you modifying IIS on the local machine or a remote machine? Is the
current thread executing with an account with administrator rights?

Joe K.
 
C

Carl

The ASP.NET pages are running on the local machine. I am using the machine's
administartor/password for site.username/site.password as:

Dim site As New DirectoryEntry(CType(objIIs.Invoke("Create", "IIsWebServer",
intSiteID), DirectoryEntry))
site.Username = "Administrator"
site.Password = "xxyyzz1234"
 
J

Joe Kaplan \(MVP - ADSI\)

Ah, the IIS provider ignores passed in credentials. I really wish MS would
document this more clearly as it trips up a lot of people!

It only works with the security context of the current thread
(System.Security.Principal.WindowsIdentity.GetCurrent().Name). So, you need
to make sure that is set to the administrator account you need.

Typically you do that with either impersonation to change the thread
identity or by changing the worker process identity.

Joe K.
 

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,744
Messages
2,569,484
Members
44,904
Latest member
HealthyVisionsCBDPrice

Latest Threads

Top