Dieses Kapitel behandelt folgende Themen:
Der Natural RPC unterstützt auch Natural Security in Client/Server-Umgebungen, wobei Security auf einer (oder beiden) Seiten aktiv sein kann.
Allgemeine Informationen finden Sie in der Natural Security-Dokumentation.
Informationen darüber, wie Sie die Verwendung von Natural RPC-Aufrufen (Remote Procedure) in einer Client/Server-Umgebung kontrollieren können, finden Sie unter Protecting Natural RPC Servers and Services in der Natural Security-Dokumentation.
Der Client muss die Anmeldedaten zusammen mit der RPC-Anforderung senden. Die Anmeldedaten bestehen aus Benutzerkennung, Passwort und Library.
Benutzerkennung und Passwort werden zur Authentifizierung des Clients auf der Natural RPC Server-Seite verwendet.
Die Library wird verwendet, um eine durch Natural Security geschützte Anmeldung bei der angeforderten Library durchzuführen.
Die folgenden Ausführungen gelten nur für Natural RPC-Clients. Für EntireX RPC-Clients, die auf einen durch Natural Security geschützten Natural RPC Server zugreifen, lesen Sie bitte die Dokumentation des EntireX Developer's Kit.
Um Anmeldedaten an den Natural RPC Server zu senden, muss die Logon-Option verwendet werden. Siehe Betrieb einer Natural RPC-Umgebung , Logon-Option benutzen. Die Teile der Logon-Daten werden wie folgt aufgebaut:
Die Benutzerkennung und das Passwort:
Die Benutzerkennung und das Passwort aus der Natural Security-Anmeldung auf dem Client werden verwendet und an den Natural RPC Server weitergegeben.
Wenn Sie eine andere Benutzerkennung und/oder ein anderes
Passwort für die Natural Security-Anmeldung auf der Server-Seite verwenden
wollen, können Sie die Anwendungsprogrammierschnittstelle USR1071N
verwenden (siehe unten).
Anmerkung:
Sie können die Verwendung von USR1071N
im Teil
Natural RPC Restriktionen der
Session
Parameters-Restriktionen des Natural Security
Library-Profils untersagen.
Um die Benutzerkennung und das Passwort festzulegen, die an
den Natural RPC Server übergeben werden, muss der Client die
Anwendungsprogrammierschnittstelle USR1071N
(siehe unten)
aufrufen, bevor die erste RPC-Anforderung gesendet wird.
Die Library:
Standardmäßig wird der Name der Library verwendet, bei der der
Client gerade angemeldet ist. Wenn Sie dem Natural RPC Server einen anderen
Library-Namen übergeben möchten, können Sie die
Anwendungsprogrammierschnittstelle USR4008N
verwenden.
Wenn für den Natural RPC Server Impersonation ohne Passwortprüfung
aktiviert ist (das Feld Impersonation
im Abschnitt
Components of an RPC Server Profile in der Natural
Security-Dokumentation ist auf A
gesetzt), kann der
Client optional eine ETID an den Natural RPC Server übergeben. Diese ETID wird
vom Natural RPC Server für den Zugriff auf Adabas seitens des Clients
verwendet. Um eine ETID auf der Natural RPC-Client-Seite anzugeben, können Sie
die Anwendungsprogrammierschnittstelle USR4371N
verwenden.
Die Anwendungsprogrammierschnittstelle USR1071N
ist
in der Library SYSEXT
enthalten. Sie wird verwendet, um die
Benutzerkennung und das Passwort anzugeben, die an den Natural RPC Server
übergeben werden.
Um USR1071N
zu verwenden:
Kopieren Sie das Subprogramm USR1071N
und das
Programm USR1071P
aus der Library SYSEXT
in die
Library SYSTEM
in der Systemdatei FNAT
in der
Serverumgebung (siehe
Eine
Natural API verwenden in the SYSEXT
Utility-Dokumentation).
Geben Sie mit einem DEFINE DATA
-Statement die
folgenden Parameter an:
Parameter | I/O | Format | Beschreibung | |
---|---|---|---|---|
USERID |
I | A08 | Zu verwendende Benutzerkennung. | |
PASSWORD |
I | A08 | Passwort zur Validierung der Benutzerkennung. Dieses Passwort wird nicht auf der Client-Seite validiert. | |
MIXEDCASE |
I | A01 | Option für gemischte Groß- und Kleinschreibung beim Passwort (optional). | |
Y |
Passwort in gemischter Groß-/Kleinschreibung zulassen. | |||
N |
Passwörter in Großbuchstaben umwandeln. |
Geben Sie im aufrufenden Programm auf der Client-Seite das folgende Statement an:
FETCH RETURN 'USR1071P' USERID PASSWORD
[MIXEDCASE]
Alternativ können Sie USR1071P
auch über die
Kommandozeile aufrufen und Benutzerkennung und Passwort in das angezeigte
Fenster eingeben.
Eine ausführliche Beschreibung finden Sie im Textobjekt
USR1071T
in der System Library
SYSEXT
.
Anmerkung:
Für den Aufruf von USR1071N
stehen zwei Beispiele
zur Verfügung: USR1071P
, bei dem nur Benutzerkennung und Passwort
übergeben werden, und USR1071X
(erweiterte Version), die es dem
Benutzer zusätzlich ermöglicht, verschiedene Daten zu setzen/abzurufen.
Die Anwendungsprogrammierschnittstelle USR4371N
wird
in der Library SYSEXT
bereitgestellt. Sie dient zur Angabe der
Benutzerkennung und der ETID, die an den Natural RPC Server übergeben
werden.
Um USR4371N
zu verwenden:
Kopieren Sie das Subprogramm USR4371N
und das
Programm USR4371P
aus der Library SYSEXT
in die
Library SYSTEM
in der Systemdatei FNAT
in der
Client-Umgebung (siehe
Eine
Natural API verwenden in der SYSEXT
Utility-Dokumentation).
Geben Sie mit einem DEFINE DATA
-Statement die
folgenden Parameter an:
Parameter | I/O | Format | Beschreibung | |
---|---|---|---|---|
USERID |
I | A08 | Zu verwendende Benutzerkennung. | |
ETID |
I | A08 | Zu verwendende ETID. |
Geben Sie im aufrufenden Programm auf der Client-Seite das folgende Statement an:
FETCH RETURN 'USR4371P' USERID ETID
Alternativ können Sie USR4371P
auch über die
Kommandozeile aufrufen und im angezeigten Fenster die Benutzerkennung und ETID
eingeben.
Eine ausführliche Beschreibung finden Sie in dem Textobjekt
USR4371T
in der System Library SYSEXT
.
Die Anwendungsprogrammierschnittstelle USR9171N
wird
in der Library SYSEXT
bereitgestellt. Sie dient zur Angabe der
Benutzerkennung und der Passwort-Phrase, die an den Natural RPC Server
übergeben werden.
Um USR9171N
zu verwenden:
Kopieren Sie das Subprogramm USR9171N
und das
Programm USR9171P
aus der Library SYSEXT
in die
Library SYSTEM
in der Systemdatei FNAT
in der
Server-Umgebung (siehe
Eine
Natural API verwenden in der SYSEXT
Utility-Dokumentation).
Geben Sie im aufrufenden Programm auf der Client-Seite das folgende Statement an:
FETCH RETURN 'USR9171P' USERID PASSPHRASE
Geben Sie mit einem DEFINE DATA
-Statement im
USR9171N
die folgenden Parameter an:
Parameter | I/O | Format | Description | |
---|---|---|---|---|
USERID |
I | A32 | Benutzerkennung,
die verwendet werden soll.
Wird keine Benutzerkennung angegeben, dann wird
die Systemvariable |
|
PASSPHRASE |
I | A128 |
Groß-/Kleinschreibung berücksichtigende Passwort-Phrase, die zur Validierung
der Benutzerkennung verwendet wird.
Auf der Client-Seite wird diese Passwort-Phrase nicht validiert. |
Alternativ können Sie USR9171P
auch über die
Kommandozeile aufrufen und im angezeigten Fenster die Benutzerkennung und die
Passwort-Phrase eingeben.
Eine ausführliche Beschreibung finden Sie in dem Textobjekt
USR917T
in der System Library, indem Sie die
SYSEXT
Utility benutzen.
Wenn Natural Security auf der Server-Seite installiert ist und
AUTO
nicht
angegeben ist, ist eine Natural-Anmeldung mit Benutzerkennung und Passwort
erforderlich. Es wird empfohlen, den Natural-Profilparameter
STACK
zu
verwenden, um das Natural-Systemkommando LOGON
zu
übergeben.
Wenn AUTO=ON
angegeben ist, wird der Inhalt der
Systemvariablen *INIT-USER
wie üblich für eine interne Anmeldung verwendet.
Um die Logon-Option zu erzwingen - d.h. wenn Sie wollen, dass ein
Server nur Anforderungen von Clients akzeptiert, bei denen die Logon-Option
gesetzt ist - setzen Sie den Schlüsselwort-Unterparameter
LOGONRQ
des Profilparameters RPC
oder des
Parameter-Makros
NTRPC
für den Server auf ON
.
Wenn die Logon-Option nicht erzwungen wird, werden Client-Anforderungen ohne Logon-Daten akzeptiert und in der Server Library oder einer ihrer Steplibs ausgeführt. So können Sie sowohl öffentliche (Public) als auch gesicherte (Secured) Dienste anbieten.
Wenn der Client Anmeldedaten übermittelt, werden die Benutzerkennung und das Passwort des Clients anhand des entsprechenden Benutzer-Sicherheitsprofils auf dem Server überprüft, und die Anmeldung bei der angeforderten Library und die Ausführung des Subprogramms erfolgen gemäß den entsprechenden Definitionen der Natural Security Library und des Benutzerprofils auf dem Server.
Nach der Ausführung des Subprogramms wird die Library, die vor der
CALLNAT
-Anforderung verwendet wurde, auf dem Server wieder
aktualisiert. Im Falle eines konversationellen RPC setzt die erste
CALLNAT
-Anforderung innerhalb der Konversation die Library-Kennung
auf dem Server, und das Statement CLOSE CONVERSATION
setzt die
Library-Kennung auf dem Server auf diejenige zurück, die vor der Eröffnung der
Konversation verwendet wurde.
Als Teil der Natural RPC
Restrictions in den Library Profiles von Natural Security
wird eine Server-Session-Option Close all databases
angeboten. Sie
bewirkt, dass alle Datenbanken, die von Remote-Subprogrammen in der Library
geöffnet wurden, geschlossen werden, wenn eine Natural-Anmeldung/Abmeldung
an/von den Librarys erfolgt. Dies bedeutet, dass jeder Client seine eigene
Datenbank-Sitzung verwendet.
Wenn die Option Close all databases
gesetzt ist, ist
es auch möglich, eine Client-spezifische ETID für alle Adabas-Zugriffe zu
verwenden, die vom Server für diesen Client ausgeführt werden. In diesem Fall
sollten Sie den Natural RPC Server mit ETID=OFF
starten und für
jeden Client, der eine ETID benötigt, eine entsprechende ETID im Benutzerprofil
definieren, z.B. durch Angabe der ETID *USER
. Bitte beachten Sie,
dass in diesem Fall zwei Clients mit demselben Namen nicht zwei gleichzeitige
Anforderungen mit Adabas-Aufrufen stellen können.
Es ist möglich, das Natural Security-Passwort auf dem Natural RPC
Server über ein Natural RPC Service Request zu ändern. Zu diesem Zweck wird in
der Library SYSEXT
die Anwendungsprogrammierschnittstelle
USR2074N
bereitgestellt.
Um USR2074N
zu nutzen:
Kopieren Sie das Subprogramm USR2074N
und
optional das Programm USR2074P
aus der Library SYSEXT
in die Library SYSTEM
oder in die Steplib Library oder in eine
beliebige Anwendung in der Serverumgebung.
Geben Sie mit einem DEFINE DATA
-Statement die
folgenden Parameter an:
Parameter | I/O | Format | Beschreibung | |
---|---|---|---|---|
USERID |
I | A08 | Zu verwendende Benutzerkennung. | |
PASSWORD |
I | A08 | Passwort zur
Validierung der Benutzerkennung.
Dieses Passwort wird nicht auf der Client-Seite validiert. |
|
NEWPASSWORD |
I | A08 | Neues Passwort für
die Benutzerkennung.
Dieses Passwort wird nicht auf der Client-Seite validiert. |
|
NODE-NAME |
I | A192 | Name des zu adressierenden Serverknotens. | |
SERVER-NAME |
I | A32 | Name des zu adressierenden Servers. | |
PROTOCOL |
I | A1 | Transportprotokoll zur Adressierung des Server-Knotens. Gültiger Wert: | |
B |
EntireX Broker | |||
RC |
O | I2 | Rückgabewert: | |
0 |
OK, der Parameter MESSAGE
enthält eine Bestätigungsnachricht.
|
|||
1 |
Fehler vom RPC- oder Server-Knoten, der
Parameter MESSAGE enthält die Fehlermeldung.
|
|||
2 |
Fehler von der Schnittstelle, der Parameter
MESSAGE enthält die Fehlermeldung.
|
|||
3 |
Natural Security-Fehler, der Parameter
MESSAGE# enthält die Natural Fehlernummer und der
Parameter MESSAGE enthält den entsprechenden
Meldungstext.
|
|||
MESSAGE# |
O | N4 | Zurückgegebene Meldungsnummer. | |
MESSAGE |
O | A80 | Zurückgegebener Nachrichtentext. |
Geben Sie im aufrufenden Programm auf der Client-Seite das folgende Statement an:
CALLNAT 'USR2074N' user-id password
newpassword node-name server-name protocol rc message#
message
Alternativ können Sie auch das Programm USR2074P
aus
der Library SYSEXT
verwenden:
Rufen Sie USR2074P
über die Kommandozeile auf und
geben Sie die erforderlichen Daten in das angezeigte Fenster ein. In diesem
Fall werden alle Eingaben außer den Passwörtern in Großbuchstaben umgewandelt.
Bei den Passwörtern haben Sie die Möglichkeit, sie in gemischter Groß- und
Kleinschreibung einzugeben oder nicht.
Impersonation ist eine
optionale Funktion auf der Natural RPC Server-Seite und ist nur verfügbar, wenn
der Natural RPC Server unter Natural Security läuft. Die
Impersonierungsfunktion wird durch die Sicherheitsprofile für Natural RPC
Server gesteuert (Security Profiles for Natural RPC
Servers). Siehe das Feld Impersonation
, das
unter der Überschrift Components of an RPC Server
Profile im Abschnitt Protecting Natural RPC Servers and
Services in der Natural
Security-Dokumentation beschrieben ist.
Impersonation im z/OS-Batch-Modus erfordert die Verwendung des Natural RPC Server-Frontends unter z/OS und verwendet die von z/OS bereitgestellte SAF-Schnittstelle.
Wenn Impersonation für den Natural RPC Server aktiv ist, wird eine
Anforderung des Clients, die die Logon-Option verwendet, aus Sicht des
Betriebssystems unter der Benutzerkennung ausgeführt, die der Client in den
LOGON
-Daten übergibt (Natural RPC-Benutzerkennung genannt).
Impersonation setzt voraus, dass der Zugriff auf das Betriebssystem, auf dem ein Natural RPC Server läuft, durch ein SAF-konformes externes Security-System kontrolliert wird. Die Benutzerauthentifizierung (Überprüfung der Natural RPC-Benutzerkennung und des Passworts) wird von diesem externen Security-System durchgeführt. Nach erfolgreicher Authentifizierung wird die Identität des Benutzers für das Betriebssystem festgestellt (d.h. es wird ein ACEE erstellt und mit der TCB verknüpft, unter der die aktuelle Client-Anforderung ausgeführt wird). Alle nachfolgenden Berechtigungsprüfungen werden auf der Grundlage dieser Identität durchgeführt. Dies bedeutet, dass alle Zugriffe auf Ressourcen, die durch das SAF-konforme externe Security-System kontrolliert werden, für diese Identität autorisiert sind. Dies gilt insbesondere für den Zugriff auf Arbeitsdateien und auf Datenbanken.
Impersonation bewirkt nicht, dass Natural Security ausgeschaltet
wird. Nach erfolgreicher Authentifizierung der Identität des Benutzers durch
das externe Security-System erfolgt eine Natural Security-Anmeldung mit
denselben LOGON
-Daten, aber ohne Passwortprüfung.
Wie Sie einen Natural RPC Server mit Impersonation starten, erfahren Sie unter Starten eines Natural RPC Servers über das RPC-Server-Frontend in Starten eines Natural RPC Servers.
Anmerkung:
Ohne Impersonation wird eine Client-Anforderung, die die
Logon-Option verwendet, aus Sicht des Betriebssystems mit der Benutzerkennung
ausgeführt, unter der der Natural RPC Server gestartet wurde.
RPC-Server-Frontend installieren
Gehen Sie vor wie in den entsprechenden Schritten der
Installationsdokumentation von Natural for Mainframes beschrieben; siehe
Installing Natural on
z/OS.
Wenn Sie die empfohlene APF-autorisierte LINKLIST
Library verwenden, müssen Sie sicherstellen, dass das resultierende Lademodul
nicht in der STEPLIB
- oder JOBLIB
-Verkettung
vorhanden ist.
Natural z/OS-Batch-Nukleus mit der DB2-Schnittstelle
DSNRLI verlinken
Dieser Schritt gilt nur für Natural for DB2-Benutzer.
Reentrant Adabas-Batch-Link-Routine ADALNKR anstelle von
ADALNK verwenden
Siehe
Besondere
Aspekte bei Großrechner-Natural RPC Servers mit Replikaten
in Starten eines Natural RPC
Servers.
EntireX Broker Stub BROKER anstelle von NATETB23 verwenden
Siehe Zugang zum EntireX Broker Stub auf dem Großrechner bereitstellen in Einrichten einer Natural RPC-Umgebung.
Alle erforderlichen RPC-Server-spezifischen
Natural-Profilparameter definieren
Siehe RPC-Server-spezifischen
Natural-Parameter setzen in Einrichten einer Natural
RPC-Umgebung.
Die Parameter werden entweder im Natural-Parameter-Modul oder
im CMPRMIN
-Dataset definiert. Der Parameter PARM=
der
JCL EXEC
-Anweisung wird nicht verwendet, um
Natural-Profilparameter bereitzustellen.
RPC-Server-Profil in Natural Security definieren
Definieren Sie in Natural Security (NSC) ein RPC-Server-Profil
für den Servernamen, der vom RPC-Server verwendet wird (SRVNAME
),
und aktivieren Sie die Impersonation.
Siehe Security Profiles for Natural RPC Servers in Protecting Natural RPC Servers and Services in der Natural Security-Dokumentation.
SAF-Definitionen prüfen
(Dieser Schritt gilt nur für Natural for DB2-Benutzer.)
Wenn die SAF-Ressourcenklasse DSNR
aktiv ist,
müssen Sie prüfen, ob Sie die folgenden SAF-Definitionen benötigen:
RDEFINE DSNR (subsys.RRSAF)
OWNER(DB2owner)
PERMIT subsys.RRSAF
CLASS(DSNR) ID(DB2group) ACCESS(READ)
dabei ist subsys
Ihre
DB2-Subsystem-ID.
Jeder Benutzer, der auf DB2 zugreifen möchte, muss Mitglied
der Gruppe DB2group
sein.
Weitere Informationen finden Sie in der entsprechenden DB2-Dokumentation von IBM.
User Exit NATRPC02 anlegen
(Dieser Schritt gilt nur für Natural for DB2-Benutzer.)
Legen Sie den Natural RPC User Exit NATRPC02 mit einem Aufruf
von NATPLAN
an, um den erforderlichen DB2-Plan zu setzen.
Stellen Sie sicher, dass Sie einen NATPLAN
Ihrer
aktuellen Natural for DB2-Version verwenden.
Beispiel NATRPC02
:
DEFINE DATA PARAMETER 1 SUBPROGRAM (A8) BY VALUE END-DEFINE FETCH RETURN 'NATPLAN' 'planname'
Natural RPC Server-Frontend starten
Starten Sie das Natural RPC Server-Frontend.
Siehe Starten eines Natural RPC Servers über das RPC-Server-Frontend in Starten eines Natural RPC Servers.
Vergewissern Sie sich, dass Sie alle erforderlichen Load Libraries zu Ihrer Steplib-Verkettung hinzugefügt haben. Sie benötigen insbesondere die folgenden Libraries:
Natural Load Library
EntireX Load Library
Adabas Load Library (wenn Sie die Adabas-Linkroutine
ADAUSER
verwenden)
DB2 Load Library (wenn Sie auf DB2 zugreifen wollen)
Impersonation ist erfolgreich aktiviert, wenn Sie die folgenden Meldungen sehen:
Im Job-Protokoll:
RPC0010 Authorized environment for impersonation
established
In der RPC-Trace-Datei:
M *** Server is running under NSC with
impersonation
Der Client muss die Anmeldedaten zusammen mit der RPC-Anforderung senden, wie es bereits bei einem durch Natural Security (NSC) geschützten Standard Natural RPC Server der Fall ist. Im Gegensatz zu einem Standard Natural RPC Server muss die Benutzerkennung auch eine gültige SAF-Benutzerkennung sein und das Passwort muss das entsprechende SAF-Passwort sein. Benutzerkennung und Passwort werden vom Natural RPC Server gegen das externe Security-System auf dem z/OS-System validiert, unter dem der Server ausgeführt wird. Nach erfolgreicher Authentifizierung der Client-Identität durch das externe Security-System wird die Benutzerkennung von NSC gemäß den definierten Regeln validiert. Das Passwort wird ignoriert. Es ist daher nicht erforderlich, das NSC-Passwort auf Ihr SAF-Passwort zu setzen.
Wenn das im Abschnitt
Components of an
RPC Server Profile in der Natural Security-Dokumentation
beschriebene Feld Impersonation
auf A
gesetzt ist,
wird kein Passwort zur Authentifizierung des Clients gegenüber dem externen
Security-System verwendet. Diese Einstellung kann sinnvoll sein, wenn der
Client bereits durch den EntireX Broker authentifiziert wurde.
Abhängig von der Art des Clients werden die Anmeldedaten unterschiedlich gesetzt:
Logon-Option aktivieren
Aktivieren Sie die Logon-Option in der Funktion
Service Directory
Maintenance oder im Schlüsselwort-Subparameter
DFS
des Profilparameters RPC
oder des
Parameter-Makros
NTRPC
.
Alternativ können Sie
USR2007N
verwenden, um die Option zu aktivieren.
Siehe Logon-Option benutzen in Betrieb einer Natural RPC-Umgebung .
Benutzerkennung und Passwort festlegen
Legen Sie die SAF-Benutzerkennung und das SAF-Passwort mit
der Anwendungsprogrammierschnittstelle USR1071P
fest.
Wenn Ihr Client unter Natural Security (NSC) läuft und die
Benutzerkennung und das Passwort von NSC mit der SAF-Benutzerkennung und dem
SAF-Passwort identisch sind, ist USR1071P
nicht erforderlich.
Aktivieren Sie die Natural Logon-Option entsprechend Ihrer Anwendungsumgebung.
Setzen Sie die RPC-Benutzerkennung und das RPC-Passwort auf die SAF-Benutzerkennung und das SAF-Passwort entsprechend Ihrer Anwendungsumgebung.
Die Impersonation findet zu Beginn jedes
nicht-konversationellen CALLNAT
und zu Beginn jeder Konversation
statt.
Die Authentifizierung von Natural RPC-Benutzerkennung und
-Passwort wird durch das externe Security-System durchgeführt. Das Passwort in
der FSEC
-Systemdatei wird nicht verwendet.
Nach erfolgreicher Authentifizierung wird die Natural RPC-Benutzerkennung für das Betriebssystem eingerichtet (der Benutzer wird impersoniert).
Nach erfolgreicher Impersonierung:
Für die Natural RPC-Benutzerkennung wird eine Natural Security-Anmeldung ohne Passwortprüfung durchgeführt.
Alle Arbeitsdateien mit einem DDNAME
, der
nicht mit CM
beginnt, werden mit der Natural RPC-Benutzerkennung
geöffnet.
Alle Adabas-Datenbanken werden mit der Natural RPC-Benutzerkennung geöffnet (gilt nur bei externer Adabas Security).
Wenn im NSC-Benutzerprofil eine ETID
angegeben ist, wird diese ETID
in der Adabas-Open-Anforderung
verwendet.
Die DB2-Verbindung wird mit der Natural RPC-Benutzerkennung geöffnet (gilt nur für Natural for DB2-Benutzer).
Am Ende jedes nicht-konversationellen CALLNAT
und
am Ende jeder Konversation wird die Natural RPC-Benutzerkennung beim
Betriebssystem abgemeldet.
Nach der Abmeldung:
Alle Arbeitsdateien mit einem DDNAME
, der
nicht mit CM
beginnt, werden geschlossen.
Alle Adabas-Datenbanken werden geschlossen.
Die folgenden Themen werden behandelt:
Impersonation ist eine
optionale Funktion auf der Natural RPC Server-Seite und ist nur verfügbar, wenn
der Natural RPC Server unter Natural Security läuft. Die
Impersonierungsfunktion wird durch die Sicherheitsprofile für Natural RPC
Server gesteuert. Siehe Security Profiles for Natural RPC
Servers) und das Feld Impersonation
, das
unter der Überschrift Components of an RPC Server
Profile im Abschnitt Protecting Natural RPC Servers and
Services in der Natural Security-Dokumentation beschrieben
ist.
Impersonation unter CICS erfordert die Verwendung des Natural RPC Server-Frontends unter CICS und verwendet die von CICS bereitgestellte Schnittstelle.
Wenn Impersonation für den Natural RPC Server aktiv ist, wird eine Client-Anforderung, die die Logon-OptionLogon-Option verwendet, aus Sicht von CICS unter der Benutzerkennung ausgeführt, die der Client in den LOGON-Daten übergibt (Natural RPC-Benutzerkennung genannt). Impersonation unter CICS verwendet die CICS-Option, um eine CICS-Task unter einer gegebenen Benutzerkennung zu starten.
Nach Eingang einer Client-Anforderung startet das Natural RPC
Server-Frontend eine neue CICS-Task mit der Option USERID()
des
Kommandos EXEC CICS START TRANSID()
, wobei
USERID
die Natural RPC-Benutzerkennung ist. Die
Benutzerauthentifizierung (Überprüfung von Natural RPC-Benutzerkennung und
-Passwort) wird von CICS durchgeführt, typischerweise unter Verwendung des
zugrunde liegenden externen Security-Systems. Nach erfolgreicher
Authentifizierung wird die Identität des Benutzers für die CICS-Task
festgelegt. Alle nachfolgenden Berechtigungsprüfungen werden auf der Grundlage
dieser Identität durchgeführt. Das bedeutet, dass alle Zugriffe auf Ressourcen,
die von CICS kontrolliert werden, für diese Identität autorisiert sind. Dies
gilt insbesondere für Zugriffe auf CICS-Ressourcen und auf Datenbanken.
Standardmäßig läuft die neu eingerichtete CICS-Task mit der gleichen
CICS-Transaktionskennung, mit der Sie das RPC-Server-Frontend gestartet haben.
Mit dem User-Exit RPCSFEX1
können Sie eine anfragespezifische
Transaktionskennung festlegen.
Impersonation bewirkt nicht, dass Natural Security ausgeschaltet
wird. Nach erfolgreicher Authentifizierung der Identität des Benutzers durch
CICS erfolgt eine Natural Security-Anmeldung mit denselben
LOGON
-Daten ohne Passwortprüfung.
Wie Sie einen Natural RPC Server mit Impersonation starten, erfahren Sie unter Starten eines Natural RPC Servers über das RPC-Server-Frontend in Starten eines Natural RPC Servers.
Anmerkung:
Ohne Impersonation wird eine Client-Anforderung, die die
Logon-Option verwendet, aus Sicht des Betriebssystems mit der Benutzerkennung
ausgeführt, mit der der Natural RPC Server gestartet wurde.
RPC-Server-Frontend installieren
Gehen Sie vor wie in den entsprechenden Schritten der
Installationsdokumentation von Natural for Mainframes beschrieben; siehe
Installing the Natural
CICS Interface on z/OS.
Adabas-Link-Routine für Adabas External Security
installieren
Weitere Informationen finden Sie in der entsprechenden
Adabas-Dokumentation (gilt nur für Benutzer der externen Security von
Adabas).
EntireX Broker Stub CICSETB anstelle von
NATETB23 verwenden
Siehe
Zugang
zum EntireX Broker Stub auf dem Großrechner bereitstellen
in Einrichten einer Natural
RPC-Umgebung.
Alle erforderlichen RPC-Server-spezifischen
Natural-Profilparameter definieren
Siehe RPC-Server-spezifischen
Natural-Parameter setzen in Einrichten einer Natural
RPC-Umgebung.
Die Parameter werden entweder im Natural-Parameter-Modul oder zusammen mit der Transaktions-ID definiert.
RPC-Server-Profil in Natural Security definieren
Definieren Sie in Natural Security (NSC) ein RPC-Server-Profil
für den Server-Namen, der vom RPC-Server verwendet wird (SRVNAME
),
und aktivieren Sie die Impersonation.
Siehe Security Profiles for Natural RPC Servers in Protecting Natural RPC Servers and Services of the Natural Security documentation.
Bei CICS-Startparameter XUSER=YES
Wenn der CICS-Startparameter XUSER=YES
angegeben
ist, müssen Sie für jeden Client-Benutzer Ersatzbenutzer (Surrogate)
definieren:
RDEFINE SURROGATE
userid1.DFHSTART UACC(NONE)
OWNER(userid1) PERMIT
userid1.DFHSTART CLASS(SURROGATE)
ID(userid2) ACCESS(READ)
Dabei ist:
userid1
die
Benutzerkennung des Clients,
userid2
die
Benutzerkennung, unter der das Natural RPC Server-Frontend gestartet wird.
Weitere Informationen finden Sie in der entsprechenden CICS-Dokumentation von IBM.
Einen CICS PROGRAM-Eintrag für das RPC-Server-Frontend
definieren
Siehe entsprechenden Schritt in
Installing the Natural
CICS Interface on z/OS.
Definieren Sie einen CICS TRANSACTION-Eintrag für die Transaktions-ID, die das RPC-Server-Frontend aufruft.
Siehe entsprechenden Schritt in Installing the Natural CICS Interface on z/OS.
Einen DB2TRAN- und
DB2ENTRY-Eintrag definieren
(Dieser Schritt gilt nur für Natural for DB2-Benutzer.)
Define a DB2TRAN
and DB2ENTRY
entry
for the transaction ID that invokes the RPC server front-end.
Definieren Sie einen DB2TRAN
- und
DB2ENTRY
-Eintrag für die Transaktions-ID, die das
RPC-Server-Frontend aufruft. Starten Sie den Roll-Server
Den Roll Server starten
Starten Sie den
Roll
Server für das vom Natural RPC Server verwendete
Subsystem.
(Dieser Schritt gilt nur, wenn der
NCMDIR
-Makro-Parameter
ROLLSRV
auf YES
gesetzt ist).
Das Natural RPC Server-Frontend unter CICS starten
Siehe
Starten
eines Natural RPC Servers über das RPC-Server-Frontend (nur bei CICS)
in Starten eines
Natural RPC Servers.
Die Impersonation ist erfolgreich aktiviert, wenn Sie die folgende Meldung in der RPC-Trace-Datei sehen:
M *** Server is running under NSC with
impersonation
Der Client muss die Anmeldedaten zusammen mit der RPC-Anforderung senden, wie dies bereits bei einem Standard-Natural-RPC-Server mit NSC-Schutz der Fall ist. Im Gegensatz zu einem Standard-Natural-RPC-Server muss die Benutzerkennung auch eine gültige CICS-Benutzerkennung sein und das Passwort muss das entsprechende Passwort des externen Security-Systems sein. Benutzerkennung und Passwort werden von CICS gegen das externe Security-System auf dem z/OS-System, unter dem CICS ausgeführt wird, validiert. Nach erfolgreicher Authentifizierung der Client-Identität durch das externe Security-System wird die Benutzerkennung durch Natural Security gemäß den definierten Regeln validiert. Das Passwort wird ignoriert. Es ist daher nicht erforderlich, das NSC-Passwort auf Ihr SAF-Passwort zu setzen.
Wenn das Feld Impersonation
, das im Abschnitt
Components of an
RPC Server Profile in der Natural
Security-Dokumentation beschrieben ist, auf A
gesetzt
ist, wird kein Passwort verwendet, um den Client gegenüber dem externen
Security-System zu validieren. Diese Einstellung kann sinnvoll sein, wenn der
Client bereits durch den EntireX Broker authentifiziert worden ist.
Je nach Art des Clients werden die Anmeldedaten unterschiedlich eingestellt:
Logon-Option aktivieren
Aktivieren Sie die Logon-Option in der Funktion
Service Directory
Maintenance oder im Schlüsselwort-Subparameter
DFS
des Profilparameters RPC
oder des
Parameter-Makros
NTRPC
.
Alternativ können Sie die Option auch über die
Anwendungsprogrammierschnittstelle
USR2007N
einschalten.
Siehe Logon-Option benutzen in Betrieb einer Natural RPC-Umgebung .
Benutzerkennung und Passwort festlegen
Legen Sie die Benutzerkennung und das Passwort über die
Anwendungsprogrammierschnittstelle USR1071P
fest.
Wenn Ihr Client unter Natural Security (NSC) läuft und die
Benutzerkennung und das Passwort von NSC mit der Benutzerkennung und dem
Passwort auf der Server-Seite identisch sind, dann ist USR1071P
nicht erforderlich.
Natural-Logon-Option aktivieren
Aktivieren Sie die Natural-Logon-Option entsprechend Ihrer
Anwendungsumgebung.
RPC-Benutzerkennung und -Passwort festlegen
Legen Sie die RPC-Benutzerkennung und das RPC-Passwort
entsprechend Ihrer Anwendungsumgebung fest.
Die Impersonation erfolgt zu Beginn jedes
nicht-konversationellen CALLNAT
und zu Beginn jeder
Konversation.
Der optionale User-Exit RPCSFEX1
wird aufgerufen, um eine
anforderungsspezifische CICS-Transaktionskennung festzulegen.
Die Authentifizierung der Natural RPC-Benutzerkennung und des
Passworts wird von CICS durchgeführt. Das in der Systemdatei FSEC
gespeicherte Passwort wird nicht verwendet.
Nach erfolgreicher Authentifizierung wird die Natural RPC-Benutzerkennung für CICS eingerichtet (Benutzer wird impersoniert).
Nach erfolgreicher Impersonierung:
Für die Natural RPC-Benutzerkennung wird eine Natural Security-Anmeldung ohne Passwortprüfung durchgeführt.
Der Zugriff auf alle CICS-Ressourcen erfolgt mit der Natural RPC-Benutzerkennung.
Alle Adabas-Datenbanken werden mit der Natural RPC-Benutzerkennung geöffnet (gilt nur bei externer Adabas Security).
Wenn im NSC-Benutzerprofil eine ETID
angegeben ist, wird diese ETID
in der Open-Anforderung von Adabas
verwendet.
Die DB2-Verbindung wird mit der Natural RPC-Benutzerkennung geöffnet (gilt nur für Natural for DB2-Benutzer).
Am Ende jedes nicht-konversationellen CALLNAT und am Ende jeder Konversation wird die Natural RPC-Benutzerkennung vom CICS abgemeldet.
Nach der Abmeldung:
Alle CICS-Ressourcen werden geschlossen.
Alle Adabas-Datenbanken werden geschlossen.
Die Verbindung zu DB2 wird geschlossen (gilt nur für Natural for DB2-Benutzer).
Standardmäßig ist die CICS-Transaktionskennung, mit der die
impersonierte RPC-Anforderung ausgeführt wird, dieselbe wie die
CICS-Transaktionskennung, die zum Starten des RPC-Server-Frontends verwendet
wird. Mit dem User-Exit RPCSFEX1
können Sie eine
anforderungsspezifische Transaktionskennung einstellen.
Der User-Exit RPCSFEX1
wird aufgerufen, wenn nach dem
Empfang einer RPC-Anforderung die Anmeldedaten eines Clients ausgewertet
werden. Die Anmeldedaten werden dann verwendet, um die CICS-Transaktionskennung
zu setzen, unter der die impersonierte RPC-Anforderung ausgeführt wird.
You must link RPCSFEX1
to the RPC server front-end
for CICS and call the user exit by using the following standard
conventions:
Sie müssen RPCSFEX1
mit dem RPC-Server-Frontend für
CICS verlinken und den User-Exit unter Beachtung der Standardkonventionen
aufrufen.
RPCSFEX1
wird unter Beachtung folgender
Standardkonventionen aufgerufen:
Register | Inhalt |
---|---|
15 | Eintragsadresse von
NATSFEX1 .
|
14 | Rücksprungadresse des Natural RPC Server-Frontend. |
13 | Adresse eines Speicherbereichs von 18 Wörtern. |
1 | Adresse einer Parameterliste. |
Die Parameterliste enthält die folgenden Adressen:
Adresse | Parameter | I/O | Natural-Daten Format/Länge |
---|---|---|---|
1 | CICS-Transaktionskennung | I/O | A04 |
2 | EntireX-Benutzerkennung des Client | I | A32 |
3 | RPC-Benutzerkennung des Client | I | A8 |
4 | RPC-Passwort des Client | I | A8 |
5 | Name der Natural Library, in der die RPC-Anforderung auf dem Natural RPC Server ausgeführt werden soll. | I | A8 |
6 | Name des Subprogramms, das auf dem Natural RPC Server ausgeführt werden soll. | I | A8 |
Sie können die von CICS vergebene Transaktionskennung nur mit dem User-Exit ändern.
Der Natural RPC unterstützt EntireX Security sowohl auf der Client- als auch auf der Server-Seite vollständig.
Für
die An- und Abmeldung beim EntireX Broker steht die Natural
Anwendungsprogrammierschnittstelle
USR2071N
zur Verfügung.
Anmerkung:
Unterstützung langer Passwort-Phrasen für Broker (ACI): Natural
Security prüft, ob die für den Zugang zum RPC-Server (z.B. über User Exit
USR1071N
) benutzte Natural-Benutzerkennung identisch ist mit der
EntireX-Benutzerkennung (z.B. über User Exit USR2071N
geliefert).
Um sich beim EntireX Broker anzumelden:
Verwenden Sie die Anmeldefunktion von USR2071N
und übermitteln Sie Ihre Benutzerkennung und Ihr Passwort an den ausgewählten
EntireX Broker.
Nach einer erfolgreichen Anmeldung wird das zurückgegebene Security Token von Natural gespeichert und bei jedem weiteren Aufruf an den EntireX Broker weitergegeben. Die Logon-Option ist für die Natural-Anwendung völlig transparent.
Wenn EntireX Security installiert ist oder wenn
AUTOLOGON=NO
in der EntireX Broker-Attributdatei angegeben ist,
müssen Sie USR2071N
mit der Anmeldefunktion vor der allerersten
Remote-CALLNAT
-Ausführung aufrufen.
Es wird empfohlen, USR2071N
mit der Abmeldefunktion
aufzurufen, sobald Sie nicht mehr beabsichtigen, einen
Remote-CALLNAT
zu verwenden.
Um USR2071N
zu verwenden:
Kopieren Sie das Subprogramm USR2071N
aus der
Library SYSEXT
in die Library SYSTEM
oder in die
Steplib Library oder in eine beliebige Anwendung in der Serverumgebung.
Geben Sie mit einem DEFINE DATA
-Statement die
folgenden Parameter an:
Parameter | I/O | Format | Beschreibung | |
---|---|---|---|---|
function |
I | A08 | Funktionscode. Mögliche Werte: | |
LOGON |
Anmeldung beim EntireX Broker | |||
LOGOFF
|
Abmeldung vom EntireX Broker | |||
broker-id |
I | A192 | Broker-Kennung:.
Anmerkung: |
|
user-id |
I | A32 | Benutzerkennung. | |
password |
I | A32 | Passwort der Benutzerkennung. | |
newpassw
|
I | A32 | Neues Passwort der Benutzerkennung. | |
rc
|
O | N04 |
Rückgabewert: |
|
0 |
OK | |||
1 |
Ungültiger Funktionscode. | |||
9999 |
EntireX Broker-Fehler (siehe Parameter
message ).
|
|||
message |
O | A80 | Vom EntireX Broker zurückgegebener Nachrichtentext. |
Geben Sie im aufrufenden Programm auf der Client-Seite das folgende Statement an:
CALLNAT 'USR2071N' function broker-id user-id password newpassword rc message
Siehe auch
Syntax-Beschreibung
beim CALLNAT
-Statement.
Alternativ können Sie das Programm USR2071P
über die
Kommandozeile aufrufen und Benutzerkennung und Passwort in das angezeigte
Fenster eingeben. In diesem Fall werden alle Eingaben außer den Passwörtern in
Großbuchstaben umgewandelt. Bei den Passwörtern haben Sie die Möglichkeit,
diese in gemischter Schreibweise einzugeben oder nicht.
LOGON |
Eine EntireX Broker LOGON -Funktion wird
für die genannte Broker-Kennung
(broker-id ) mit der übergebenen
Benutzerkennung (user-id ) und dem
Passwort (password ) ausgeführt. Nach
erfolgreichem LOGON -Aufruf kann der Client wie gewohnt mit der
EntireX Broker-Broker-Kennung
(broker-id ) kommunizieren.
Mit Anmerkungen:
|
LOGOFF |
Eine EntireX-Broker-LOGOFF -Funktion wird
für die genannte Broker-Kennung
(broker-id ) ausgeführt.
|
Wenn eine RPC-Client-Anfrage auf der Natural RPC Server-Seite
ausgeführt wird, muss vor der Ausführung der RPC-Client-Anforderung auch eine
Anmeldung beim EntireX Broker über die Anwendungsprogrammierschnittstelle
USR2071N
erfolgen. Die Anmeldedaten des Natural RPC Servers selbst werden nicht für
RPC-Client-Anforderung verwendet.
Wenn die RPC-Client-Anforderung an denselben EntireX Broker
gesendet wird, bei dem der Natural RPC Server registriert ist, muss die
Benutzerkennung verschieden vom Wert des Schlüsselwort-Subparameters
SRVUSER
sein.
Wenn der Wert des Schlüsselwort-Subparameters
ACIVERS
des Profilparameters RPC
oder des
Parameter-Makros
NTRPC
2
oder höher ist, meldet sich der Server beim Start der Sitzung
mit der LOGON
-Funktion beim EntireX Broker an. Die Benutzerkennung
ist die gleiche wie die durch
SRVUSER
definierte Benutzerkennung.
Wenn EntireX Security installiert wurde und wenn die Funktion EntireX Trusted User ID nicht verfügbar ist, gibt es zwei alternative Möglichkeiten, das erforderliche Passwort anzugeben:
Diese Alternativen werden im Folgenden beschrieben.
Wenn Natural Security auf dem Server installiert ist, können Sie
den Schlüsselwort-Subparameter
SRVUSER
des Profilparameters RPC
oder des
Parameter-Makros
NTRPC
auf '*NSC'
setzen, um festzulegen, dass die aktuelle Natural
Security-Benutzerkennung, die beim Start des Servers verwendet wurde, für das
LOGON
in Verbindung mit dem zugehörigen Natural Security-Passwort
verwendet wird. In diesem Fall muss der bei ACIVERS
eingestellte Wert mindestens 4
betragen.
Mit der Anwendungsprogrammierschnittstelle USR2072N
können Sie ein Passwort angeben, das zur Anmeldung (LOGON
) in
Verbindung mit dem Schlüsselwort-Subparameter
SRVUSER
des Profilparameters RPC
oder des
Parameter-Makros
NTRPC
verwendet wird.
Um USR2072N zu verwenden:
Kopieren Sie das Subprogramm USR2072N
und
optional das Programm USR2072P
aus der Library SYSEXT
in die Library SYSTEM
oder in die Steplib Library oder in eine
beliebige Anwendung in der Serverumgebung.
Geben Sie mit einem DEFINE DATA
-Statement den
folgenden Parameter an:
Parameter | I/O | Format | Beschreibung |
---|---|---|---|
password |
I | A128 | Das Passwort der Benutzerkennung.
Anmerkung: |
Geben Sie im aufrufenden Programm auf der Client-Seite das folgende Statement an:
CALLNAT 'USR2072N' password
Siehe auch
Syntax-Beschreibung
des CALLNAT
-Statement.
Das aufrufende Programm muss ausgeführt werden, bevor der
Natural RPC Server seine Initialisierung gestartet hat. Dazu legen Sie den
Namen des aufrufenden Programms beim Start des Servers auf den Natural-Stack.
Zu diesem Zweck können Sie auch das Programm USR2072P
aus der
Library SYSEXT
verwenden. In diesem Fall wird das Passwort
standardmäßig in Großbuchstaben umgewandelt. Sie haben die Möglichkeit, das
Passwort in gemischter Groß- und Kleinschreibung einzugeben, indem Sie als
zweiten Parameter die Mixed Case Option mit Y
übergeben.
STACK=(LOGON server-library;USR2072P password [Y])
Die Funktion EntireX Trusted User ID von EntireX Security ist nur für die Transportmethode NET verfügbar. Wenn Sie die Transportmethode TCP mit Trusted User IDs verwenden möchten, können Sie die RACF PassTicket-Funktionalität nutzen.
Bei Verwendung der RACF-PassTicket-Funktionalität generiert der
Natural RPC Server ein PassTicket für seine eigene Benutzerkennung und übergibt
diese Kennung und das generierte PassTicket zur Authentifizierung an den
Secured EntireX Broker, anstatt eine Benutzerkennung und ein Passwort bei der
Anmeldung beim Secured EntireX Broker anzugeben. Die eigene Benutzerkennung des
Servers wird aus der ACEE der Natural RPC Server-Task übernommen. Das
PassTicket wird für diese Benutzerkennung und den
Standard-Batch-Anwendungsnamen
MVSsmf-id
mit Hilfe der Service-Routine
R_GenSec IRRSGS00
erzeugt (siehe auch die
z/OS Security Server RACF-Dokumentation von
IBM).
Die folgenden Schritte sind erforderlich, um vertrauenswürdige Benutzerkennungen für die Transportmethode TCP zu verwenden:
Geben Sie SRVUSER='*TRUSTED'
beim Starten des
Natural RPC Servers an.
Definieren Sie Folgendes in RACF:
SETROPTS CLASSACT(PTKTDATA) RACLIST(PTKTDATA) RDEF PTKTDATA MVSsmf-id OWNER(#SECADM) UACC(NONE) SSIGNON(KEYENCRYPTED(XXXXXXXXXXXXXXXX)) RDEF PTKTDATA IRRPTAUTH.MVSsmf-id.* OWNER(#SECADM) UACC(NONE) PERMIT IRRPTAUTH.MVSsmf-id.* CL(PTKTDATA) ID(user-id) ACCESS(UPDATE)
Dabei ist:
smf-id |
SMF-Systemkennung des MVS-Systems,
auf dem die Anwendung läuft.
Die SMF-Kennung befindet sich im
|
user-id |
Die Benutzerkennung der RPC-Server-Task oder die Benutzerkennung der CICS-Task, wenn diese unter CICS läuft. |