PDA

View Full Version : jt400 Anmeldedaten



lyrics
07-08-06, 13:05
Hallo Zusammen,

vielleicht kann mir hier jemand helfen. Wenn ich bei der Connection keine Anmeldename angebe, müssen diese vom User eingegeben werden. Besteht die Möglichkeit den Anmeldenamen über das jt400 zu ermitteln??

Besten Dank für eure Hilfe

Lyrics

Fuerchau
07-08-06, 13:53
Das ist doch Sinn und Zweck der Anmeldung.
Entweder der User gibt was ein oder das Programm gibt was vor.
Ermitteln kann man da nix ?!?!

RobertPic
07-08-06, 13:54
In der jt400-API habe auch die Schnelle nichts gesehen (ev. die Connectionabttribute), aber es geht auch anders:



Connection conn = DriverManager.getConnection("jdbc:as400://192.168.x.x/TSTLIB;extended metadata=false");
...

DatabaseMetaData dbMeta = conn.getMetaData();

System.out.println("Username: " + dbMeta.getUserName());




Robert P.

Fuerchau
07-08-06, 14:16
Ein UserName kann erst korrekt abgefragt werden, wenn die Anmeldung bereits erfolgt ist !

Der Zugriff auf die Information erzwingt bereits ein Anmelden des Users (per Dialog), sodass ich anschließend erfragen kann, mit welchem User denn angemeldet wurde.
Ein Passwort kann ich nicht auswerten.

Also:
Vor einer Anmeldung kann ich nicht automatisiert "erfragen" womit ich mich denn anmelden soll.
Wenn dies möglich wäre, kann ich eigentlich sämtliche Berechtigungskonzepte vergessen und verwende für alles und jedes immer den QSECOFR und im Windows den Adminstrator ;)

RobertPic
07-08-06, 14:35
Um hier Missverständnissen aufzuklären:

Ein UserName kann erst korrekt abgefragt werden, wenn die Anmeldung bereits erfolgt ist !


Die Zeile


Connection conn = DriverManager.getConnection("jdbc:as400://192.168.1.10/TSTPCH;extended metadata=false");
....


erzeugt die AS/400-Verbindung und bringt auch die AS/400-Anmeldung. Der gepostete Code holt den User also erst nach der Anmeldung.

etwas OffTopic:
Wir arbeiten aber nicht auf diese Art - im Gegenteil - bei uns funktioniert kein Userpasswort für die ODBC/JDBC-Schnittstelle.

Bei JDBC-Anwendungen (z.B. OpenOffice) benötigt der (Windows-) User nicht einmal Adminrechte und kann sich den JDBC-Treiber installieren und an die Datenbank kommen - wenn er ein Passwort hat.

Robert P.

lyrics
07-08-06, 14:38
Jup das meinte ich hätte ich auch selber drauf kommen können danke @Robert.

Ist natürlich klar, das man sich erst anmelden muss bevor ich den namen ermitteln kann. ich wollte lediglich wissen wie ich diesen nach der anmeldung herausbekommen.