Active directory - Ausnahme ausgelöst wurde, durch das Ziel für einen Aufruf

Ich habe eine web-Anwendung in einem separaten server als Active Directory-und das will ich ändern das Passwort eines Benutzers. Der code ist die nächste:

string newPassword = Membership.GeneratePassword(int.Parse(WebConfigurationManager.AppSettings["passLenght"]),
                                int.Parse(WebConfigurationManager.AppSettings["passNonAlpha"]));

DirectoryEntry de = new DirectoryEntry(WebConfigurationManager.ConnectionStrings["ADConnString"].ConnectionString,
WebConfigurationManager.AppSettings["ADAdmin"], WebConfigurationManager.AppSettings["ADAdminPass"]);

DirectorySearcher deSearch = new DirectorySearcher(de);
deSearch.Filter = "(&(objectClass=user) (userPrincipalName=" + name + "))";

SearchResultCollection results = deSearch.FindAll();

if (results.Count == 1)
{
   foreach (SearchResult OneSearchResult in results)
   {
      DirectoryEntry AlterUser = OneSearchResult.GetDirectoryEntry();
      AlterUser.AuthenticationType = AuthenticationTypes.Secure;
      AlterUser.Invoke("SetPassword", newPassword);
      AlterUser.CommitChanges();
      AlterUser.Close();
   }
}

Wenn ich dieses in meiner Entwicklungsumgebung (wo der Active Directory-und web-Anwendung auf demselben server) arbeiten. Aber wenn ich versuche, führen Sie es in der Produktionsumgebung ich bin mit dem nächsten Fehler:

Ausnahme wurde ausgelöst durch das Ziel für einen Aufruf

Was bin ich?

Dank.

EDIT:

Ich könnte gehen tief in die exception-error und ich bekomme diese:

Zugriff verweigert. (Ausnahme von HRESULT: 0 x 80070005 (E_ACCESSDENIED))

  • Bitte können Sie uns die form ADConnString in Ihrer Konfigurationsdatei an. Können Sie mehr Details über die Ausnahme (die Anleitung die es verursachen).
  • Welche Linie wirft die Ausnahme? Anrufen? CommitChanges? Filter? Macht Ihr bei der Suche alle Einträge?
  • Sorry, ich kann nicht geben Sie die Verbindungszeichenfolge für Sicherheitsfragen. Aber ich kann Ihnen sagen, es funktioniert durch die Mitgliedschaft Konfiguration. Jetzt kann ich Ihnen nicht sagen, die Zeile oder der Befehl den Fehler verursacht, werde ich versuchen, zu Debuggen, wenn ich es kann... denkt Daran, es ist eine Produktions-Umgebung...
  • Ich gehe tief in die Fehler ein, bekomme ich dieses: "Zugriff verweigert. (Ausnahme von HRESULT: 0 x 80070005 (E_ACCESSDENIED))". Nach einer kurzen Suche fand ich diesen link social.msdn.microsoft.com/Forums/eu/vsreportcontrols/thread/.... Aber es braucht eine Maschine zurückgesetzt, so werde ich versuchen, wenn ich kann...
InformationsquelleAutor Bargant | 2011-10-26
Schreibe einen Kommentar