Gateway-Sicherheitsdateien secinfo und reginfo
Verwendung
Die Sicherheitsdatei secinfo wird verwendet, um den unbefugten Start externer Programme zu verhindern. Die Datei reginfo steuert die Registrierung externer Programme am Gateway.
Sie können den Pfad der Datei mithilfe der Profilparameter gw/sec_info und gw/reg_info definieren. Die Standardwerte sind:
gw/sec_info = $(DIR_DATA)/secinfo
gw/reg_info = $(DIR_DATA)/reginfo
Beim Start des Gateways werden beide Sicherheitsdateien neu eingelesen. Sie können dynamische Änderungen vornehmen, indem Sie Einträge in der reginfo-Datei ändern, hinzufügen oder löschen. Anschließend kann die Datei sofort durch das Neuladen der Sicherheitsdateien aktiviert werden.
Achtung: Wenn eine der Dateien keine Einträge enthält oder eine fehlerhafte Syntax aufweist, stoppt das Gateway.
Pflege der Sicherheitsdateien
Sie können die Dateien auf folgende Weise bearbeiten:
-
Verwenden Sie den Gateway-Monitor im AS ABAP (Transaktion SMGW). Dieses Verfahren wird von SAP empfohlen und ist in „Konfiguration der Sicherheitsparameter für externe Programme“ beschrieben.
-
Verwenden Sie einen Editor und ändern Sie die Dateien auf Betriebssystemebene. Sie müssen die Syntax der Dateien genau einhalten, die unten beschrieben wird.
Es gibt zwei verschiedene Versionen der Syntax für beide Dateien: Syntax Version 1 erlaubt es nicht, den Start oder die Registrierung von Programmen explizit zu verbieten. Aus diesem Grund können Sie alternativ mit der Syntax Version 2 arbeiten, die der Routing-Erlaubnistabelle des SAProuters entspricht. Wenn Sie diese Syntax verwenden möchten, muss die gesamte Datei entsprechend strukturiert sein und die erste Zeile muss den Eintrag #VERSION=2 enthalten (genau in diesem Format geschrieben).
Sobald die Änderung abgeschlossen ist, können Sie die Dateien neu laden, ohne das Gateway neu starten zu müssen. Wählen Sie dazu im Gateway-Monitor (Transaktion SMGW): Springen > Expertenfunktionen > Externe Sicherheit > Erneut lesen.
Struktur
secinfo
Die folgende Syntax ist für die Datei secinfo gültig.
Version 1
Eine Zeile in der Datei hat das folgende Format:
TP=tp, USER=user, HOST=host, [USER-HOST=user_host]
Diese Reihenfolge ist nicht zwingend erforderlich. Als Trennzeichen können Sie Kommas oder Leerzeichen verwenden. Wenn der Name TP selbst Leerzeichen enthält, müssen Sie stattdessen Kommas verwenden. Verwenden Sie eine Zeile in diesem Format, um dem Benutzer user den Start des Programms tp auf dem Host host zu erlauben. Sie können diese Berechtigungsprüfung verstärken, indem Sie den optionalen Parameter USER-HOST definieren. Der Wert internal für die Host-Optionen (HOST und USER-HOST) gilt für alle Hosts des SAP-Systems. Das Gateway ersetzt diesen intern durch die Liste aller Applikationsserver des SAP-Systems.
Achtung: Beide Optionen sind fallsensitiv (Groß-/Kleinschreibung). Für die Option HOST gilt zum Beispiel:
Richtig: HOST
Falsch: Host, host, hOst
Beispiele:
-
USER=mueller, HOST=hw1414, TP=test : Der Benutzer mueller kann das Testprogramm auf dem Host hw1414 ausführen.
-
USER=hugo, USER-HOST=hw1234, HOST=hw1414, TP=prog : Der Benutzer hugo ist berechtigt, das Programm prog auf dem Host hw1414 auszuführen, sofern er sich vom Host hw1234 aus am Gateway angemeldet hat.
Wenn der Benutzer den CMSCSU-Aufruf verwendet hat, um den Sicherheitsbenutzer zu definieren, wird dieser ebenfalls für die Prüfung verwendet. Das Zeichen * kann als generische Spezifikation (Wildcard) für jeden der Parameter verwendet werden. Wenn USER-HOST nicht angegeben ist, wird der Wert * akzeptiert.
Version 2
Das Format der ersten Zeile ist #VERSION=2, alle folgenden Zeilen sind wie folgt strukturiert:
P|D TP=tp, USER=user, HOST=host, [USER-HOST=user_host]
Hier hat die Zeile, die mit P oder D beginnt, gefolgt von einem Leerzeichen oder einem Tabulator, folgende Bedeutung: P bedeutet, dass das Programm gestartet werden darf (identisch mit einer Zeile in der alten Syntax). D verhindert den Start dieses Programms. Die Reihenfolge der restlichen Einträge spielt keine Rolle.
Beispiel einer secinfo-Datei in neuer Syntax:
#VERSION=2
D HOST=* USER=* TP=/bin/sap/cpict4
P HOST=* USER=* TP=/bin/sap/cpict*
P TP=hugo HOST=local USER=*
P TP=* USER=* USER-HOST=internal HOST=internal
Diese Datei bedeutet:
-
Das Programm cpict4 darf nicht gestartet werden.
-
Alle anderen Programme, die mit cpict beginnen, dürfen gestartet werden (auf jedem Host und durch jeden Benutzer).
-
Das Programm hugo darf auf jedem lokalen Host und durch jeden Benutzer gestartet werden.
-
Alle Programme, die von Hosts innerhalb des SAP-Systems gestartet werden, können auf allen Hosts des Systems gestartet werden.
reginfo
Einigen Programmen kann die Registrierung am Gateway von einem externen Host aus gestattet werden, indem die relevanten Informationen angegeben werden. Sie können auch den Zugriff auf registrierte Programme steuern und registrierte Programme stornieren.
Sobald sich ein Programm am Gateway registriert hat, werden die Attribute des abgerufenen Eintrags (insbesondere ACCESS) an das registrierte Programm übertragen. Das bedeutet: Wenn die Datei geändert und die neuen Einträge sofort aktiviert werden, behalten die bereits verbundenen Server weiterhin die alten Attribute. Um die neuen Parameter auch auf registrierte Programme anzuwenden (falls diese geändert wurden), müssen die Server zuerst abgemeldet und dann erneut registriert werden.
Erfolgreiche und abgelehnte Registrierungen sowie Aufrufe registrierter Programme können mithilfe des Gateway-Loggings mit dem Indikator S überprüft werden. Alle Fehlerzeilen werden in die Trace-Datei dev_rd geschrieben und nicht gelesen.
Die Datei reginfo hat die folgende Syntax. Es gibt zwei verschiedene Syntaxversionen, die Sie verwenden können (nicht gleichzeitig).
Version 1
Eine Zeile in der Datei hat das folgende Format:
TP=tp [HOST=hostname,…] [NO=n] [ACCESS=hostname,…] [CANCEL=hostname,…]
Der Wert internal für die Host-Optionen (HOST und USER-HOST) gilt für alle Hosts des SAP-Systems. Das Gateway ersetzt diesen intern durch die Liste aller Applikationsserver des SAP-Systems.
Achtung: Beide Optionen sind fallsensitiv. Für die Option HOST gilt zum Beispiel:
Richtig: HOST
Falsch: Host, host, hOst
Kommentarzeilen beginnen mit #. Die einzelnen Optionen können folgende Werte haben:
-
TP-Name (TP=): Maximal 64 Zeichen, Leerzeichen nicht erlaubt. Die Wildcard * steht für eine beliebige Anzahl von Zeichen; der Eintrag * bedeutet also keine Einschränkung, fo* steht für alle Namen, die mit fo beginnen; foo steht genau für den Namen foo.
-
Hostname (HOST=, ACCESS= und/oder CANCEL=): Die Wildcard * steht für einen beliebigen Hostnamen, .sap.com für eine Domäne, sapprod für den Host sapprod. Wenn die Option fehlt, entspricht dies HOST=*.
-
IP-Adressen (HOST=, ACCESS= und/oder CANCEL=): Sie können IP-Adressen anstelle von Hostnamen verwenden. Beispiele für gültige Adressen:
-
1.2.3.4
-
A:B:C:D:E:F:1:2
-
A:B:C:D:E:F:1.2.3.4
-
A:B
-
Standard-Adresspräfixe: 192.1.1.3/12 oder A:B:C:D:E:1:2/60
-
Alte SAProuter-Wildcards: 192.1.1.* oder 1.1.101xxxxx
-
-
Anzahl (NO=): Zahl zwischen 0 und 65535. Wenn der TP-Name ohne Wildcards angegeben wurde, können Sie hier die Anzahl der erlaubten Registrierungen angeben.
-
Beispiel: TP=Foo NO=1 bedeutet, dass sich nur ein Programm mit dem Namen foo registrieren darf. Alle anderen Versuche werden abgelehnt. Wenn dieser Zusatz fehlt, darf sich eine beliebige Anzahl von Servern mit derselben ID verbinden.
-
-
ACCESS-Liste: Um auch den Zugriff auf der Client-Seite zu steuern, können Sie für jeden Eintrag eine Zugriffsliste definieren. Dies ist eine Liste von Hostnamen, die den oben genannten Regeln entsprechen müssen. Wenn keine Zugriffsliste angegeben ist, kann das Programm von jedem Client aus verwendet werden. Das lokale Gateway, an dem das Programm registriert ist, hat immer Zugriff. Wichtig ist hierbei, dass die Prüfung auf Basis der Hosts und nicht auf Benutzerebene erfolgt.
-
Beispiel: TP=foo ACCESS=.sap.com. Das Programm foo darf nur von Hosts aus der Domäne .sap.com verwendet werden.
-
-
CANCEL-Liste: Um das Stornieren registrierter Programme zu steuern. Wenn keine Liste angegeben ist, kann jeder Client das Programm stornieren. Das lokale Gateway kann dies immer. In SMGW: Springen > Verbundene Clients > Programm auswählen > Springen > Verbundene Clients > Client löschen.
Tabelle mit Beispielen für gültige Einträge:
| Eintrag | Bedeutung |
| TP=* HOST=* | Alle Registrierungen erlaubt |
| TP=foo* HOST=* | Registrierungen, die mit foo (und nicht f oder fo) beginnen, sind erlaubt |
| TP=foo* | Alle Registrierungen, die mit foo beginnen (fehlender HOST wird als * gewertet) |
| TP=* HOST=.sap.com | Alle Registrierungen aus der Domäne .sap.com sind erlaubt |
| TP=* ACCESS=.sap.com | Nur Clients aus der Domäne .sap.com dürfen mit diesem Programm kommunizieren |
| TP=* ACCESS=local | Nur Clients des lokalen Applikationsservers dürfen kommunizieren |
Version 2
Das Format der ersten Zeile ist #VERSION=2, alle folgenden Zeilen sind wie folgt strukturiert:
P|D TP=tp [HOST=hostname,…] [NO=n] [ACCESS=hostname,…] [CANCEL=hostname,…]
P bedeutet, dass das Programm registriert werden darf. D verhindert die Registrierung am Gateway.
Beispiel Version 2:
#VERSION=2
P TP=cpict4 HOST=10.18.210.140
D TP=* HOST=10.18.210.140
P TP=cpict2 ACCESS=ld8060,localhost CANCEL=ld8060,localhost
P TP=cpict4
P TP=* USER=* HOST=internal
Diese Datei bedeutet:
-
Programm cpict4 darf registriert werden, wenn es vom Host mit der Adresse 10.18.210.140 kommt.
-
Alle anderen Programme vom Host 10.18.210.140 dürfen sich nicht registrieren.
-
Programm cpict2 darf registriert werden, kann aber nur auf dem lokalen Host oder ld8060 ausgeführt/gestoppt werden.
-
Programm cpict4 darf von jedem Host registriert werden.
-
Programme innerhalb des Systems dürfen sich registrieren.