Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Démarrage avec AWS SDK pour SAP ABAP
Cette section explique comment démarrer avec le SDK. Il inclut des informations sur l'installation du SDK, la configuration de base et la création d'un exemple de code Hello World qui traduit une phrase d'une langue à une autre. Si vous utilisez le AWS SDK pour la première fois, nous vous recommandons d'effectuer ces étapes dans un environnement sandbox.
Inscrivez-vous pour Compte AWS
Pour commencer AWS, vous avez besoin d'un Compte AWS. Pour plus d'informations sur la création d'un Compte AWS, consultez la section Démarrage avec un Compte AWS dans le Guide de Gestion de compte AWS référence.
Étape 1 : Préparez votre AWS compte
Pour commencer à utiliser le SDK pour SAP ABAP, vous devez disposer d'un compte actif. Compte AWS Vous en avez besoin Compte AWS même si votre système SAP est hébergé sur site, sur SAP Business Technology Platform (BTP) ou auprès d'un autre fournisseur de cloud.
Si votre système SAP fonctionne sur le AWS cloud, vous passerez des appels aux AWS
services de votre Compte AWS.
Rôle IAM pour les utilisateurs de SAP
-
Créez un rôle IAM en suivant les instructions fournies dans le Guide de l'Gestion des identités et des accès AWS utilisateur. Pour plus d'informations, consultez la section Création d'un rôle pour déléguer des autorisations à un AWS service. Notez l'Amazon Resource Name (ARN) du rôle IAM pour une utilisation ultérieure.
-
Sélectionnez Amazon EC2 comme cas d'utilisation.
-
SapDemoTranslateUtilisez-le comme nom du rôle.
-
Joignez un TranslateReadOnly profil au rôle.
-
Le rôle doit comporter les entités suivantes pour permettre au système SAP d'assumer le rôle. Remplacez "111122223333" par votre numéro de compte AWS
.
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"sts:AssumeRole"
],
"Principal": {
"AWS": "111122223333"
}
}
]
}
Cet exemple montre que n'importe quel directeur du Compte AWS
"111122223333" peut assumer le rôle. Il s'agit d'une autorisation générale qui convient à la preuve de concept. Vous pouvez utiliser un principe plus restreint pour la production, comme dans les exemples suivants.
-
Un utilisateur spécifique : lorsque le système SAP utilise l'un des éléments suivants :
-
SSF-encrypted informations d'identification provenant d'un système SAP sur site
-
Informations d'identification provenant du service SAP Credential Store sur l'environnement SAP BTP, ABAP
-
Un rôle spécifique : lorsque le système SAP est sur Amazon EC2 et qu'il existe un profil d'instance.
-
Amazon EC2 : lorsque le système SAP est sur Amazon EC2 et qu'il n'existe aucun profil d'instance.
Pour plus d'informations, consultez la section Meilleures pratiques en matière de sécurité IAM.
Authentification
L'authentification dépend de l'endroit où votre système SAP est hébergé.
Date AWS Cloud
Assurez-vous que l'instance EC2 sur laquelle s'exécute votre système SAP possède un profil d'instance avec les autorisations suivantes.
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::111122223333:role/SapDemoTranslate"
}
]
}
Ajoutez l'ARN que vous avez noté à l'étape précédente.
Cette autorisation permet à votre système SAP d'assumer le SapDemoTranslate rôle au nom de l'utilisateur ABAP.
On-premises, SAP BTP ou autre cloud
Si votre système SAP est situé sur site, sur SAP BTP ou sur un autre cloud, procédez comme suit pour établir une connexion à des fins d'authentification à l'aide d'une clé d'accès secrète.
-
Créez un utilisateur IAM. Pour plus d'informations, consultez la section Création d'utilisateurs IAM (console).
-
SapDemoSIDUtilisez-le comme nom d'utilisateur IAM. SIDest l'ID système de votre système SAP.
-
Attribuez SapDemoTranslate un rôle à cet utilisateur.
Conservez access_key la mainsecret_access_key. Vous devez configurer ces informations d'identification dans votre système SAP.
Si votre système SAP est situé sur site, sur SAP BTP ou sur un autre cloud, vous pouvez vous authentifier à l'aide de l'une des options suivantes.
Étape 2 : Installation du SDK
Consultez les onglets suivants pour les instructions d'installation.
- SDK for SAP ABAP
-
Importez le SDK pour les transports SAP ABAP dans votre système SAP. Vous pouvez importer les transports dans n'importe quel client. Pour plus d'informations, consultez la section Installation du SDK pour SAP ABAP.
- SDK for SAP ABAP - BTP edition
-
Installez le SDK pour SAP ABAP - édition BTP à l'aide de l'application Deploy Product. Pour plus d'informations, consultez la section Installation du SDK pour SAP ABAP - édition BTP.
Avant de configurer le SDK, assurez-vous de disposer des autorisations requises. Pour plus d'informations, consultez la section Autorisations https://docs.aws.amazon.com/sdk-for-sapabap/latest/developer-guide/authorizations.html SAP.
Consultez les onglets suivants pour les instructions de configuration.
- SDK for SAP ABAP
-
Exécutez la /AWS1/IMG transaction pour ouvrir le Guide de mise en œuvre du SDK pour SAP ABAP. Pour exécuter cette transaction, entrez /n/AWS1/IMG dans la barre de commandes de votre système SAP, puis choisissez Entrée.
Effectuez les configurations suivantes.
-
Accédez à la section Prérequis techniques.
-
Accédez à Paramètres généraux → Configurer les scénarios.
-
Accédez à Paramètres généraux → Paramètres techniques.
-
Accédez à Paramètres d'exécution → Log and Trace.
-
Accédez à Paramètres d'exécution → Scénario actif.
Prérequis pour les systèmes On-Premises
Si votre système SAP fonctionne sur site ou dans un autre cloud, les informations d'identification doivent être stockées dans votre base de données SAP. Les informations d'identification sont chiffrées à l'aide de SAP SSF et nécessitent une bibliothèque cryptographique configurée, telle que celle de SAP. CommonCryptoLib
Les étapes de configuration de SSF pour le SDK pour SAP ABAP sont décrites dans la transaction. /AWS1/IMG
La condition préalable précédente ne s'applique pas si votre système SAP s'exécute sur Amazon EC2. Les systèmes SAP exécutés sur Amazon EC2 extraient des informations d'identification éphémères et rotatives automatiquement à partir des métadonnées de l'instance Amazon EC2.
- SDK for SAP ABAP - BTP edition
-
Ouvrez votre environnement ABAP dans un navigateur Web et accédez à l'application Custom Business Configurations.
Effectuez les configurations suivantes.
Étape 4 : Configuration fonctionnelle
Consultez les onglets suivants pour les instructions de configuration.
- SDK for SAP ABAP
-
Exécutez la transaction /AWS1/IMG (entrez /n/AWS1/IMG dans la barre de commandes, puis choisissez Entrée) pour ouvrir le guide d'implémentation du AWS SDK.
-
Accédez à Configuration de l'application → Profil SDK.
-
Sélectionnez l'entrée que vous avez créée et cliquez sur la branche de l'arborescence Authentification et paramètres.
-
Cliquez sur la branche de l'arborescence IAM Role Mapping.
- SDK for SAP ABAP - BTP edition
-
Configurez l'authentification à l'aide de SAP Credential Store. Pour plus d'informations, consultez la section Utilisation de SAP Credential Store.
Ouvrez votre environnement ABAP dans un navigateur Web et accédez à l'application Custom Business Configurations.
-
Accédez au profil SDK.
-
Sélectionnez la flèche droite à côté de l'entrée créée pour accéder à l'onglet Authentification et paramètres.
Sélectionnez Nouvelles entrées.
-
SID : ID du système SAP dans lequel vous vous trouvez actuellement.
-
Client : le client du système SAP dans lequel vous vous trouvez actuellement.
-
ID du scénario : liste déroulante dans laquelle vous trouverez le scénario PAR DÉFAUT créé par votre administrateur Basis.
-
AWS Région : entrez la AWS région vers laquelle vous souhaitez passer des appels. Si votre système SAP est en cours d'exécution AWS, entrez la AWS région dans laquelle il s'exécute.
-
Méthode d'authentification : sélectionnez les informations d'identification dans SAP Credential Store.
-
Entrez l'espace de noms et le nom de clé des informations d'identification stockées dans SAP Credentials Store.
-
Entrez le nom du dispositif de communication créé pour établir la communication entre le SDK pour SAP ABAP - édition BTP et SAP Credential Store.
-
Laissez le champ Désactiver les rôles IAM vide.
-
Right-click sur la flèche droite à côté de l'entrée créée pour accéder à l'onglet IAM Role Mapping.
Sélectionnez Nouvelles entrées.
-
Entrez le numéro de séquence : 010.
-
Entrez le rôle IAM logique : TESTUSER.
-
Entrez l'ARN du rôle IAM : entrez le arn:aws : du rôle IAM contenant la TranslateReadOnly politique créée à l'étape précédente.
Étape 5 : Autoriser les utilisateurs SAP
Les utilisateurs de SAP ne sont pas autorisés à utiliser AWS les fonctionnalités par défaut. Les utilisateurs doivent être explicitement autorisés à l'aide des autorisations SAP. Consultez les onglets suivants pour plus de détails.
- SDK for SAP ABAP
-
Création d'un rôle PFCG
Attribuer le rôle PFCG aux utilisateurs SAP
Tout utilisateur auquel le ZAWS_SDK_DEMO_TESTUSER rôle a été attribué sera autorisé à utiliser les fonctions du AWS SDK avec les paramètres configurés dans le profil du DEMO SDK. L'utilisateur autorisé assumera également le rôle IAM mappé au rôle IAM TESTUSER logique dans ce profil.
- SDK for SAP ABAP - BTP edition
-
Création d'un rôle professionnel
-
Ouvrez votre environnement ABAP dans un navigateur Web et accédez à l'application Maintain Business Roles.
-
Sélectionnez Créer à partir d'un modèle et entrez les informations suivantes.
-
Modèle — Choisissez/AWS1/RT_BTP_ENDUSER.
-
Nouvel identifiant de rôle professionnel — Entrez un identifiant.
-
Description du nouveau rôle professionnel — Entrez une description.
-
Sélectionnez OK pour afficher la page relative au rôle professionnel.
-
Dans l'onglet Détails généraux du rôle, accédez à Catégories d'accès et définissez le champ d'aide à l'écriture, à la lecture et à la valeur comme Restreint.
-
Sélectionnez Conserver les restrictions, puis développez Types de restrictions attribués dans le volet de navigation de gauche. Mettez à jour le champ suivant dans la section Restrictions et valeurs.
-
Dans Choisir une session SDK, sélectionnez l'icône en forme de crayon à côté du profil SDK, puis accédez à l'onglet Plages. EntrezDEMO, puis sélectionnez Ajouter.
-
Sous Choisir un rôle IAM logique, sélectionnez l'icône en forme de crayon à côté du rôle IAM logique, puis accédez à l'onglet Plages. EntrezTESTUSER, puis sélectionnez Ajouter.
Sélectionnez l'icône en forme de crayon à côté du profil SDK, puis accédez à l'onglet Plages. EntrezDEMO, puis sélectionnez Ajouter
-
Revenez au modèle de rôle professionnel et ouvrez l'onglet Utilisateurs professionnels. Sélectionnez Ajouter pour attribuer le rôle professionnel nouvellement créé à un utilisateur professionnel de SAP qui testera les fonctionnalités du SDK. Cliquez sur Enregistrer.
Tout utilisateur professionnel assigné au rôle professionnel créé sera autorisé à utiliser les fonctions du AWS SDK avec les paramètres configurés dans le profil du DEMO SDK. L'utilisateur autorisé assumera également le rôle IAM mappé au rôle IAM TESTUSER logique dans ce profil.
Étape 6 : Rédigez le code
Consultez les onglets suivants pour plus de détails.
- SDK for SAP ABAP
-
-
Transaction ouverteSE38.
-
Entrez ZDEMO_TRANSLATE_HELLO_WORLD le nom du programme.
-
Sélectionnez Create.
-
Entrez AWS SDK Hello World In Any Language comme titre.
-
Type : choisissez Programme exécutable.
-
État : choisissez Programme de test.
-
Cliquez sur Enregistrer.
-
Enregistrez le programme en tant qu'objet local.
Ajoutez le code suivant.
*&---------------------------------------------------------------------*
*& 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 sur le package dans lequel la classe ABAP doit être créée, puis sélectionnez Nouveau > Classe ABAP.
-
Entrez le nom ZCL_DEMO_XL8_SIMPLE de la classe et ajoutez une description de la classe. Sélectionnez Suivant.
-
Créez ou choisissez une demande de transport. Sélectionnez Terminer.
Ajoutez le code suivant.
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.
Pour plus de détails sur la façon d'écrire du code ABAP à l'aide du SDK, voir Utilisation. AWS SDK pour SAP ABAP
Étape 7 : Exécutez l'application
Consultez les onglets suivants pour plus de détails.
- SDK for SAP ABAP
-
Exécutez l'application dansSE38. En cas de succès, votre résultat sera le suivant.
Source Phrase: Hello, World
Target Phrase: Hola, mundo
S'il vous manque des autorisations, une configuration ou des prérequis de base, un message d'erreur peut s'afficher. Consultez l'exemple suivant.
ERROR Could not find configuration under profile DEMO with
scenario DEFAULT for SBX:001
Si votre rôle SAP vous autorise à utiliser un profil SDK et à le mapper à un rôle IAM logique alors que vos autorisations IAM ne sont pas configurées pour que le système SAP assume le rôle IAM, voici votre résultat.
ERROR Could not assume role arn:aws:iam::111122223333:role/SapDemoTranslate
Dans ce cas, vérifiez vos autorisations IAM et votre configuration de confiance sur les rôles IAM, les utilisateurs ou les deux définis dans. Étape 1 : Préparez votre AWS compte
- SDK for SAP ABAP - BTP edition
-
Exécutez l'application sur Eclipse > Exécuter en tant que > Application ABAP (console). En cas de succès, votre résultat sera le suivant.
Source Phrase: Hello, World
Target Phrase: Hola, mundo
S'il vous manque des autorisations, une configuration ou des prérequis de base, un message d'erreur peut s'afficher. Consultez l'exemple suivant.
ERROR Could not find configuration under profile DEMO with
scenario DEFAULT for SBX:001
Si votre rôle SAP vous autorise à utiliser un profil SDK et à le mapper à un rôle IAM logique alors que vos autorisations IAM ne sont pas configurées pour que le système SAP assume le rôle IAM, voici votre résultat.
ERROR Could not assume role arn:aws:iam::111122223333:role/SapDemoTranslate
Dans ce cas, vérifiez vos autorisations IAM et votre configuration de confiance sur les rôles IAM, les utilisateurs ou les deux définis dans. Étape 1 : Préparez votre AWS compte