Windows User != Server User auslesen

Status
Nicht offen für weitere Antworten.

schmalhans

Bekanntes Mitglied
Hmm...

ich stoß seit geraumer Zeit auf ein unschönes Problem und zwar folgendes:

Ich habe auf einem externen Server eine WebApplikation laufen und beim Login möchte ich, dass
der Username ausgelesen wird, damit es der User nicht selbst eintragen muss.

Ich habe das mit

Code:
String winuser = System.getProperty("user.name");

probiert. Nur da diese Applikation auf dem Server läuft und nur über Internet Explorer aufgerufen wird, zeigt
er mir hier den Serveruser an und nicht den User der von seinem System aus die App aufruft.

Habe es auch mit

Code:
String winuser = request.getUserPrincipal().getName();

probiert. Funktioniert auch nicht.

Finde im API/Internet immer nur den Verweis auf meine 1. Lösung, welche ja nicht funktioniert.


Wie kann ich das umsetzen?

Gruß
schmalhans
 

schmalhans

Bekanntes Mitglied
bin kein wirklicher Fan von JS.
Wäre mir lieber wenn man das irgendwie anders hinkriegt.

ist request.getRemoteUser() eine Lösung? Oder zeigt die wieder was anderes an?
[edit]ok .getRemoteUser() ist keine Lösung. Funktioniert nicht[/edit]


hat jemand ne idee?
 

Bleiglanz

Gesperrter Benutzer
man kann auf dem Server normalerweise nicht den lokalen Benutzernamen eines Clients abfragen

welche Clients hast du? WIN??

dann google mal nach "Single-Sign-On Java", das ganze ist nicht so einfach, weil man die NTLM-Funktonen des IE ausnutzen muss...

Code:
String winuser = request.getUserPrincipal().getName();
Das geht erst NACH erfolgreicher Authentifizierung :)
 

schmalhans

Bekanntes Mitglied
ja meine Clients sind alles WIN.

es müsste doch ne möglichkeit geben die win-variable "username" vom client auszulesen?

mit dem single-sign-on java google hab ich nix passendes gefunden.
 

Bleiglanz

Gesperrter Benutzer
>>es müsste doch ne möglichkeit geben
>>die win-variable "username" vom client auszulesen?

Nein, das sollte es ÜBERHAUPT nicht geben, denk mal drüber nach

Du brauchst ein Modul, das den Kerberos / NTLM (oder NTLMv2 oder wie das heisst) Authentifizierungs-Handshake-Tanz mit dem InternetExplorer abwickeln kann, das geht so ohne weiteres nicht

Das ganze ist recht kompliziert:

http://www.microsoft.com/germany/technet/datenbank/articles/900325.mspx

und möglicherweise brauchst du eine kommerzielle Lib, z.B.

http://bofriis.dk/

hab allerdings keine Ahnung wie gut sowas funktioniert!
 

Oskar

Aktives Mitglied
Tach

mal ein anderer Vorschlag wobei ich nicht weiss ob das nicht auf den Holzweg führt.

Wenn es sich bei der Server Applikation machen lässt dann bau doch eine Art Applet ein (wenn es eine Page ist, wenn nicht musst du den download und das Ausführen anders triggern).

Übergebe der Client applikation eine eineindutige Kennung die genau dieser einen Session auf dem Server zu geordnet ist. Mit der Client App solltest du dann ja den Benutzernamen auslesen können und dann schickst du ihn wieder gemeinsam mit der Id an den Server zurück.

Wie gesagt ist nur eine schnelle Idee wie ich versuchen würde das zu machen.
 

schmalhans

Bekanntes Mitglied
oha, das klingt gar nicht mal verkehrt.

habe auch schon in die richtung gedacht. nur nicht ganz so weit. werde das mal probieren.
 

Mag1c

Top Contributor
Hi,

da wäre die JavaScript-Variante wahrscheinlich einfacher gewesen (größere Akzeptanz, performanter als Applet).

Gruß
Mag1c
 

Bleiglanz

Gesperrter Benutzer
Hmm
For security reasons, no existing browsers or applet viewers let applets read the following system properties.

"java.class.path" Java classpath
"java.home" Java installation directory
"user.dir" User's current working directory
"user.home" User home directory
"user.name" User account name
Ob man mit Javascript wohl den "user.name" rauskriegen kann?
 

Bleiglanz

Gesperrter Benutzer
Ach ja:

was würde mich hindern, schnell einen Windows-Stand-Alone Host aufzusetzen, einen Benutzer einzurichten der genauso heisst wie mein Vorgesetzter und dann mit dem IE auf die Seite zu gehen?

so richtig gut ist das alles nicht, es würde für eine automatische Anmeldung doch nicht ausreichen, einfach die Java System Property "user.name" zu verwenden?

Nochwas: welchen externen Server hast du denn? Wenn das zufällig BEA, Oracle oder Websphere ist - die sollten SSO schon beherrschen?
 

schmalhans

Bekanntes Mitglied
ja JS wäre da wohl das beste.
Gibs da ne möglichkeit? me ist JS-noob


@bleiglanz: die server hören auf den schönen namen oracle. SSO ist nich so ganz einfach
 

Mag1c

Top Contributor
Habe eben mal ein wenig gegoogelt ... es scheint also auch unter JS keine Möglichkeit zu geben. Hab jedenfalls eine Reihe von JS-Seiten besucht, die alles mögliche über mein System angezeigt haben ... nur eben den Usernamen nicht.

Vielleicht solltest du dich doch darauf beschränken, den Usernamen in einem Keks zu speichern. Dann müssen die User den Namen genau einmal eingeben und danach nicht mehr.

Gruß
Mag1c
 

schmalhans

Bekanntes Mitglied
Hmm....

kann mich mit der Keks-Backerei in diesem Fall nicht ganz zufrieden geben. Wäre zwar aus technischen Grund eigentlich ausreichend, würde aber einfach aus Neugierde gern nen anderen Weg finden.

Werd mal weitersuchen. Danke für eure Anregungen wenn jemand noch Ideen hat: immer raus damit! ;)

Gruß
schmalhans
 

Bleiglanz

Gesperrter Benutzer
auf dem Oracle OAS gibts auf jeden Fall ein SSO Modul, keine Ahnung ob das mit dem Active Directory abgeglichen werden kann

wenn ihr keine Windows-Domäne habt, dann würde ich das ganze canceln und jeden User selbst einloggen lassen.

P.S.: ist die Benutzerdatenbank irgendwie mit der Domäne abgeglichen? Welchen Sinn hat es, wenn man den lokalen Usernamen "automatisch" verwendet?
 

schmalhans

Bekanntes Mitglied
also kurz mal zur erklärung,

es geht nicht um den sso, hab ich eigentlich auch nie erwähnt. sorry wenn ich mich hier falsch ausgedrückt habe. :oops:

ich möchte nur bei meiner webapplikation den win-username auslesen und den in das loginfeld schreiben, so dass der user nur noch sein pw in das pw-feld schreiben muss. also nur komfort.
 

schmalhans

Bekanntes Mitglied
Was macht eigentlich request.getRemoteUser() genau?


Weil das liefert mir "null" zurück. wäre das nicht ne möglichkeit?
 

Bleiglanz

Gesperrter Benutzer
nein hab ich doch schon gesagt: das geht erst NACH der Authentifizierung

ums kurz zu machen: was du willst geht nicht - oder nur mit grossem Aufwang - also vergiss die Idee
 

KSG9|sebastian

Top Contributor
ich weiß auch net wirklich, was das ganze mit komfort zu tun hat ...

Ich tippe lieber kurz meinen Benutzernamen ein, als dass ich auf irgendein bescheidenes Applet oder nen JavaScript warten muss, welcher zuletzt noch blockiert wird
 

schmalhans

Bekanntes Mitglied
hehe,

da muss ich 2 wohl recht geben.
Dachte nur ich frag mal nach, bevor ich es gleich abhake oder ewig danach google.

werde das nun auch ganz rausnehmen.

Danke an alle die ihre Ideen gepostet haben! Und danke für die Geduld, Bleiglanz. ;)

Gruß
schmalhans
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
I gemeinsame Config-Datei für alle Windows-User Java Basics - Anfänger-Themen 5
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
izoards Prunsrv - Windows Service - .bat file starten Java Basics - Anfänger-Themen 84
P Unterschied Installation von zipped JDK vs Installer-JDK (auf Windows)? Java Basics - Anfänger-Themen 2
nbergmann Umgebungsvariablen einstellen unter Windows 7 klappt nicht Java Basics - Anfänger-Themen 2
B Probleme mit Zugriff auf Dateisystem Windows 10 ( jFileChooser) Java Basics - Anfänger-Themen 17
OSchriever Jar-Programm läuft auf Windows aber nicht auf Linux(Raspberri Pi4) Java Basics - Anfänger-Themen 22
F Terminal Windows per Befehl schließen? Java Basics - Anfänger-Themen 9
U BestPractise für Deployment unter Windows gesucht Java Basics - Anfänger-Themen 12
N Best Practice How can I creat a programm with java under windows 10 in order to open an spreadsheet in libreoffice calc format Java Basics - Anfänger-Themen 11
P Wie für EIN Java Programm von 64bit Java (=Standard) auf 32bit Java Installation (Windows) umschalten? Java Basics - Anfänger-Themen 6
G Wofür benötigt man die Umgebungsvariablen sowohl in Windows 10 als auch in Mac OS Catalina Java Basics - Anfänger-Themen 19
S Windows printerqueue mit Java löschen Java Basics - Anfänger-Themen 3
F Windows in LinkedList registrieren Java Basics - Anfänger-Themen 3
F Java auf Windows Konsole ausführen Java Basics - Anfänger-Themen 1
L Linux Befehle unter Windows in Eclipse ausführen Java Basics - Anfänger-Themen 3
J Windows Builder auf Eclipse portable Java Basics - Anfänger-Themen 1
S JDK 9 für Windows 32 bit installiert, aber es funktioniert nix Java Basics - Anfänger-Themen 6
E Compiler-Fehler Javac Windows vs Ubuntu /Script vs Konsole Java Basics - Anfänger-Themen 4
G sql server connection mit windows authentication Java Basics - Anfänger-Themen 2
C GUI Programmierung unter Windows mit Java womit? Java Basics - Anfänger-Themen 11
C Exlipse & SWT Windows Tools etc Java Basics - Anfänger-Themen 8
T Windows service erstellen Java Basics - Anfänger-Themen 1
J fehler nach windows update Java Basics - Anfänger-Themen 44
B Windows Service erstellen Java Basics - Anfänger-Themen 2
D Umgebungsvariable Pfad javaw.exe für Programmstart auf Windows Java Basics - Anfänger-Themen 1
J Windows Version herrausfinden Java Basics - Anfänger-Themen 3
A Testprogramm in java oder javascript für Windows Anwendung? Java Basics - Anfänger-Themen 1
C Java stellt unter Windows keine Umlaute dar Java Basics - Anfänger-Themen 9
S Prüfen ob bestimmter Ordner geöffnet ist (Windows XP) Java Basics - Anfänger-Themen 5
W JDK installieren JDK Installieren | Windows 8 | Hilfe Java Basics - Anfänger-Themen 8
Martin2606 Erste Schritte Fragestellung zu Windows Embedded 6.5 auf Handhelds Java Basics - Anfänger-Themen 6
J Ordner unter Windows Verstecken Java Basics - Anfänger-Themen 2
U Einbetten von Windows Painter in einem Browser Java Basics - Anfänger-Themen 1
D Viele grafische unterschiede von Windows xp zu Windows 7 Java Basics - Anfänger-Themen 3
F Erste Schritte Unter Windows programmieren und dann auf Linux laufen lassen Java Basics - Anfänger-Themen 4
Z Gleiches Verzeichnis für class und java unter Windows Muss? Java Basics - Anfänger-Themen 11
FrankR2 Grundsätzliches Verständnisproblem: Java 32/64-bit; Windows 7/8, 32/64-bit-System Java Basics - Anfänger-Themen 5
Bluedaishi Dateien Lassen sich unter windows nicht löschen Java Basics - Anfänger-Themen 8
W Datei wird aus resources unter Windows nicht kopiert Java Basics - Anfänger-Themen 1
K Windows Symbolleiste Icons hinzufügen Java Basics - Anfänger-Themen 7
H Windows Task erstellen Java Basics - Anfänger-Themen 7
D Java geht auf windows 64 bit nicht. Java Basics - Anfänger-Themen 5
K Windows Kontextmenü verändern Java Basics - Anfänger-Themen 5
M Wann PATH und wann JAVA_HOME in Windows System 7 setzen? Java Basics - Anfänger-Themen 2
S Von Windows 7 auf Windows 8? Java Basics - Anfänger-Themen 3
F jabva 7.21 läuft nicht auf windows server 2012? Java Basics - Anfänger-Themen 9
T Variable in Windows Kommandozeile schreiben Java Basics - Anfänger-Themen 4
P Java-Konsolenanwendung mit Parameterübergabe (Windows) Java Basics - Anfänger-Themen 3
G Java unter Mac = schlecht | Windows = gut? Java Basics - Anfänger-Themen 14
M datei startet unter windows 7 nicht Java Basics - Anfänger-Themen 12
J Windows Maus-Zeigerbeschleunigung aktivieren/deaktivieren - Mit Java möglich? Java Basics - Anfänger-Themen 2
N .jar läuft nicht unter Windows 7 Starter Java Basics - Anfänger-Themen 4
FrozeTee .java Dateien unter Windows 7 werden nicht angezeigt Java Basics - Anfänger-Themen 7
S .jar/java Datei ausführen Windows 7 64bit?! Java Basics - Anfänger-Themen 7
P Windows vs. Ubuntu verschiedener Output Java Basics - Anfänger-Themen 31
A Laufende Applikation hindert Windows am herunterfahren Java Basics - Anfänger-Themen 7
S Umgebungsvariablen unter Windows XP Java Basics - Anfänger-Themen 6
A Windows Builder Java Basics - Anfänger-Themen 4
M Windows Aktionen abfangen Java Basics - Anfänger-Themen 3
Z Umgebungsvariable PATH-Umgebungsvariable unter Windows 7 Java Basics - Anfänger-Themen 27
B Programm startet in IDE,aber nicht in Windows Java Basics - Anfänger-Themen 4
R Umlaute Mac -> Windows Java Basics - Anfänger-Themen 2
S Windows Registry nur lesen Java Basics - Anfänger-Themen 3
E Input/Output Linux datei in Windows zeilenweise einlesen Java Basics - Anfänger-Themen 4
T Windows Fenster Schließen Java Basics - Anfänger-Themen 4
F Frage zu windows/Usbsticks... Java Basics - Anfänger-Themen 2
D Pfadangabe unter windows Java Basics - Anfänger-Themen 7
S Erste Schritte Probleme Editor (Windows) Java Basics - Anfänger-Themen 13
B Input/Output Textdatei einlesen Windows / Linux Java Basics - Anfänger-Themen 2
M windows lautstärkeregler java Java Basics - Anfänger-Themen 2
C ASCII CODES in Linux anders als auf Windows? Java Basics - Anfänger-Themen 4
maddin86 3 Dateien gleichzeitig speichern in dynamisches Benutzerverzeichnis (Windows) Java Basics - Anfänger-Themen 4
M isHidden() von java.io.File liefert immer true in Windows Java Basics - Anfänger-Themen 3
M Externes Programm maximieren in Windows Java Basics - Anfänger-Themen 9
J Java Tool unter Windows ausführen Java Basics - Anfänger-Themen 8
J Windows Ausführen öffnen Java Basics - Anfänger-Themen 13
C Windows Java unter Unix Java Basics - Anfänger-Themen 2
J JAVA_HOME und path setzen bei windows 7 Java Basics - Anfänger-Themen 5
A Mit Java Mozilla/Windows steuern! Java Basics - Anfänger-Themen 3
S Betriebssystem - Ordner erstellen auf Windows & Linux Java Basics - Anfänger-Themen 3
D nur JOptionPane im Windows Style Java Basics - Anfänger-Themen 3
D Windows 7 + jre = Fehler Java Basics - Anfänger-Themen 2
J Classpath bestimmen, unter Windows 7 Java Basics - Anfänger-Themen 2
F Programm sehr langsam. Windows 7? Java Basics - Anfänger-Themen 23
H Datei in den Windows-Programmordner kopieren Java Basics - Anfänger-Themen 5
H Windows Console Ausgabe ? Java Basics - Anfänger-Themen 3
M Java einrichten unter Windows 7 Java Basics - Anfänger-Themen 12
T Windows 7 - Umgebungsvariable ändern Java Basics - Anfänger-Themen 11
M .jar datei starten (windows 7) Java Basics - Anfänger-Themen 2
U JDK auf Windows 7 Java Basics - Anfänger-Themen 17
S Befehl "javac" funktioniert und Windows 7 nicht? Java Basics - Anfänger-Themen 3
H windows 7 javac/path nicht gefunden Java Basics - Anfänger-Themen 3
C Windows Look and Feel unter Linux Java Basics - Anfänger-Themen 10
C laufende Windows Prozesse auslesen/ermitteln Java Basics - Anfänger-Themen 3
JFeel-x renameTo windows XP geht gar nicht? Java Basics - Anfänger-Themen 5
M BufferedReader.readline() Unix/Windows Zeilenumbruch Java Basics - Anfänger-Themen 4
M prozess-managment Windows java Java Basics - Anfänger-Themen 4
L Windows-Umgebungsvariablen mit Java setzen? Java Basics - Anfänger-Themen 11
B Java-Anwendung im Windows Design Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben