Show TOC Anfang des Inhaltsbereichs

Hintergrunddokumentation Trusted/Trusting zwischen SAP Systemen Dokument im Navigationsbaum lokalisieren

Die Verwendung einer RFC-Trusted/Trusting-Beziehung zwischen zwei SAP-Systemen bewirkt, dass bei einem RFC vom Trusted- zum Trusting-System kein Passwort für die Anmeldung am Trusting-System mehr versendet wird. Der für die Anmeldung verwendete Benutzer muss allerdings das entsprechende Berechtigungsobjekt S_RFCACL im Trusting-System besitzen. Das Trusted-System entspricht also immer der RFC-Client-Rolle, das Trusting-System der RFC-Server-Rolle.                                                                                    

Lösung                                                                     

Aufbau einer Trusted/Trusting-Beziehung:                                   

Eine Trusted/Trusting-Beziehung muss immer vom Trusting-System (Server) aus aufgebaut werden. Im folgenden werden die einzelnen Schritte beschrieben, wie eine Trusted/Trusting-Beziehung vom Trusted-System C00 (Client) ins Trusting-System S00 (Server) definiert wird:                  

Melden Sie sich auf dem Trusting-System S00 (Server) an. Legen Sie hier eine Destination in der Transaktion SM59 zum Trusted-System C00 (Client) an (z. B. C00_SYSTEM). Es ist wichtig, dass für diese Destination die Option 'Trusted System' nicht aktiv ist (Abschnitt Sicherheitsoption Trusted System = Nein).                                                    

Diese Grafik wird im zugehörigen Text erklärt Es wird empfohlen, keine Anmeldedaten in dieser Destination     

zu hinterlegen, weil diese Destination in der SM59 über Remote Login       

dazu missbraucht werden kann, unter dem hier abgelegten Benutzer zu        

arbeiten. Die Destination sollte nur zum Anlegen und zum Löschen der Trusted/Trusting-Beziehung und nicht für andere Zwecke verwendet werden. Sie sollte deshalb entsprechend benannt sein.

Rufen Sie die Transaktion SMT1 auf (bzw. SM59-Transaktionsmenü RFC -> Trusted Systeme).                                                          

Wählen Sie Anlegen. Geben Sie die Destination des Client-Systems (im Beispiel C00_SYSTEM) in das Dialogfenster ein. Nach Bestätigung erfolgt eine RFC-Anmedlung ins Client-System und es werden notwendige Informationen zwischen den Systemen (S00 <-> C00) ausgetauscht.            

Diese Grafik wird im zugehörigen Text erklärt Sollten keine Anmeldedaten in der Destination (im Beispiel      

C00_SYSTEM) eingetragen sein, so erscheint ein RFC-Anmeldebild für das     

Client-System (C00). In diesem Fall muss eine manuelle Anmeldung            

stattfinden. In jedem Fall muss eine erfolgreiche Anmeldung ins             

Client-System in diesem Schritt ausgeführt werden, damit die               

Trusted-Beziehung aufgebaut werden kann.                                   

Bei erfolgreichem Aufbau der Trusted-Beziehung wird der Trusted-Eintrag für das Client-System (C00) angezeigt. Wenn Sie die Gültigkeit der Anmeldedaten fürs Client-System                

einschränken möchten, tragen Sie eine Zeitspanne in das entsprechende Feld ein. Der Vorschlagswert (00:00:00) bedeutet, dass die Gültigkeit unbegrenzt ist.                                                            

Im Szenario, bei dem derselbe User und Mandant verwendet werden, können  Sie über das Menü Eintrag' Berechtigungsprüfungen durchführen, wobei versucht wird, mit den in der Definitions-Destination (im Beispiel C00_SYSTEM) hinterlegten Anmeldedaten zunächst zum Client zu gehen und sich dann per Trusted-RFC mit denselben Anmeldedaten zurück im Server-System anzumelden. Beim Menü-Punkt 'Aktueller Server' erfolgt der Rückweg eben zum aktuellen Applikationsserver, beim Menü-Punkt 'Trusting System' findet noch ein Load Balancing statt, d.h. die Anmeldung findet an irgendeinem Applikationsserver des Server-Systems statt.

Falls unterschiedliche User oder Mandanten für das Trusted Szenario verwendet werden, soll man auf Client Seite eine RFC-Destination anlegen und Authority Check mit dem Setzen des Flags "Trusted System" auf "Ja" für die hinterlegten Anmeldedaten durchführen.                      

                                                                              

Nutzen einer Trusted/Trusting-Beziehung                                      

Eine eingerichtete Trusted/Trusting-Beziehung kann nun dazu benutzt werden, im Trusted-System (Client) RFC-Destinationen zum Trusting-System (Server) in der Transaktion SM59 mit dem 'Trusted System'-Flag anzulegen. Dadurch wird bei der RFC-Anmeldung am Trusting-System über solche Destinationen kein Passwort mehr gesendet.

                                                                                 

Voraussetzung für das erfolgreiche Benutzen einer Trusted/Trusting-Beziehung ist, dass der verwendete Benutzer im  Trusting-Server-System das entsprechende S_RFCACL Berechtigungsobjekt besitzt. Möchte man für unterschiedliche Mandanten und Benutzer eine      

passende Berechtigung anlegen, so ist darauf zu achten, dass in den  S_RFCACL-Feldern RFC_CLIENT und RFC_USER die Aufruferdaten (Aufrufermandant und Aufruferbenutzer) des Aufrufersystems (in unserem Beispiel aus dem System C00) einzutragen sind. Wenn beispielsweise, der Benutzer U_1 unter Mandant M_1 im Aufrufersystem C00 unter dem Benutzer U_2 mit dem Mandanten M_2 im aufgerufenen System S00 unter einer Trusted-Beziehung arbeiten möchte, so muss der Benutzer (U_2, M_2) im System S00 eine Berechtigung ZRFCACL_XXX besitzen, die folgende Einstellung hat:    

  RFC_SYSID : C00                                                            

  RFC_CLIENT: M_1                                                            

  RFC_USER  : U_1                                                            

  RFC_EQUSER: N (für NO)                                                     

  RFC_TCODE : *                                                              

  RFC_INFO  : *                                                               

  ACTVT     : 16                                                             

                                                                             

Mit den folgenden Schritten können Sie die o.g. Einstellungen auf Server System S00 einpflegen:

                                              

SU03 + Doppelklick auf den Eintrag "AAAB"  "Anwendungsübergreifende Berechtigungsobjekte" und "Berechtigungsprüfung für RFC Benutzer (z.B. Trusted System)" )  als  Objektklasse + Doppelklick auf Berechtigungsobjekt "S_RFCACL" + "Z_RFCACL_XXX" anlegen.

Bitte nachher unbedingt die Einstellungen aktivieren!                          

                                                                              

Wird bei einer Trusted-Trusting-Beziehung immer derselbe Benutzer im Client- und im Server-System verwendet (d.h. U_1 = U_2), kann die Berechtigung Z_RFCACL_XXX auch wie folgt definiert sein:  

·          RFC_SYSID : C00                                                                       

·          RFC_CLIENT: M_1                                                                      

·          RFC_USER  : ' '                                                                      

·          RFC_EQUSER: Y (für Yes)                                                               

·          RFC_TCODE : *                                                                        

·          RFC_INFO  : *                                                                        

·          ACTVT     : 16                                                                        

Das Setzen des Berechtigungsfeldes RFC_EQUSER auf den Wert 'Y' ist gleichbedeutend mit dem Setzen der Felder RFC_USER = SY-UNAME für den angemeldeten Benutzer im Aufrufersystem (hier System C00).                            

Diese Grafik wird im zugehörigen Text erklärt Bitte beachten Sie, daß bei der Pflege und Vergabe der S_RFCACL-Berechtigungen (hier Z_RFCACL_XXX) möglichst keine generischen Werte (wie '*') für RFC_SYSID, RFC_CLIENT und RFC_USER verwendet werden. Denn damit können aus dem Aufrufer-System diejenigen Benutzer, die diese Kriterien bzgl. RFC_CLIENT und RFC_USER erfüllen, ungehindert unter dem aufgerufenen Benutzer RFC-Bausteine aufrufen.

                              

Es muss sicher gestellt werden, dass in dem Aufrufersystem eine hohe Sicherheitsanforderung mit der Benutzung der Benutzerpflege-Transaktionen (wie SU01) verbunden wird. Denn ansonsten kann derjenige, der diese Berechtigung besitzt, sich einen Benutzer zur Anmeldung an das Trusting-System (S00) verschaffen.      

Nachdem Sie die Berechtigung Z_RFCACL_XXX gepflegt haben, müssen Sie wie folgt ein Berechtigungsprofil anlegen und mit der Berechtigung Z_RFCACL_XXX verknüpfen:                                                             

                                                                                       

SU02 + im Feld "Berechtigungsprofile manuell bearbeiten" Z_<C00> und als Berechtigungprofil eintragen + die Taste "Arbeitsbereich für Profile erzeugen" drücken + Profil anlegen + Bitte tragen Sie als Objekt "S_RFCACL" und als Berechtigung "Z_RFCACL_XXX" ein.

Bitte nachher unbedingt das Profil aktivieren!  

                                                                                     

Nun müssen Sie das angelegte Berechtigungsprofil dem Trusted/Trusting Benutzer zuordnen. Dazu tragen Sie im Reiter Profile in der Transaktion  SU01 das Profil Z_<C00> ein.                                                 

                                                                                      

Die Berechtigung für den angemeldeten Benutzer im aktuellen System können Sie vorab mit dem Funktionsbaustein AUTHORITY_CHECK_TRUSTED_SYSTEM prüfen.

Ab Release 40B ist aus Sicherheitsgründen in dem SAP_ALL-Berechtigungsprofil keine Berechtigung für S_RFCACL enthalten.   

Berechtigungsfehler bei der Benutzung einer RFC-Destination mit gesetztem 'Trusted Systems' Kennzeichen werden mit folgender Meldung dokumentiert:

                                                                                  

Keine Berechtigung zur Anmeldung als Trusted System (Trusted RC = <0 1 2 3>).                                                                                    

Hierbei hat der Trusted Returncode ( = 0, 1, 2 oder 3 ) folgende Bedeutung:

                                                                         

 0   Ungültige Anmeldedaten (Benutzer und Mandant) für das Trusting                

     System.                                                                       

     Lösung: Legen Sie im Server-System (Trusting System) den Benutzer             

     im entsprechenden Mandanten an.                                               

 1   Das rufende System ist kein Trusted System, oder der                          

     Sicherheitsschlüssel für das System ist ungültig.                             

     Lösung: Legen Sie (erneut) das Trusted System an (siehe oben).                

 2   Der Benutzer hat keine Berechtigung für das Server-System                     

     (Trusting System, für das Objekt S_RFCACL), oder es wurde eine                

     Anmeldung unter einen der geschützten Benutzer 'DDIC' oder                    

     'SAP*' durchgeführt.                                                          

Lösung:

Verschaffen Sie dem Benutzer die entsprechende Berechtigungsfehler bei der Benutzung einer RFC-Destination mit gesetztem 'Trusted Systems' Kennzeichen werden mit folgender Meldung dokumentiert:                                                                            

Keine Berechtigung zur Anmeldung als Trusted System                               

(Trusted RC = <0 1 2 3>).                                  

                                                                                   

Hierbei hat der Trusted Returncode ( = 0, 1, 2 oder 3 ) folgende Bedeutung:                                                                        

 0   Ungültige Anmeldedaten (Benutzer und Mandant) für das Trusting                

     System.                                                                        

     Lösung: Legen Sie im Server-System (Trusting System) den Benutzer             

     im entsprechenden Mandanten an.                                               

 1   Das rufende System ist kein Trusted System, oder der                           

     Sicherheitsschlüssel für das System ist ungültig.                             

     Lösung: Legen Sie (erneut) das Trusted System an (siehe oben).                

 2   Der Benutzer hat keine Berechtigung für das Server-System                      

     (Trusting System, für das Objekt S_RFCACL), oder es wurde eine                

     Anmeldung unter einen der geschützten Benutzer 'DDIC' oder                    

     'SAP*' durchgeführt.                                                           

     Lösung: Verschaffen Sie dem Benutzer die entsprechende 

      Berechtigung oder verwenden Sie keine der geschützten                     

      Benutzer 'DDIC' oder 'SAP*'.                                              

  3   Der Zeitstempel der Anmeldedaten ist ungültig.                            

      Lösung:  Prüfen Sie die Systemzeit auf dem Client- und auf dem            

      Server-Rechner und das Gültigkeitsdatum der Anmeldedaten.                 

      (Beachten Sie, dass das Standarddatum 00:00:00 unbeschränkte              

       Gültigkeit bedeutet.)                                                    

                                                                                

Trusting-Transaktion SMT2                                                      

Die Trusting-Tranaktion SMT2 (bzw. SM59-Transaktionsmenü RFC ->               

Trusting Systems) baut eine Liste aller Trusting Systeme auf, die zu diesem Trusted System etabliert sind. Hierbei wird eine Anmeldung sowie Berechtigungsprüfung FÜR DEN AKTUELLEN BENUTZER UND MANDANTEN(!) über die automatisch angelegte Destination TRUSTING_SYSTEM@S00 durchgeführt.       

Dies entspricht in etwa der Transaktion SM51, wenn man mit Hilfe von Remote Logineine Anmeldung auf einem anderen Applikationsserver durchführt.                                                

                                                                    

Falls es Probleme mit der Einstellung der Destination TRUSTING_SYSTEM@S00 gibt (wie Hostname oder Service-Auflösung) muß man entweder eine neue Destination für seine Zwecke anlegen und den Hostnamen- oder Service-Angaben über SAP-Router-Strings vornehmen oder die Netzwerkeinstellung des Servers anpassen. Zur Behebung des Problems in der Transaktion SMT2 muss man die Netzwerk-Konfiguration des Servers anpassen. Da diese Transaktion nur zu Testzwecken eingesetzt werden soll, konnte man in dem Fall auch den Fehler ignorieren.                                                               

Um eine Anmeldung unter anderem Benutzer oder Mandanten durchzuführen, muss eine neue RFC-Destination mit Trusted-Option für diesen Zweck gepflegt werden.                                                                 

In diesem Szenario soll der folgende Error-Text in SMT2 ignoriert werden:

No authorization to log on as a trusted system (Trusted RC=0)

 

Beinhaltet der Hostname das Zeichen '_' (wie "my_host"), so kann die Generierung der zugehörigen Trusting-System-Destination zu falschen Einstellungen führen. Dieses Problem ist mit Hotpackage SAPKB46D09 behoben (siehe unten). Für frühere Releases können die    notwendigen Änderungen zur Korrektur des Problems manuell eingepflegt werden.

 

 

Fahren Sie fort mit:

Konfiguration von Systemressourcen für parallelen RFC, tRFC,qRFC

 

 

 

Ende des Inhaltsbereichs