Credentials for ServerManager.OpenRemote

2019-02-16 22:33发布

问题:

I'm trying to use ServerManager.OpenRemote (from Microsoft.Web.Administration) but am unable to find documentation on how to give it different credentials from the current user. I tried SimpleImpersonation (from How do you do Impersonation in .NET?) and it gives me the same error:

System.UnauthorizedAccessException - Retrieving the COM class factory for remote component with CLSID {2B72133B-3F5B-4602-8952-803546CE3344} from machine [...] failed due to the following error: 80070005 [...]."

Firewall on the remote machine is off. UAC is disabled.

回答1:

You must enable the remote server for remote configuration. Microsoft.Web.Administration uses AHADMIN DCOM service, so this should be open for remote access.

First, make sure you can change AHADMIN properties: https://serverfault.com/questions/242714/how-can-i-enable-ahadmin-properties

Then, follow these steps or use the provided script: http://mvolo.com/connecting-to-iis-70-configuration-remotely-with-microsoftwebadministration/

Also, check you have remote access permissions for AHADMIN using dcomcnfg. See how here http://support.microsoft.com/kb/176799 and here http://help.eprint.net/dcomconfig.htm