Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erste Schritte mit AWS SDK für SAP ABAP
In diesem Abschnitt werden die ersten Schritte mit dem SDK beschrieben. Es enthält Informationen zur Installation des SDK, zur Durchführung der Grundkonfiguration und zum Erstellen eines Hello World-Codebeispiels, das eine Phrase von einer Sprache in eine andere übersetzt. Wenn Sie AWS SDK noch nicht kennen, empfehlen wir, diese Schritte in einer Sandbox-Umgebung durchzuführen.
Melden Sie sich für eine an AWS-Konto
Um damit zu beginnen AWS, benötigen Sie eine AWS-Konto. Informationen zum Erstellen einer AWS-Konto finden Sie AWS-Konto im AWS -Kontenverwaltung Referenzhandbuch unter Erste Schritte mit einer.
Schritt 1: Bereite deine vor AWS Konto
Um mit dem SDK für SAP ABAP zu beginnen, müssen Sie ein aktives AWS-Konto haben. Sie benötigen ein, AWS-Konto auch wenn Ihr SAP-System vor Ort, auf der SAP Business Technology Platform (BTP) oder bei einem anderen Cloud-Anbieter gehostet wird.
Wenn Ihr SAP-System in der AWS Cloud läuft, werden Sie AWS
Dienste in Ihrem aufrufen. AWS-Konto
IAM-Rolle für SAP-Benutzer
-
Erstellen Sie eine IAM-Rolle gemäß den Anweisungen im AWS Identity and Access Management Benutzerhandbuch. Weitere Informationen finden Sie unter Eine Rolle erstellen, um Berechtigungen an einen AWS Dienst zu delegieren. Notieren Sie sich den Amazon-Ressourcennamen (ARN) der IAM-Rolle zur späteren Verwendung.
-
Wählen Sie Amazon EC2 als Anwendungsfall aus.
-
Verwenden Sie SapDemoTranslate als Namen der Rolle.
-
Hängen Sie der Rolle ein TranslateReadOnly Profil an.
-
Die Rolle muss die folgenden Entitäten enthalten, damit das SAP-System die Rolle übernehmen kann. Ersetzen Sie "111122223333" durch Ihre AWS
-Kontonummer.
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"sts:AssumeRole"
],
"Principal": {
"AWS": "111122223333"
}
}
]
}
Dieses Beispiel zeigt, dass jeder Prinzipal von die Rolle übernehmen AWS-Konto
"111122223333" kann. Dies ist eine allgemeine Genehmigung, die sich für den Machbarkeitsnachweis eignet. Sie können für die Produktion ein engeres Prinzip verwenden, wie in den folgenden Beispielen.
-
Ein bestimmter Benutzer — wenn das SAP-System eine der folgenden Optionen verwendet:
-
SSF-encrypted Anmeldeinformationen aus einem lokalen SAP-System
-
Anmeldeinformationen aus dem SAP Credential Store-Dienst in der SAP BTP-, ABAP-Umgebung
-
Eine bestimmte Rolle — wenn sich das SAP-System auf Amazon EC2 befindet und ein Instanzprofil vorhanden ist.
-
Amazon EC2 — wenn sich das SAP-System auf Amazon EC2 befindet und kein Instanzprofil vorhanden ist.
Weitere Informationen finden Sie unter Bewährte Methoden für IAM-Sicherheit.
Authentifizierung
Die Authentifizierung hängt davon ab, wo Ihr SAP-System gehostet wird.
Ein AWS Cloud
Stellen Sie sicher, dass die EC2-Instance, auf der Ihr SAP-System ausgeführt wird, über ein Instanzprofil mit den folgenden Berechtigungen verfügt.
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::111122223333:role/SapDemoTranslate"
}
]
}
Fügen Sie den ARN hinzu, den Sie im vorherigen Schritt notiert haben.
Diese Berechtigung ermöglicht es Ihrem SAP-System, die SapDemoTranslate Rolle im Namen des ABAP-Benutzers zu übernehmen.
On-premises, SAP BTP oder eine andere Cloud
Wenn sich Ihr SAP-System vor Ort, auf SAP BTP oder in einer anderen Cloud befindet, gehen Sie wie folgt vor, um eine Verbindung für die Authentifizierung mithilfe eines geheimen Zugriffsschlüssels herzustellen.
-
Erstellen Sie einen IAM-Benutzer. Weitere Informationen finden Sie unter IAM-Benutzer erstellen (Konsole).
-
Verwenden Sie SapDemoSID es als Namen des IAM-Benutzers. SIDist die System-ID Ihres SAP-Systems.
-
Weisen Sie diesem Benutzer SapDemoTranslate eine Rolle zu.
Behalte das access_key undsecret_access_key. Sie müssen diese Anmeldeinformationen in Ihrem SAP-System konfigurieren.
Wenn sich Ihr SAP-System vor Ort, auf SAP BTP oder in einer anderen Cloud befindet, können Sie sich mit einer der folgenden Optionen authentifizieren.
Schritt 2: Installieren Sie das SDK
Auf den folgenden Registerkarten finden Sie Installationsanweisungen.
- SDK for SAP ABAP
-
Importieren Sie das SDK für SAP-ABAP-Transporte in Ihr SAP-System. Sie können die Transporte in jeden Client importieren. Weitere Informationen finden Sie unter SDK für SAP ABAP https://docs.aws.amazon.com/sdk-for-sapabap/latest/developer-guide/installation.html installieren.
- SDK for SAP ABAP - BTP edition
-
Installieren Sie das SDK für SAP ABAP — BTP Edition mithilfe der Anwendung Deploy Product. Weitere Informationen finden Sie unter SDK für SAP ABAP installieren — BTP-Edition.
Stellen Sie vor der Konfiguration des SDK sicher, dass Sie über die erforderlichen Autorisierungen verfügen. Weitere Informationen finden Sie unter https://docs.aws.amazon.com/sdk-for-sapabap/latest/developer-guide/authorizations.html SAP-Autorisierungen.
Auf den folgenden Registerkarten finden Sie Konfigurationsanweisungen.
- SDK for SAP ABAP
-
Führen Sie die /AWS1/IMG Transaktion aus, um den Implementierungsleitfaden für SDK für SAP ABAP zu öffnen. Um diese Transaktion auszuführen, geben Sie /n/AWS1/IMG in die Befehlszeile Ihres SAP-Systems ein und wählen Sie dann Enter.
Schließen Sie die folgenden Konfigurationen ab.
-
Gehen Sie zu den technischen Voraussetzungen.
-
Gehen Sie zu Globale Einstellungen → Szenarien konfigurieren.
-
Gehe zu Allgemeine Einstellungen → Technische Einstellungen.
-
Gehen Sie zu Laufzeiteinstellungen → Log And Trace.
-
Gehen Sie zu Laufzeiteinstellungen → Aktives Szenario.
-
Wählen Sie unter Neues Szenario die OptionDEFAULT.
-
Wählen Sie Szenarioänderung bestätigen aus.
-
Akzeptieren Sie die Aufforderung.
Voraussetzungen für On-Premises Systeme
Wenn Ihr SAP-System vor Ort oder in einer anderen Cloud ausgeführt wird, müssen die Anmeldeinformationen in Ihrer SAP-Datenbank gespeichert werden. Die Anmeldeinformationen werden mit SAP SSF verschlüsselt und erfordern eine konfigurierte kryptografische Bibliothek, z. B. die von SAP. CommonCryptoLib
Die Schritte zur Konfiguration von SSF für SDK für SAP ABAP werden in der Transaktion beschrieben. /AWS1/IMG
Die oben genannte Voraussetzung gilt nicht, wenn Ihr SAP-System auf Amazon EC2 läuft. SAP-Systeme, die auf Amazon EC2 laufen, rufen kurzlebige, automatisch rotierende Anmeldeinformationen aus den Amazon EC2-Instance-Metadaten ab.
- SDK for SAP ABAP - BTP edition
-
Öffnen Sie Ihre ABAP-Umgebung in einem Webbrowser und navigieren Sie zur Anwendung Custom Business Configurations.
Vervollständigen Sie die folgenden Konfigurationen.
Schritt 4: Funktionale Einrichtung
Anweisungen zur Einrichtung finden Sie auf den folgenden Registerkarten.
- SDK for SAP ABAP
-
Führen Sie eine Transaktion aus /AWS1/IMG (geben Sie /n/AWS1/IMG in die Befehlsleiste ein und drücken Sie die Eingabetaste), um das Implementierungshandbuch für AWS SDK zu öffnen.
-
Gehen Sie zu Anwendungskonfiguration → SDK-Profil.
-
Markieren Sie den Eintrag, den Sie erstellt haben, und klicken Sie auf den Baumzweig Authentifizierung und Einstellungen.
-
Wählen Sie Neue Einträge aus.
-
SID: Die System-ID des SAP-Systems, in dem Sie sich gerade befinden.
-
Kunde: Der Mandant des SAP-Systems, in dem Sie sich gerade befinden.
-
Szenario-ID: Die Dropdownliste, in der Sie das von Ihrem Basis-Administrator erstellte DEFAULT-Szenario finden.
-
AWS Region: Geben Sie die AWS Region ein, in die Sie telefonieren möchten. Wenn Ihr SAP-System läuft AWS, geben Sie die AWS Region ein, in der es läuft.
-
Methode der Authentifizierung:
-
Wählen Sie Instanzrolle über Metadaten aus, wenn Ihr SAP-System auf Amazon EC2 läuft.
-
Wählen Sie Credentials from SSF Storage aus, wenn Ihr SAP-System vor Ort oder in einer anderen Cloud ausgeführt wird.
-
Wählen Sie Anmeldeinformationen festlegen aus.
-
Geben Sie die Zugriffsschlüssel-ID und den geheimen Zugriffsschlüssel ein, die Sie im vorherigen Schritt erstellt haben.
-
Lassen Sie das Feld „IAM-Rollen deaktivieren“ leer.
-
Wählen Sie Speichern aus.
-
Klicken Sie auf den Baumzweig „IAM-Role Mapping“.
- SDK for SAP ABAP - BTP edition
-
Richten Sie die Authentifizierung mithilfe des SAP Credential Store ein. Weitere Informationen finden Sie unter SAP Credential Store verwenden.
Öffnen Sie Ihre ABAP-Umgebung in einem Webbrowser und navigieren Sie zur Anwendung Custom Business Configurations.
-
Gehen Sie zum SDK-Profil.
-
Wählen Sie die rechte Pfeiltaste neben dem erstellten Eintrag, um zur Registerkarte Authentifizierung und Einstellungen zu gelangen.
Wählen Sie Neue Einträge aus.
-
SID: Die System-ID des SAP-Systems, in dem Sie sich gerade befinden.
-
Kunde: Der Client des SAP-Systems, in dem Sie sich gerade befinden.
-
Szenario-ID: Die Dropdownliste, in der Sie das von Ihrem Basis-Administrator erstellte DEFAULT-Szenario finden.
-
AWS Region: Geben Sie die AWS Region ein, in die Sie telefonieren möchten. Wenn Ihr SAP-System läuft AWS, geben Sie die AWS Region ein, in der es läuft.
-
Authentifizierungsmethode: Wählen Sie Anmeldeinformationen aus dem SAP Credential Store aus.
-
Geben Sie den Namespace und den Schlüsselnamen der im SAP Credentials Store gespeicherten Anmeldeinformationen ein.
-
Geben Sie den Namen der Kommunikationsvereinbarung ein, die erstellt wurde, um die Kommunikation zwischen SDK für SAP ABAP - BTP Edition und SAP Credential Store herzustellen.
-
Lassen Sie das Feld „IAM-Rollen deaktivieren“ leer.
-
Right-click klicken Sie auf die rechte Pfeiltaste neben dem erstellten Eintrag, um zur Registerkarte „IAM-Rollenzuordnung“ zu navigieren.
Wählen Sie Neue Einträge aus.
-
Geben Sie die Sequenznummer ein: 010.
-
Geben Sie die logische IAM-Rolle TESTUSER ein.
-
Geben Sie den IAM-Rollen-ARN ein: geben Sie den arn:aws: der IAM-Rolle ein, die die im vorherigen Schritt erstellte TranslateReadOnly Richtlinie enthält.
Schritt 5: SAP-Benutzer autorisieren
SAP-Benutzer sind standardmäßig nicht berechtigt, AWS Funktionen zu nutzen. Die Benutzer müssen explizit mithilfe von SAP-Autorisierungen autorisiert werden. Weitere Informationen finden Sie auf den folgenden Registerkarten.
- SDK for SAP ABAP
-
Erstellen Sie eine PFCG-Rolle
Weisen Sie SAP-Benutzern die PFCG-Rolle zu
Jeder Benutzer, dem die ZAWS_SDK_DEMO_TESTUSER Rolle zugewiesen wurde, wird autorisiert, AWS SDK-Funktionen mit den im DEMO SDK-Profil konfigurierten Einstellungen zu verwenden. Der autorisierte Benutzer übernimmt auch die IAM-Rolle, die der TESTUSER logischen IAM-Rolle in diesem Profil zugeordnet ist.
- SDK for SAP ABAP - BTP edition
-
Erstellen Sie eine Geschäftsrolle
-
Öffnen Sie Ihre ABAP-Umgebung in einem Webbrowser und navigieren Sie zur Anwendung Maintain Business Roles.
-
Wählen Sie Aus Vorlage erstellen und geben Sie die folgenden Details ein.
-
Vorlage — Wählen Sie/AWS1/RT_BTP_ENDUSER.
-
Neue Geschäftsrollen-ID — Geben Sie eine ID ein.
-
Beschreibung der neuen Geschäftsrolle — Geben Sie eine Beschreibung ein.
-
Wählen Sie OK, um die Seite für die Geschäftsrolle anzuzeigen.
-
Gehen Sie auf der Registerkarte Allgemeine Rollendetails zu Zugriffskategorien und legen Sie das Feld Write, Read, Value Help auf Eingeschränkt fest.
-
Wählen Sie Einschränkungen verwalten aus und erweitern Sie im linken Navigationsbereich die Option Zugewiesene Einschränkungstypen. Aktualisieren Sie das folgende Feld im Abschnitt Einschränkungen und Werte.
-
Wählen Sie unter SDK-Sitzung auswählen das Stiftsymbol neben SDK-Profil aus und navigieren Sie zur Registerkarte Bereiche. Geben Sie ein DEMO und wählen Sie Hinzufügen aus.
-
Wählen Sie unter „Logische IAM-Rolle auswählen“ das Stiftsymbol neben „Logische IAM-Rolle“ aus und navigieren Sie zur Registerkarte „Bereiche“. Geben Sie ein TESTUSER und wählen Sie Hinzufügen aus.
Wählen Sie das Stiftsymbol neben SDK-Profil aus und navigieren Sie zur Registerkarte Bereiche. Geben Sie DEMO ein und wählen Sie Hinzufügen
-
Navigieren Sie zurück zur Vorlage für Geschäftsrollen und öffnen Sie den Tab Geschäftsbenutzer. Wählen Sie Hinzufügen aus, um die neu erstellte Geschäftsrolle einem SAP-Geschäftsbenutzer zuzuweisen, der die SDK-Funktionalität testen wird. Wählen Sie Speichern aus.
Jeder Geschäftsbenutzer, der der erstellten Geschäftsrolle zugewiesen ist, wird berechtigt, AWS SDK-Funktionen mit den im DEMO SDK-Profil konfigurierten Einstellungen zu verwenden. Der autorisierte Benutzer übernimmt auch die IAM-Rolle, die der TESTUSER logischen IAM-Rolle in diesem Profil zugeordnet ist.
Schritt 6: Schreiben Sie den Code
Weitere Informationen finden Sie auf den folgenden Registerkarten.
- SDK for SAP ABAP
-
-
Transaktion öffnenSE38.
-
Geben Sie ZDEMO_TRANSLATE_HELLO_WORLD als Programmnamen ein.
-
Wählen Sie Create.
-
Geben Sie AWS SDK Hello World In Any Language als Titel ein.
-
Typ: Wählen Sie Ausführbares Programm.
-
Status: Wählen Sie Testprogramm.
-
Wählen Sie Speichern aus.
-
Speichern Sie das Programm als lokales Objekt.
Fügen Sie den folgenden Code hinzu.
*&---------------------------------------------------------------------*
*& Report ZAWS1_DEMO_XL8_SIMPLE
*&
*&---------------------------------------------------------------------*
*& A simple demo of language translation with AWS Translate
*&
*&---------------------------------------------------------------------*
REPORT zaws1_demo_xl8_simple.
START-OF-SELECTION.
PARAMETERS pv_text TYPE /aws1/xl8boundedlengthstring DEFAULT 'Hello, World' OBLIGATORY.
PARAMETERS pv_lang1 TYPE languageiso DEFAULT 'EN' OBLIGATORY.
PARAMETERS pv_lang2 TYPE languageiso DEFAULT 'ES' OBLIGATORY.
TRY.
DATA(go_session) = /aws1/cl_rt_session_aws=>create( 'DEMO' ).
DATA(go_xl8) = /aws1/cl_xl8_factory=>create( go_session ).
DATA(lo_output) = go_xl8->translatetext(
iv_text = pv_text
iv_sourcelanguagecode = CONV /aws1/xl8languagecodestring( pv_lang1 )
iv_targetlanguagecode = CONV /aws1/xl8languagecodestring( pv_lang2 )
).
WRITE: / 'Source Phrase: ', pv_text.
WRITE: / 'Target Phrase: ', lo_output->get_translatedtext( ).
CATCH /aws1/cx_xl8unsuppedlanguage00 INTO DATA(lo_lang).
WRITE: / 'ERROR' COLOR COL_NEGATIVE,
'Cannot translate from',
lo_lang->sourcelanguagecode,
'to',
lo_lang->targetlanguagecode.
CATCH cx_root INTO DATA(lo_root).
WRITE: / 'ERROR' COLOR COL_NEGATIVE, lo_root->get_text( ).
ENDTRY.
- SDK for SAP ABAP - BTP edition
-
-
Right-click wählen Sie auf dem Paket, in dem die ABAP-Klasse erstellt werden muss, und wählen Sie dann Neu > ABAP-Klasse.
-
Geben Sie ZCL_DEMO_XL8_SIMPLE als Klassennamen ein und fügen Sie eine Klassenbeschreibung hinzu. Klicken Sie auf Weiter.
-
Erstellen Sie eine Transportanfrage oder wählen Sie eine aus. Wählen Sie Fertig stellen aus.
Fügen Sie den folgenden Code hinzu.
CLASS zcl_demo_xl8_simple DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
INTERFACES if_oo_adt_classrun.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
CLASS zcl_demo_xl8_simple IMPLEMENTATION.
METHOD if_oo_adt_classrun~main.
TRY.
" input parameters
DATA(pv_text) = |Hello, World|.
DATA(pv_lang1) = |EN|.
DATA(pv_lang2) = |ES|.
DATA(go_session) = /aws1/cl_rt_session_aws=>create( 'DEMO' ).
DATA(go_xl8) = /aws1/cl_xl8_factory=>create( go_session ).
DATA(lo_output) = go_xl8->translatetext(
iv_text = pv_text
iv_sourcelanguagecode = pv_lang1
iv_targetlanguagecode = pv_lang2
).
out->write( |Source Phrase: { pv_text }| ).
out->write( |Target Phrase: { lo_output->get_translatedtext( ) }| ).
CATCH /aws1/cx_xl8unsuppedlanguage00 INTO DATA(lo_lang).
out->write( |ERROR - Cannot translate from { lo_lang->sourcelanguagecode } to { lo_lang->targetlanguagecode }| ).
CATCH cx_root INTO DATA(lo_root).
out->write( |ERROR - { lo_root->get_text( ) }| ).
ENDTRY.
ENDMETHOD.
ENDCLASS.
Einzelheiten zum Schreiben von ABAP-Code, der das SDK verwendet, finden Sie unter Using AWS SDK für SAP ABAP.
Schritt 7: Führen Sie die Anwendung aus
Weitere Informationen finden Sie auf den folgenden Registerkarten.
- SDK for SAP ABAP
-
Führen Sie die Anwendung in ausSE38. Wenn dies erfolgreich ist, wird Folgendes ausgegeben.
Source Phrase: Hello, World
Target Phrase: Hola, mundo
Wenn Ihnen Autorisierungen, Konfigurationen oder Basisvoraussetzungen fehlen, erhalten Sie möglicherweise eine Fehlermeldung. Sehen Sie sich das folgende Beispiel an.
ERROR Could not find configuration under profile DEMO with
scenario DEFAULT for SBX:001
Wenn Ihre SAP-Rolle Sie autorisiert, ein SDK-Profil zu verwenden und es einer logischen IAM-Rolle zuzuordnen, während Ihre IAM-Berechtigungen nicht so konfiguriert sind, dass das SAP-System die IAM-Rolle übernimmt, wird Folgendes ausgegeben.
ERROR Could not assume role arn:aws:iam::111122223333:role/SapDemoTranslate
Überprüfen Sie in diesem Fall Ihre IAM-Berechtigungen und die Vertrauenskonfiguration für die unter definierten IAM-Rollen, Benutzer oder beiden. Schritt 1: Bereite deine vor AWS Konto
- SDK for SAP ABAP - BTP edition
-
Führen Sie die Anwendung unter Eclipse > Ausführen als > ABAP-Anwendung (Konsole) aus. Wenn Sie erfolgreich sind, wird Folgendes ausgegeben.
Source Phrase: Hello, World
Target Phrase: Hola, mundo
Wenn Ihnen Autorisierungen, Konfigurationen oder Basisvoraussetzungen fehlen, erhalten Sie möglicherweise eine Fehlermeldung. Sehen Sie sich das folgende Beispiel an.
ERROR Could not find configuration under profile DEMO with
scenario DEFAULT for SBX:001
Wenn Ihre SAP-Rolle Sie autorisiert, ein SDK-Profil zu verwenden und es einer logischen IAM-Rolle zuzuordnen, während Ihre IAM-Berechtigungen nicht so konfiguriert sind, dass das SAP-System die IAM-Rolle übernimmt, wird Folgendes ausgegeben.
ERROR Could not assume role arn:aws:iam::111122223333:role/SapDemoTranslate
Überprüfen Sie in diesem Fall Ihre IAM-Berechtigungen und die Vertrauenskonfiguration für die unter definierten IAM-Rollen, Benutzer oder beiden. Schritt 1: Bereite deine vor AWS Konto