SNC konfigurieren: Externe Programme mit AS
ABAP über RFC verbinden
Bei der Kommunikation von einem externen Programm zu einem SAP NetWeaver Application Server (AS) über RFC ist das externe Programm der Initiator der Kommunikation und der AS ABAP der Akzeptor.

Ein Beispiel für eine solche Verbindung ist die Verbindung eines AS Java zu einem AS-ABAP-Server. In diesem Fall verwendet der AS Java den Java Connector (JCo), um die Verbindung herzustellen.
Um für externe Programme, die über RFC mit einem AS ABAP kommunizieren, SNC zu verwenden, müssen Sie die SNC-Optionen entweder in der Datei saprfc.ini oder über die Programmschnittstelle rfclib angeben. Dieser Abschnitt beschreibt, wie Sie die Informationen in der Datei saprfc.ini angeben.
Weitere Informationen zur Verwendung von rfclib finden Sie unter C-Programmschnittstellen.

Das Programm könnte über eine Benutzungsoberfläche für die Parameterpflege verfügen. Weitere Informationen finden Sie in der Programmdokumentation.

Auf dem AS Java nehmen Sie diese Einstellungen z. B. je nach Anwendung, die die Verbindung herstellt, vor. Die Anwendung kann auch eine eigene Benutzungsoberfläche aufweisen oder den Destinations- oder RFC-Adapter-Service verwenden. Näheres dazu finden Sie in der Dokumentation zu AS Java.
● Sie wollen die Kommunikation zwischen dem externen RFC-Programm und dem AS ABAP mit SNC schützen.
● Das externe Programm verwendet die Datei saprfc.ini.
Setzen Sie die in nachfolgender Tabelle gezeigten SNC-Parameter in Datei saprfc.ini.
SNC-Parameter für Verbindung externer RFC-Programme mit AS ABAP
Parameter |
Beschreibung |
Erforderlich oder optional |
Zulässige Werte |
Standard |
SNC_PARTNERNAME |
SNC-Name des Kommunikationspartners (Anwendungsserver) |
erforderlich |
Zeichenkette |
keiner |
SNC_LIB |
Pfad und Dateiname der gssapi-Bibliothek |
erforderlich |
Zeichenkette |
keiner |
SNC_MODE |
SNC-Aktivierungszeichen |
erforderlich |
0,1 0 = SNC deaktiviert 1= SNC aktiviert |
keiner |
SNC_QOP |
Sicherheitsgrad (Quality of Protection) |
optional |
1,2,3,8,9 |
3 |
SNC_MYNAME |
SNC-Name des Benutzers, der RFC sendet |
optional |
Zeichenkette |
vom Sicherheitsprodukt gelieferter Name für den aktuell angemeldeten Benutzer |
DEST=XYZ_S |
In diesem Beispiel wird der Anwendungsserver host1 als RFC-Destination eingerichtet. Der SNC-Name des Servers lautet p:CN=sap01.host1, OU=TEST01, O=myCompany, C=USund die SNC-Bibliothek befindet sich in C:\SAP_Cryptolib\sapcrypto.dll.
Um den Akzeptor (den AS ABAP) für die Verwendung von SNC zu konfigurieren, setzen Sie die Profilparameter des Anwendungsservers.
Weitere Informationen finden Sie unter Profilparametereinstellungen auf dem AS ABAP.

Der in Parameter snc/accept_insecure_rfc enthaltene Wert bestimmt, ob ungeschützte RFC-Verbindungen akzeptiert werden sollen. Sie können den Parameter so definieren, dass alle ungeschützten RFCs abgelehnt werden, dass alle ungeschützten RFCs akzeptiert werden oder dass nur von bestimmten Benutzern ungeschützte RFCs akzeptiert werden (entsprechend der Einstellung von Unsichere Kommunikation erlaubtin Tabelle USRACL).
Wie bei RFC-Aufrufen ohne SNC-Schutz müssen Sie in dem RFC-Programm einen Benutzer und einen Mandanten angeben, wenn Sie eine Verbindung zum SAP-System herstellen. Bei Verwendung von SNC sind folgende weitere Schritte für den Authentifizierungsvorgang nötig.
...
1. Wenn der SNC-Name aus dem RFC-Programm mit dem SNC-Namen im Benutzerstammsatz des angegebenen Benutzers im angegebenen Mandanten übereinstimmt, akzeptiert das SAP-System die RFC-Anmeldeanforderung (ohne eine zusätzliche Authentifizierung vorzunehmen).
2. Andernfalls sucht das SAP-System in Tabelle USRACLEXT nach einem Eintrag der der Kombination aus Mandanten, Benutzer und SNC-Name entspricht. Wenn ein passender Eintrag gefunden wird, akzeptiert das SAP-System die Anmeldeanforderung (ohne eine zusätzliche Authentifizierung vorzunehmen).
3. Andernfalls sucht das SAP-System in Tabelle USRACLEXT nach einem Eintrag der der Kombination aus Mandanten, Benutzer und dem Platzhalter Stern (*) als SNC-Name entspricht. Wenn ein passender Eintrag gefunden wird, überprüft das System das Kennwort des Benutzers. Wenn das Kennwort gültig ist, akzeptiert das SAP-System die Anmeldung als sichere Anmeldung.
4. Andernfalls sucht das SAP-System in Tabelle USRACLEXT nach einem Eintrag der der Kombination aus Mandanten, dem Platzhalter Stern (*) als Benutzerkennung und dem SNC-Namen des RFC-Programms entspricht. Wenn ein passender Eintrag gefunden wird, überprüft das System das Kennwort des Benutzers. Wenn das Kennwort gültig ist, akzeptiert das SAP-System die Anmeldung als sichere Anmeldung.
5. Andernfalls sucht das SAP-System in Tabelle USRACLEXT nach einem Eintrag der der Kombination aus Mandanten, dem Platzhalter Stern (*) als Benutzerkennung und dem Platzhalter Stern (*) als SNC-Name entspricht. Wenn ein passender Eintrag gefunden wird, überprüft das System das Kennwort des Benutzers. Wenn das Kennwort gültig ist, akzeptiert das SAP-System die Anmeldung als sichere Anmeldung.
6. Andernfalls weist das SAP-System die Anmeldeanforderung zurück.

Hinweise zum Aufbau der RFC-Verbindung:
Die RFC-Verbindung wird über einen Gateway-Port hergestellt. Bei mit SNC geschützten Verbindungsanforderungen verwendet die RFC-Bibliothek den sicheren Gateway-Port, der nur SNC geschützte Verbindungen akzeptiert. Wenn allerdings sowohl SNC als auch Lastausgleich verwendet werden, nutzen die RFC-Bibliotheken auch den gewöhnlichen Gateway-Port für mit SNC geschützte Verbindungen.