Windows Login Name mit JS ?
Markus
- javascript
Guten Morgen Forum !
Ich häte mal eine kniffelige Frage :)
Ist es irgednwie möglich an den Loginnamen des aktuell angemeldeten Windows-Benutzer ranzukommen ?
Mit serverseitigen Technologien wird das bestimmt schwer, aber ich dachte da an JS ?
Ich benutze hier Java Servlets und JavaScript.
Im Notfall würde vielleicht auch noch CGI gehen.
Gruss
Markus
Hi,
Ist es irgednwie möglich an den Loginnamen des aktuell angemeldeten Windows-Benutzer ranzukommen ?
selbstverständlich nicht.
Mit serverseitigen Technologien wird das bestimmt schwer,
Nein, unmöglich. Es sei denn, Du kennst die Clients bzw. hast vom Server aus von HTTP verschiedene Zugriffsmöglilchkeiten.
Cheatah
Selbstverständlich ist das nicht.
ASP und VB können es
Aber das ist eben Microsoft Schiene
Hi,
Selbstverständlich ist das nicht.
doch, ist es.
ASP und VB können es
Nur unter den von mir genannten Bedingungen, oder natürlich wenn diese Techniken auf dem entsprechenden Client laufen.
Aber das ist eben Microsoft Schiene
Auch Microsoft kann nicht zaubern.
Cheatah
Ich hätte ja nicht gefragt, wenn nicht ein Active Directory Server im Intranet vorhanden wäre.
Denn genau darum dreht es sich.
Eigentlich ist es doch nicht besonders schwer auf der Clientseite den Benutzernamen auszulesen.
Windows speichert den eh in einer Umgebungsvariable.
Warum also sollte es also so unmöglich sein mit JS Zugriff darauf zu haben ?
( Ausser natürlich Sicherheitsgründe )
Hi,
Ich hätte ja nicht gefragt, wenn nicht ein Active Directory Server im Intranet vorhanden wäre.
Denn genau darum dreht es sich.
wenn Du Ersatzreifen kaufen gehst, verschweigst Du dann auch, dass Du welche für einen Panzer suchst? Eine derartige Information ist _immens_ wichtig! Wie soll Dir jemand helfen können, wenn Du sowas nicht gleich dazu sagst?
Eigentlich ist es doch nicht besonders schwer auf der Clientseite den Benutzernamen auszulesen.
Mit einer Technologie, die schon innerhalb der aktuellen Applikation nur sehr begrenzt arbeiten darf, ist es _sehr_ schwer.
( Ausser natürlich Sicherheitsgründe )
Wieso, was braucht es denn mehr?
Cheatah
Inwiefern ändert die Tatsache, dass ein ActiveDirectory im Einsatz ist, denn die Angelegenheit ?
Garnicht !
Die Umgebungsvariable wird gesetzt egal ob du zu Hause an deiner lokalen Maschine sitzt, oder in einem Firmennetz mit Domaincontroller und 1000000 Benutzern.
Hi,
Inwiefern ändert die Tatsache, dass ein ActiveDirectory im Einsatz ist, denn die Angelegenheit ?
eventuell besteht dadurch eine Möglichkeit.
Garnicht !
Wenn Du das alles sooo genau weißt, wieso fragst Du dann?
Die Umgebungsvariable wird gesetzt egal ob du zu Hause an deiner lokalen Maschine sitzt, oder in einem Firmennetz mit Domaincontroller und 1000000 Benutzern.
Erstens ist das nicht richtig; sie wird nämlich beispielsweise nicht gesetzt, wenn man kein Windows verwendet. Zweitens ist es nicht nur nötig, dass die Umgebungsvariable gesetzt ist - man muss auch darauf _zugreifen_ können. Und das geht mit JavaScript _nicht_. Auf anderen, in einem Intranet möglicherweise vorhandenen Wegen, vielleicht schon.
Cheatah
Lieber Markus,
Ich hätte ja nicht gefragt, wenn nicht ein Active Directory Server im Intranet vorhanden wäre.
woher sollen wir das vor diesem Posting wissen?
Denn genau darum dreht es sich.
woher sollen wir das vor diesem Posting wissen?
Eigentlich ist es doch nicht besonders schwer auf der Clientseite den Benutzernamen auszulesen.
Windows speichert den eh in einer Umgebungsvariable.
echo %USERNAME%
Warum also sollte es also so unmöglich sein mit JS Zugriff darauf zu haben ?
JScript kann es vielleicht, schau mal in der MSDN oder in der Knowledge Base nach.
Freundliche Grüsse,
Vinzenz
Hi,
( Ausser natürlich Sicherheitsgründe )
Weil diese u.a. auch eine Applet-basierte Lösung verhindern (bzw. erschweren***), in welcher z.B. vom Applet der Rückgabe-Wert von <System.getProperty("user.name")> auf geeignete Weise an den Server übermittelt wird. Siehe auch: http://java.sun.com/sfaq/ und http://java.sun.com/sfaq/#props
***: Denkbar wäre natürlich die vom Browser für die Applet-VM definierten Sicherheitskonfigurationen zu verändern (bei Opera z.B. <Opera.policy> unter OPERA_HOME/classes. Dies setzt 1) jedoch einen Zugriff auf diese voraus und bedeutet 2) zusätzliche Anforderungen an das Deployment-/Konfigurationsmanagement im Intranet.
Viele Grüße,
Martin Jung
Hallo Markus,
Aber das ist eben Microsoft Schiene
Du möchtest einen Windows-Benutzer herausfinden.
Der Hersteller von Windows heißt Microsoft.
Also kannst Du ohne Bedenken komplett auf die Microsoft-Schiene setzen :-)
In einem Intranet kannst Du so etwas umsetzen.
Freundliche Grüsse,
Vinzenz
Ist es irgednwie möglich an den Loginnamen des aktuell angemeldeten Windows-Benutzer ranzukommen ?
Im Intranet und mit IE: wahrscheinlich ja. Aber Internet: vermutlich macht das nicht mal der IE mit...
aber ich dachte da an JS ?
JS = JavaScript oder JS = JScript?
Also je nach Windows-Version wird wohl der Windows Scripting Host installiert sein... Darüber wäre das prinzipiell mit JScript oder VBS wohl möglich.
Allerdings gibt es Sicherheitszonen im Internet Explorer (und nur im IE wird das laufen), die regeln, was eine Website aus dem Internet und was eine aus dem Intranet machen darf.
Insofern wird es dann vermutlich auch an den Rechten scheitern.
Aber vom Ansatz her sollte das wohl so irgendwie funktionieren:
WScript.Echo( "UserName = ", WshNetwork.UserName );
(Windows benutze ich nicht so oft, darum bin ich nicht ganz sicher).
Gruß, rob