Hmm,
Zitat Zitat von benwisch
Code:
    if (0 != (rc = eimSetConfiguration(1, NULL, NULL, NULL, 0, err)))
Daß Du damit das EIM-System konfugurierst, hast Du ja schon heruasgefunden... Das selbe allerdings hier:
Zitat Zitat von benwisch
Code:
    if (0 != (rc = QsySetEIMConnectInfo( QSY_EIM_CONFIG, connectInfo, err)))
Das ist nix, was ein normales Anwendungsprogramm, das einen EIM-Lookup machen will, tun müßte. Stellt man übrigens leicht daran fest, daß das nur Leute mit *SECADM und *ALLOBJ aufrufen dürfen...Warum Du beim eimConnect() den genannten Fehler bekommst, kann ich mir nur dadurch erklären, daß Dein Server-Job, der ja den eimConnect() versucht, kein Ticket irgendwoher hat. In der Theorie geht das mit Kerberos Delegation ("horizontales SSO"), aber ob das praktisch geht, keine Ahnung. Die Doku hält sich dazu allerdings recht bedeckt - "the default credentials are used"; welche auch immer das sind. Da müßte man sich vermutlich näher einlesen. Nichtdestotrotz ist das trotzdem problematisch, weil...:
Zitat Zitat von benwisch
Der EIM läuft bei uns auf einer anderen AS/400. Unser admin stellt im OpsNav einen Benutzernamen und ein Passwort für den Zugriff ein. Der wird scheinbar gespeichert und bei jeder Anfrage an den EIM (bei Anmeldung mit Client-Access) verwendet.
Ja, irgendwie mußt Du dich ja beim EIM-Server authentifizieren. Irgendeinen User muß es also geben. Der braucht nur Berechtigung für die "Berechtigungsnachweissuchfunktion", wie es IBM im deutschen iSeries Navigator nennt. Wenn Du das Ticket des Users, der sich mit Deinem Client zu Deinem Server verbindet, nehmen würdest, müßtest Du im EIM jeden User, der sich potentiell anmelden können soll, für diese Berechtigungsnachweissuchfunktion berechtigen. Auch nicht so der Hit, oder?
Zitat Zitat von benwisch
Genau diesen bräuchte ich für meinen Aufruf auch, will aber nirgendwo User und Passwort ablegen müssen. Der Serverdienst soll schließlich im Hintergrund laufen. Gibt es eine Möglichkeit sich den User irgendwie zu holen ?
Irgendwo mußt Du tatsächlich das Kennwort hinterlegen... wo soll es der Server sonst auch herbekommen?! Was meinst Du mit "User holen"? Welchen User? Im Zweifel brauchst Du eh noch das Kennwort...
Es gibt übrigens ein ausgezeichnetes Rotbuch (SG24-6975-00) zu dem ganzen Zeug.