Iniziare con SDK AWS per SAP ABAP - AWS SDKper SAP ABAP

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Iniziare con SDK AWS per SAP ABAP

Questa sezione descrive come iniziare conSDK. Include informazioni sull'installazioneSDK, sull'esecuzione della configurazione di base e sulla creazione di un esempio di codice Hello World che traduce una frase da una lingua all'altra. Se sei un principiante AWS SDK, ti consigliamo di eseguire questi passaggi in un ambiente sandbox.

Fase 1: Prepara il tuo account AWS

Per iniziare con SDK for SAPABAP, devi avere un account attivo Account AWS . È necessario un Account AWS anche se il SAP sistema è ospitato in locale, su SAP Business Technology Platform (BTP) o con un altro provider di servizi cloud.

Se il tuo SAP sistema è in esecuzione su AWS Cloud, effettuerai chiamate ai AWS servizi del tuo Account AWS.

IAMruolo per SAP gli utenti

  • Crea un IAM ruolo con le istruzioni fornite nella Guida per l'AWS Identity and Access Management utente. Per ulteriori informazioni, vedere Creazione di un ruolo per delegare le autorizzazioni a un AWS servizio. Nota l'Amazon Resource Name (ARN) del IAM ruolo per un uso successivo.

  • Seleziona Amazon EC2 come caso d'uso.

  • Usa SapDemoTranslate come nome del ruolo.

  • Allega il TranslateReadOnly profilo al ruolo.

  • Il ruolo deve avere le seguenti entità per consentire al SAP sistema di assumere il ruolo. Sostituisci "111122223333" con il numero di account AWS .

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Principal": { "AWS": "111122223333" } } ] }

    Questo esempio mostra che qualsiasi preside di Account AWS "111122223333" può assumere il ruolo. Si tratta di un'autorizzazione ampia adatta per proof-of-concept. È possibile utilizzare un principio più ristretto per la produzione, come negli esempi seguenti.

    • Un utente specifico, quando il SAP sistema utilizza una delle seguenti opzioni:

      • SSF-credenziali crittografate da un sistema locale SAP

      • Credenziali dal servizio SAP Credential Store su, ambiente SAP BTP ABAP

    • Un ruolo specifico: quando il SAP sistema è su Amazon EC2 e c'è un profilo di istanza.

    • AmazonEC2: quando il SAP sistema è su Amazon EC2 e non esiste un profilo di istanza.

Per ulteriori informazioni, consulta Best practice for IAM Security.

Autenticazione

L'autenticazione dipende da dove è ospitato il SAP sistema.

Sul AWS cloud

Assicurati che l'EC2istanza su cui è in esecuzione il SAP sistema abbia un profilo di istanza con le seguenti autorizzazioni.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::111122223333:role/SapDemoTranslate" } ] }

Aggiungi quello ARN che hai annotato nel passaggio precedente.

Questa autorizzazione consente al SAP sistema di assumere il SapDemoTranslate ruolo per conto dell'ABAPutente.

In locale SAP BTP o in altro cloud

Se il SAP sistema si trova in locale, su SAP BTP o su un altro cloud, utilizza i seguenti passaggi per stabilire una connessione per l'autenticazione utilizzando una chiave di accesso segreta.

  1. Creare un utente IAM Per ulteriori informazioni, consulta Creazione di IAM utenti (console).

  2. Usa SapDemoSID come nome dell'IAMutente. SIDè l'ID di sistema del SAP sistema.

  3. Assegna SapDemoTranslate un ruolo a questo utente.

Conserva la manoaccess_key. secret_access_key È necessario configurare queste credenziali nel SAP sistema.

Nota

Se il SAP sistema si trova in locale, su SAP BTP o su un altro cloud, puoi autenticarti utilizzando una delle seguenti opzioni.

Fase 2: Installare SDK

Consulta le seguenti schede per le istruzioni di installazione.

SDK for SAP ABAP

Importazione SDK per il SAP ABAP trasporto nel sistemaSAP. Puoi importare i trasporti in qualsiasi client. Per ulteriori informazioni, consultate Installazione SDK di SAP ABAP.

SDK for SAP ABAP - BTP edition

Installa SDK for SAP ABAP - BTP edition utilizzando l'applicazione Deploy Product. Per ulteriori informazioni, vedere Installing SDK for SAP ABAP - BTP edition.

Fase 3: Configurare SDK

Prima di configurareSDK, assicuratevi di disporre delle autorizzazioni necessarie. Per ulteriori informazioni, consulta SAP Autorizzazioni.

Consulta le seguenti schede per le istruzioni di configurazione.

SDK for SAP ABAP

Esegui la /AWS1/IMG transazione per aprire la Guida all'implementazione di SDK for SAPABAP. Per eseguire questa transazione, accedi /n/AWS1/IMG nella barra dei comandi del tuo SAP sistema, quindi scegli Invio.

Completa le seguenti configurazioni.

  • Vai a Prerequisiti tecnici.

  • Vai a Impostazioni globaliConfigura scenari.

  • Vai a Impostazioni globaliImpostazioni tecniche.

  • Vai a Runtime SettingsLog And Trace.

    • Seleziona Nuove voci.

      • Livello di traccia: Nessuna traccia.

      • Linee di scarico massime:100.

      • OPT-IN: enh telemetry: lascia vuoto questo campo.

    • Seleziona Salva.

  • Vai a Impostazioni di runtime → Scenario attivo.

    • In Nuovo scenario, selezionaDEFAULT.

    • Seleziona Conferma modifica dello scenario.

    • Accetta la richiesta.

Prerequisiti per i sistemi locali

Se il SAP sistema è in esecuzione in locale o in un altro cloud, le credenziali devono essere archiviate nel database. SAP Le credenziali vengono crittografate utilizzando SAP SSF e richiedono una libreria crittografica configurata, come quella. SAP CommonCryptoLib

I passaggi per la configurazione di SSF SDK for SAP ABAP sono descritti nella transazione. /AWS1/IMG

Nota

Il prerequisito precedente non si applica se il SAP sistema è in esecuzione su Amazon. EC2 SAPi sistemi in esecuzione su Amazon EC2 recuperano credenziali a rotazione automatica di breve durata dai metadati delle istanze Amazon. EC2

SDK for SAP ABAP - BTP edition

Apri il tuo ABAP ambiente in un browser Web e accedi all'applicazione Custom Business Configurations.

Completa le seguenti configurazioni.

Fase 4: Configurazione funzionale

Consulta le seguenti schede per le istruzioni di configurazione.

SDK for SAP ABAP

Esegui la transazione /AWS1/IMG (inserisci /n/AWS1/IMG nella barra dei comandi e scegli Invio) per aprire la guida all'implementazione di. AWS SDK

  • Vai a Configurazione dell'applicazioneSDKProfilo.

    • Seleziona Nuove voci.

      • Profilo:DEMO.

      • Descrizione:Demo profile.

      • Seleziona Salva.

  • Evidenzia la voce che hai creato e fai clic sul ramo dell'albero Autenticazione e impostazioni.

    • Seleziona Nuove voci.

      • SID: L'ID di SAP sistema del sistema in cui ti trovi attualmente.

      • Client: il client del SAP sistema in cui ti trovi attualmente.

      • ID dello scenario: l'elenco a discesa in cui troverai lo DEFAULT scenario creato dall'amministratore di Basis.

      • AWS Regione: inserisci la AWS regione verso cui desideri effettuare chiamate. Se il SAP sistema è in esecuzione AWS, inserisci la AWS regione in cui è in esecuzione.

      • Metodo di autenticazione:

        • Seleziona Instance Role tramite metadati se il tuo SAP sistema è in esecuzione su AmazonEC2.

        • Seleziona Credentials from SSF Storage se il tuo SAP sistema è in esecuzione in locale o in un altro cloud.

          • Seleziona Imposta credenziali.

          • Inserisci l'ID della chiave di accesso e la chiave di accesso segreta che hai creato nel passaggio precedente.

    • Mantieni vuoti IAMi ruoli di disabilitazione.

    • Seleziona Salva.

  • Fai clic sul ramo dell'albero di mappatura dei IAM ruoli.

    • Seleziona Nuove voci.

      • Immettere il numero di sequenza: 010.

      • Inserisci il IAMruolo logico:TESTUSER.

      • Inserisci IAMruolo ARN: inserisci l'arn:aws: del IAM ruolo contenente la TranslateReadOnly politica creata nel passaggio precedente.

SDK for SAP ABAP - BTP edition

Configura l'autenticazione utilizzando SAP Credential Store. Per ulteriori informazioni, consulta Using SAP Credential Store.

Apri ABAP l'ambiente in un browser Web e accedi all'applicazione Custom Business Configurations.

  • Vai al SDKprofilo.

    • Seleziona Modifica per creare un nuovo profilo.

      • Profilo:DEMO.

      • Descrizione:Demo profile.

  • Seleziona il tasto freccia destra accanto alla voce creata per accedere alla scheda Autenticazione e impostazioni.

    Seleziona Nuove voci.

    • SID: L'ID di SAP sistema del sistema in cui ti trovi attualmente.

    • Client: il client del SAP sistema in cui ti trovi attualmente.

    • ID dello scenario: l'elenco a discesa in cui troverai lo DEFAULT scenario creato dall'amministratore di Basis.

    • AWS Regione: inserisci la AWS regione verso cui desideri effettuare chiamate. Se il SAP sistema è in esecuzione AWS, inserisci la AWS regione in cui è in esecuzione.

    • Metodo di autenticazione: seleziona Credenziali da SAP Credential Store.

    • Inserisci il namespace e il nome chiave delle credenziali archiviate in Credentials Store. SAP

    • Inserisci il nome dell'accordo di comunicazione creato per stabilire la comunicazione tra SDK for SAP ABAP - BTP edition e Credential Store. SAP

    • Lascia vuoto il campo Disabilita IAM ruoli.

  • Fai clic con il pulsante destro del mouse sul tasto freccia destra accanto alla voce creata per accedere alla scheda IAMRole Mapping.

    Seleziona Nuove voci.

    • Immettere il numero di sequenza: 010.

    • Inserisci il IAMruolo logico:TESTUSER.

    • Inserisci IAMruolo ARN: inserisci l'arn:aws: del IAM ruolo contenente la TranslateReadOnly politica creata nel passaggio precedente.

Fase 5: Autorizzazione degli utenti SAP

SAPgli utenti non sono autorizzati a utilizzare la AWS funzionalità per impostazione predefinita. Gli utenti devono essere autorizzati esplicitamente utilizzando le SAP autorizzazioni. Per ulteriori dettagli, consulta le schede seguenti.

SDK for SAP ABAP

Crea un ruolo PFCG

  • Vai alla transazione PFCG

  • Inserisci il nome del ruolo ZAWS_SDK_DEMO_TESTUSER e seleziona Crea ruolo singolo.

    • Descrizione:Role for demo AWS SDK functionality.

    • Vai alla scheda Autorizzazioni.

    • Seleziona Modifica dati di autorizzazione e accetta il pop-up informativo.

    • Nel pop-up Scegli modello, seleziona Non selezionare i modelli.

    • Seleziona Aggiungi manualmente dalla barra degli strumenti.

    • Aggiungi i seguenti oggetti di autorizzazione:

      • /AWS1/LROL

      • /AWS1/SESS

    • Nell'albero di autorizzazione, inserisci:

      • Profilo per l'accesso AWSAPIs: DEMO

      • IAMRuolo logico: TESTUSER

    • Seleziona Salva.

    • Seleziona Genera.

    • Seleziona Indietro.

    • Seleziona Salva per salvare il ruolo.

Assegna il PFCG ruolo agli utenti SAP

Qualsiasi utente a cui è stato assegnato il ZAWS_SDK_DEMO_TESTUSER ruolo sarà autorizzato a utilizzare AWS SDK le funzioni con le impostazioni configurate nel DEMO SDK profilo. L'utente autorizzato assumerà anche il IAM ruolo associato al IAM ruolo TESTUSER logico in quel profilo.

  • Esegui transazione. SU01

    • Inserisci l'ID utente di un SAP utente che testerà AWS SDK la funzionalità.

    • Seleziona Cambia.

    • Vai alla scheda Ruoli e assegna il ZAWS_SDK_DEMO_TESTUSER ruolo all'utente.

    • Seleziona Salva.

SDK for SAP ABAP - BTP edition

Crea un ruolo aziendale

  • Apri il tuo ABAP ambiente in un browser Web e accedi all'applicazione Maintain Business Roles.

  • Seleziona Crea da modello e inserisci i seguenti dettagli.

    • Modello: scegli/AWS1/RT_BTP_ENDUSER.

    • Nuovo ID del ruolo aziendale: inserisci un ID.

    • Descrizione del nuovo ruolo aziendale: inserisci una descrizione.

  • Seleziona OK per visualizzare la pagina relativa al ruolo aziendale.

  • Nella scheda Dettagli generali del ruolo, vai a Access Categories e imposta il campo Write, Read, Value Help su Restricted.

  • Seleziona Mantieni restrizioni ed espandi Tipi di restrizione assegnati dal riquadro di navigazione a sinistra. Aggiorna il seguente campo nella sezione Restrizioni e valori.

    • In Scegli SDK sessione, seleziona l'icona a forma di matita accanto a SDKProfilo e vai alla scheda Intervalli. Entra DEMO e seleziona Aggiungi.

    • In Scegli IAM ruolo logico, seleziona l'icona a forma di matita accanto a IAMRuolo logico e vai alla scheda Intervalli. Entra TESTUSER e seleziona Aggiungi.

      Seleziona l'icona a forma di matita accanto a SDKProfilo e vai alla scheda Intervalli. Entra DEMO e seleziona Aggiungi

  • Torna al modello di ruolo aziendale e apri la scheda Utenti aziendali. Seleziona Aggiungi per assegnare il ruolo di business appena creato a un utente SAP aziendale che ne testerà la SDK funzionalità. Seleziona Salva.

Qualsiasi utente aziendale assegnato al ruolo di business creato sarà autorizzato a utilizzare AWS SDK le funzioni con le impostazioni configurate nel DEMO SDK profilo. L'utente autorizzato assumerà anche il IAM ruolo associato al IAM ruolo TESTUSER logico in quel profilo.

Fase 6: Scrivere il codice

Consulta le seguenti schede per maggiori dettagli.

SDK for SAP ABAP
  1. Transazione aperta. SE38

    • Inserisci ZDEMO_TRANSLATE_HELLO_WORLD come nome del programma.

    • Seleziona Create.

    • Inserisci AWS SDK Hello World In Any Language come titolo.

    • Tipo: scegli Programma eseguibile.

    • Stato: scegli Programma di test.

    • Seleziona Salva.

    • Salva il programma come oggetto locale.

Aggiungere il codice seguente.

*&---------------------------------------------------------------------* *& 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
  1. Fai clic con il pulsante destro del mouse sul pacchetto in cui deve essere creata la ABAP classe, quindi seleziona Nuovo > ABAPclasse.

  2. Inserisci ZCL_DEMO_XL8_SIMPLE il nome della classe e aggiungi una descrizione della classe. Seleziona Avanti.

  3. Crea o scegli una richiesta di trasporto. Seleziona Fine.

Aggiungi il codice seguente.

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.

Per i dettagli su come scrivere ABAP codice che utilizza ilSDK, vedere Uso SDK AWS per SAP ABAP.

Fase 7: Eseguire l'applicazione

Per ulteriori dettagli, consulta le schede seguenti.

SDK for SAP ABAP

Esegui l'applicazione inSE38. In caso di successo, il risultato sarà il seguente.

Source Phrase: Hello, World Target Phrase: Hola, mundo

Se mancano le autorizzazioni, la configurazione o i prerequisiti di base, è possibile che venga visualizzato un messaggio di errore. Guarda l'esempio seguente.

ERROR Could not find configuration under profile DEMO with scenario DEFAULT for SBX:001

Se il SAP ruolo autorizza l'uso di un SDK profilo e lo associa a un IAM ruolo logico mentre le IAM autorizzazioni non sono configurate per l'assunzione del IAM ruolo da parte del SAP sistema, il risultato sarà il seguente.

ERROR Could not assume role arn:aws:iam::111122223333:role/SapDemoTranslate

In questo caso, rivedi le IAM autorizzazioni e la configurazione di trust per i IAM ruoli, gli utenti o entrambi definiti in. Fase 1: Prepara il tuo account AWS

SDK for SAP ABAP - BTP edition

Esegui l'applicazione su Eclipse > Esegui come > ABAPApplicazione (console). In caso di successo, il risultato sarà il seguente.

Source Phrase: Hello, World Target Phrase: Hola, mundo

Se mancano le autorizzazioni, la configurazione o i prerequisiti di base, è possibile che venga visualizzato un messaggio di errore. Guarda l'esempio seguente.

ERROR Could not find configuration under profile DEMO with scenario DEFAULT for SBX:001

Se il SAP ruolo autorizza l'uso di un SDK profilo e lo associa a un IAM ruolo logico mentre le IAM autorizzazioni non sono configurate per l'assunzione del IAM ruolo da parte del SAP sistema, il risultato sarà il seguente.

ERROR Could not assume role arn:aws:iam::111122223333:role/SapDemoTranslate

In questo caso, rivedi le IAM autorizzazioni e la configurazione di trust per i IAM ruoli, gli utenti o entrambi definiti in. Fase 1: Prepara il tuo account AWS