Show TOC Anfang des Inhaltsbereichs

Vorgehensweisen RFC: AS ABAP à AS ABAP  Dokument im Navigationsbaum lokalisieren

Verwendung

Bei der RFC-Verbindung zwischen zwei AS-ABAP-Systemen ist der aufrufende AS ABAP der Initiator der Kommunikation und der als RFC-Zielsystem definierte AS ABAP ist der Akzeptor. Die für die Lastverteilung relevanten Einstellungen werden in dem initiierenden AS-ABAP-System vorgenommen.

Initiator (AS ABAP)

Die SNC-Optionen für den initiierenden AS ABAP geben Sie in Transaktion SM59 an. Siehe RFC-Destinationen und ihre SNC-Optionen mit Transaktion SM59 bearbeiten. Beachten Sie für die Arbeit mit und ohne Lastverteilung Folgendes:

     Ohne Lastverteilung

Wenn Sie die Lastverteilung nicht verwenden, geben Sie den SNC-Namen des Zielanwendungsservers in den SNC-Optionen der Destination im Feld Partner an.

     Mit Lastausgleich

Wenn Sie die Lastverteilung verwenden, bestimmt das System den Zielanwendungsserver (erneut) zur Zeit des RFC-Aufrufs. Nachdem der Anwendungsserver bestimmt ist, ruft das System den SNC-Namen des entsprechenden Anwendungsservers vom Message-Server ab und verwendet ihn für die Herstellung der SNC-Verbindung.

Geben Sie in diesem Fall den SNC-Namen der Hauptinstanz im Feld Msg.-Server ein. In der aktuellen Implementierung wird der SNC-Name als Name geparst, er wird jedoch nicht verwendet.

Um das System so zu konfigurieren, dass es den SNC-Namen eines bestimmten Anwendungsservers verwendet, wenn Sie die Lastverteilung deaktivieren, geben Sie den SNC-Namen des gewünschten Anwendungsservers in das Feld Partner ein.  Solange Sie die Lastverteilung verwenden, ignoriert das System den Inhalt dieses Feldes.

Akzeptor (AS ABAP)

Um mit SNC geschützte RFCs von anderen AS-ABAP-Systemen empfangen zu können, müssen Sie die entsprechenden Systeme in der SNC-System-Zugriffskontrollliste angeben. Gehen Sie im akzeptierenden AS ABAP wie folgt vor:

...

       1.      Um die Einträge in der SNC-System-Zugriffskontrollliste (SNCSYSACL) zu bearbeiten, rufen Sie Transaktion SNC0 auf.

       2.      Legen Sie für jeden Anwendungsserver anderer Systeme, der RFC-Zugriff auf diesen AS ABAP benötigt, einen Eintrag an. Um einen Eintrag anzulegen, wählen Sie Bearbeiten à Neue Einträge; um einen bestehenden Eintrag zu ändern, wählen Sie Springen à Detail.

Hinweis

Wenn Sie in einem entfernten System mehrere Server haben, die unterschiedliche Credentials (unterschiedliche SNC-Namen) verwenden, müssen Sie in Tabelle SNCSYSACL einen Eintrag für jeden Server anlegen.

Sie gelangen auf das Tabellenbearbeitungsbild.

       3.      Geben Sie in den entsprechenden Feldern die System-ID und den SNC-Namen des initiierenden Systems an.

       4.      Setzen Sie das Kennzeichen Eintrag für RFC aktiviert.

       5.      Wenn für diese Verbindung auch CPIC-Verbindungen akzeptiert werden sollen, setzen Sie auch das Kennzeichen Eintrag für CPIC aktiviert.

       6.      Sichern Sie die Daten.

Beachten Sie Folgendes:

     Die mit Transaktion SNC0 angelegten SNCSYSACL-Einträge werden als externe RFC-Destinationen (Typ = E) gespeichert. Interne Destinationen (Typ = I) werden automatisch generiert und in Transaktion SNC0 nicht angezeigt.

     Wenn RFCs innerhalb eines einzelnen AS-ABAP-Systems als "externe RFCs" möglich sein sollen (d. h. Sie haben die RFC-Destination mit dem Typ ABAP-Verbindungen in Transaktion SM59 definiert), müssen Sie zusätzlich zu dem automatisch generierten internen Eintrag (Typ = I) noch einen Eintrag für eine externe Destination (Typ = E) anlegen.

     Außerdem müssen Sie angeben, ob der akzeptierende AS ABAP RFCs akzeptieren soll, die nicht mit SNC geschützt sind. Um ungeschützte RFC-Verbindungen zuzulassen, setzen Sie den Profilparameter snc/accept_insecure_rfc auf den Wert "1" (siehe Profilparametereinstellungen des AS ABAP).

System- und Benutzerauthentifizierung

Beim Einsatz von mit SNC geschützten RFCs zwischen zwei AS-ABAP-Systemen verwendet der Anwendungsserver des einen Systems SNC, um den Anwendungsserver des anderen Systems zu authentifizieren. Anhand der Einträge in SNCSYSACL (SNC-Name des Anwendungsservers, der den Aufruf durchführt) erkennt der den Aufruf annehmende Anwendungsserver, dass der RFC-Aufruf von einem anderen AS ABAP initiiert wurde. Der akzeptierende AS ABAP verwendet dann das Standard-RFC-Kennwort oder die auf Token basierende Authentifizierung, um das korrekte Benutzerkonto und die Berechtigungen für den RFC-Aufruf anzuwenden.

Beispiel

Die nachfolgende Tabelle zeigt ein Beispiel für die Verwendung der SNC-System-Zugriffskontrollliste.

Zugriffskontrollliste der SNC-Systeme

System-ID

SNC-Name

RFC aktiviert

CPIC aktiviert

XYZ

p:CN=sap02.host2, OU=TEST02, O=myCompany, C=US

Ja

Ja

XYZ

p:CN=sap02.host3, OU=TEST01, O=myCompany, C=US

Ja

Ja

Benutzer A in System XYZ (Anwendungsserver host2) führt einen RFC-Aufruf zu System ABC (Anwendungsserver host1) durch. Auf der Grundlage der Informationen in Tabelle SNCSYSACL verwendet das System ABC SNC, um das System XYZ zu authentifizieren. System ABC authentifiziert dann Benutzer A anhand des mit dem RFC-Aufruf gelieferten Standard-Authentifizierungsmechanismus (Kennwort oder Token).

 

 

 

Ende des Inhaltsbereichs