Wie löse ich "WILL_NOT_PERFORM" MS ANZEIGE Antworten wenn Sie versuchen, das Kennwort zu ändern in scala w/ die unboundid LDAP SDK?

Ich bin wrestling mit Active Directory, zu versuchen, es zu lassen, mir ein Passwort ändern. Ich habe festgestellt, Tonnen von nützlichen Informationen, aber ich bin noch immer eine permanente Fehlermeldung.

Code:

import com.unboundid.ldap.sdk._
import com.unboundid.util.ssl._


def main(args: Array[String]) : Unit = {

var sslUtil = new SSLUtil( new TrustAllTrustManager() )
var con = new LDAPConnection(sslUtil.createSSLSocketFactory())
con.connect("ldap.example.net", 636)
con.bind("ldapadmin", "adminpasswd")
val newPass = "Jfi8ZH8#k".getBytes("UTF-16LE");
val modRequest = new ModifyRequest("dn: cn=Tester Dude,ou=Lab,ou=Org,ou=Provider,DC=example,DC=net",
  "changetype: modify",
  "replace: unicodePwd",
  "unicodePwd: " + '"' + newPass + '"')

println("\nGoing to try to set password to " + newPass + " with: " + modRequest.toString())

try {
  con.modify(modRequest)
} catch {
  case lde:LDAPException => println("failed LDAPException: " + lde.toString())
}

}

So, ich bekomme da einen Laufzeitfehler:

Gehen, um zu versuchen, um Kennwort festlegen zu [B@6dd1627e mit: ModifyRequest(dn='cn=Tester Dude,ou=Labor,ou=Org,ou=Anbieter,DC=example,DC=net', mods={ERSETZEN unicodePwd})

fehlgeschlagen LDAPException: LDAPException ("resultCode" =53 (unwillig zu führen), errorMessage='0000001F: SvcErr: DSID-031A11E5, problem 5003 (WILL_NOT_PERFORM), Daten 0
', diagnosticMessage='0000001F: SvcErr: DSID-031A11E5, problem 5003 (WILL_NOT_PERFORM), Daten 0
')

So unter die Dinge, die ich kenne die diesen Fehler verursachen können:

  1. Die Verbindung nicht über SSL. (Hier nicht der Fall, und ich habe überprüft, um zu 100% sicher sein, ich bin auf port 636 mit netstat)
  2. Vorbei ein Passwort, das verstößt gegen das Active Directory-Kennwortrichtlinie. (Getestet hab ich die Einstellung, dass eine exakte Kennwort manuell; Sie wird ablehnen, kurze/einfache Passwörter, aber es akzeptiert die, die ich benutze in diesem code)

Ich habe es ausprobiert sowohl mit als auch ohne das zusätzliche Anführungszeichen für das Passwort.

Den meisten nützliche Quelle von Informationen bisher war:

http://www.dirmgr.com/blog/2010/8/26/ldap-password-changes-in-active-directory.html

Aber ich habe erschöpft jedem Vorschlag gibt es (und viele andere Orte).

Ich hab auch schon versucht verschiedene andere Dinge, einschließlich der Einstellung das Kennwort für einen anderen gültigen Benutzer, der manuell Hinzugefügt wurde. (Dies wurde Hinzugefügt, über die sdk auch.)

Anderen Operationen funktionieren. Ich habe entfernt von irrelevanten code, aber ich war in der Lage, such -, Druck-Attribute hinzufügen, und einen Benutzer löschen, kein problem; aber diese Anforderung ändern schlägt fehl. Wenn ich die ModifyRequest zu ändern, einige andere attribute, wie die E-Mail verbunden, die funktioniert auch einwandfrei.

InformationsquelleAutor mattwallace | 2011-07-23

Schreibe einen Kommentar