2017-07-20 2 views
0

Ich arbeite derzeit an der Implementierung einer LDAP-Anmeldung für Benutzer in meinem Unternehmen.Rails LDAP Ungültige Anmeldeinformationen

require 'net/ldap' 
ldap = Net::LDAP.new(:host => '10.0.0.32', :port => 389) 
if ldap.bind(:method => :simple, :username => "ttyler", 
      :password => "********") 
    # authentication succeeded 
else 
    # authentication failed 
    p ldap.get_operation_result 
end 

Dieser Code läuft aber ich bekomme den Fehler unten.

#<OpenStruct extended_response=nil, code=49, error_message="80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 52e, v1db1\u0000", matched_dn="", message="Invalid Credentials"> 

Meine aktuelle Maschine ist auf der Domäne, die mein Geschäft gehört, und ich habe ein nslookup um sicherzustellen, dass der Host korrekt war - es ist. Ich weiß, dass meine Referenzen nicht falsch sind, weil ich sie den ganzen Tag benutze. Weiß jemand, warum das passieren würde?

Ich versuchte auch den Namen der Domain, die ********. Local ist und das hat nicht funktioniert. Irgendwelche anderen Ideen?

+0

Wenn Sie sich anmelden, melden Sie sich wahrscheinlich nicht nur bei einem Server an, sondern bei einer Domäne. Möglicherweise müssen Sie eine Basis-Parameterzeichenfolge und möglicherweise andere Optionen angeben. Dieser Thread zeigt eine util-Klasse, die ich erfolgreich verwendet habe: https://stackoverflow.com/a/45015896/23915 – Unixmonkey

Antwort

0

Sie müssen das Attribut: base mit Ihrem Domainnamen angeben. f.e. Wenn Ihre Domäne beispiel.local ist, lautet Ihre Basis "dc = example, dc = com".

Sie müssen auch den vollständigen Pfad Ihres Benutzers im Verzeichnis angeben. f.e. Der Serveradministrator ist normalerweise "cn = admin, dc = example, dc = local".

Ein regulärer Benutzer wird im Allgemeinen in den Benutzern gefunden wie: "cn = ttyler, ou = Benutzer, dc = Beispiel, dc = com".

Verwandte Themen