2012-03-29 5 views
2

Ich möchte Benutzer mit OS authentifizieren. Ich bekomme Benutzername, Passwort als Eingabe von Benutzer & Ich möchte einfach mit os überprüfen, ob dieser Benutzername, das richtige oder falsche Passwort ist.Java OS Authentifizierung

Ich möchte keine LDAP-Authentifizierung durchführen. Nur os Authentifizierung wo mein Programm läuft. Zweiter Sache Programm sollte auf Windows von XP on-wards, Linux & wenn möglich Unix Aromen laufen.

Gibt es eine Möglichkeit, das zu erreichen?

Während googeln ich gefunden: https://github.com/twall/jna

Aber immer noch, um herauszufinden, ob diese Bibliothek für meine Anforderung richtig ist oder nicht

+0

Ich vermute, dass Sie JNA verwenden müssen. Die einzige Alternative, die ich kenne, ist die Schatten-Datei zu lesen (erfordert Zugriff darauf) –

+0

für Linux seine alternative Möglichkeit. Es ist nicht akzeptabel für meinen mgr aus der Datei zu lesen. Und für Windows wie kann ich das tun? – Aniruddha

Antwort

1

Versuchen WAFFLE windows Authentication framework

Schritte für die Windows-Authentifizierung mit WAFFE Rahmen

Schritt1. Download folgende Gläser a.jna.jar b.waffle-jna.jar

Schritt 2: Legen Sie diese Gläser in Ihrer Klasse Ordner

Schritt 3: Mit Waffel unten in Ihrem Java-Code ist das Code-snippet

public boolean isValidUser(String username , String password){ 
    WindowsAuthProviderImpl authenticationProvider = new WindowsAuthProviderImpl(); 
    IWindowsIdentity loggedOnUser = authenticationProvider.logonUser(username, password); 
    if(!loggedOnUser.isGuest()){ 
     return true; 
    } 
    return false; 
} 

hoffe, das hilft !!

+0

danke. lass mich versuchen – Aniruddha

+0

es funktioniert. Danke ich getestet auf Windows 7 – Aniruddha

+0

haben Sie eine Ahnung, wie man Authentifizierung mit os, wenn os ist Linux – Aniruddha

0

Verwenden Sie GSS-API mit Kerberos, wenn Sie sich in einer Active Directory-Umgebung befinden.

+0

nicht auf der Suche nach AD-Authentifizierung trotzdem danke für den Vorschlag. Wird bei der Authentifizierung mit der Anzeige berücksichtigt – Aniruddha