2016-06-28 13 views
1

Diese Frage wurde mehrmals gestellt, aber bis jetzt habe ich keine Antwort gesehen, die unser Problem ähnlich sieht.Der Zugriff wurde verweigert. (Ausnahme von HRESULT: 0x80070005 (E_ACCESSDENIED)) Hinzufügen von Active Directory-Konto

Zuerst haben wir zwei doppelte Umgebungen. Beide Server führen Windows 2012 R2-Server mit Active Directory für die Verwendung mit unserem Active Directory-Verbunddienst aus.

Unser System besteht aus einem Webportal, das über WCF-Dienste kommuniziert. Von diesem haben wir einen Sicherheits-WCF-Dienst, mit dem wir neue AD-Konten erstellen können. Das funktioniert derzeit perfekt auf unsere Entwickler und Testmaschinen (althought diese denselben AD und ADFS Maschinen verwenden), aber in der Produktionsumgebung, wenn wir rufen die gleiche Funktion einen neuen Benutzer erstellen wir die folgende Fehlermeldung erhalten:

02:07:24 [17] ERROR UserService !!! ERROR !!! System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.UnauthorizedAccessException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) --- End of inner exception stack trace --- at System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args) at System.DirectoryServices.AccountManagement.SDSUtils.SetPassword(DirectoryEntry de, String newPassword) at System.DirectoryServices.AccountManagement.ADStoreCtx.SetPassword(AuthenticablePrincipal p, String newPassword) at System.DirectoryServices.AccountManagement.SDSUtils.InsertPrincipal(Principal p, StoreCtx storeCtx, GroupMembershipUpdater updateGroupMembership, NetCred credentials, AuthenticationTypes authTypes, Boolean needToSetPassword) at System.DirectoryServices.AccountManagement.ADStoreCtx.Insert(Principal p) at System.DirectoryServices.AccountManagement.Principal.Save() at UserService.Implementation.LDAPManager.CreateUser(String logon, String firstName, String lastName, String userPassword, String EmailAddress) in e:\Bld\1\User Service\UserService\Implementation\LDAPManager.cs:line 60 at UserService.createNewUser(NewUserValueObject newUser) in e:\Bld\1\User Service\UserService\UserService.cs:line 127

Wie ich bereits erwähnt habe, haben wir uns die AD-Seite angesehen und können nichts Offensichtliches finden, aber ich bin mir sicher, dass du großartige Op's und Dev's mir bald etwas anderes erzählen wirst.

Antwort

0

Sie müssen überprüfen, auf welchem ​​Konto der Dienst ausgeführt wird und welche Berechtigungen er hat. Ich hatte kürzlich ein ähnliches Problem, als ich versuchte, einen Dienst als ein Gruppen-Managed-Service-Konto auszuführen, und das Dienstkonto hatte keinen Zugriff darauf, Computer von der Domäne hinzuzufügen/zu entfernen. Er musste den Zugriff auf die kontrollierende Sicherheitsgruppe des Gruppenverwaltungsdienstkontos delegieren.

Der folgende Artikel ist eine ziemlich gute Referenz:

https://richardstk.com/2013/11/29/create-a-dedicated-account-to-join-computers-to-a-domain/

erstellen SPN Um zu vermeiden, für die ich das Dienstkonto benötigen die verschiedenen OU, zu verwalten warf ich sie nur in eine Sicherheitsgruppe ihrer eigenen und delegierter Zugriff basierend auf der Sicherheitsgruppe. Die Laufleistung kann hier variieren, abhängig von Ihrer Situation und davon, ob Sie das Service-Konto für die Ausführung Ihres Dienstes verwenden oder nicht.

Verwandte Themen