Estou usando o System.DirectoryServices.AccountManagement apis para criar um novo usuário / desativar uma conta no Active Directory. Quando estou tentando criar um novo usuário e definir sua senha, m / c gera uma exceção com a mensagem O servidor RPC não está disponível. (Exceção de HRESULT: 0x800706BA). O snippet a seguir é usado para criar e persistir o usuário.
Usuário UserPrincipal = new UserPrincipal (ctx);
user.GivenName="Andrew";
user.Surname="Green";
user.EmailAddress="[email protected]";
user.SamAccountName="agreen";
user.Save () e
user.SetPassword ("Pqw ^ & 12");
user.Save ();
Quando executo isso, o código lança uma exceção assim que tenta definir uma senha. Depois de um pouco de pesquisa na net, eu tentei as seguintes coisas.
Como a tela de resposta é criada sem senha, não há problema de privilégio ou conexão. Eu adicionei o Windows Management Instrumentation (WMI) como exceção ao firewall do Windows em minha máquina AD Assegurei-me de que os seguintes serviços Mapeador de Ponto de Extremidade RPC, Chamada de Procedimento Remoto, Registro Remoto estão sendo executados na máquina do AD. Assegure-se de que a conta usada para conectar-se à máquina do AD tenha a opção Ativar o controle remoto. Eu verifiquei que a porta 135 não está bloqueada na máquina AD A configuração que eu tenho é, tenho caixa b1 executando o Microsoft Windows 7 Professional, que está tentando se conectar a uma caixa b2, executando o Microsoft Windows Server 2008 R2 enterprise. O código c # está sendo executado na estrutura .Net4.5 em b1 e tentando criar uma conta em b2.
Quando eu tentei executar o código da mesma caixa (ou seja, caixa com o AD), fui capaz de criar com êxito a conta com senha, quando eu especifiquei o endereço IP como localhost, mas quando eu especifiquei como m / c ip endereço, falhou com a mesma exceção
Por favor, deixe-me saber o que estou fazendo de errado.
Obrigado
Tags active-directory .net-4.5