Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memulai dengan AWS SDK untuk SAP ABAP
Bagian ini menjelaskan cara memulai dengan SDK. Ini mencakup informasi tentang menginstal SDK, melakukan konfigurasi dasar, dan membuat contoh kode Hello World yang menerjemahkan frasa dari satu bahasa ke bahasa lain. Jika Anda baru mengenal AWS SDK, sebaiknya lakukan langkah-langkah ini di lingkungan kotak pasir.
Langkah 1: Siapkan AWS akun Anda
Untuk memulai dengan SDK untuk SAP ABAP, Anda harus memiliki yang aktif. Akun AWS Anda memerlukan Akun AWS bahkan jika sistem SAP Anda di-host di tempat, di SAP Business Technology Platform (BTP) atau dengan penyedia cloud lain.
Jika sistem SAP Anda berjalan di AWS Cloud, maka Anda akan melakukan panggilan ke AWS
layanan di Anda Akun AWS.
Peran IAM untuk pengguna SAP
-
Buat peran IAM dengan instruksi yang disediakan dalam Panduan AWS Identity and Access Management Pengguna. Untuk informasi selengkapnya, lihat Membuat peran untuk mendelegasikan izin ke layanan. AWS Perhatikan Nama Sumber Daya Amazon (ARN) dari peran IAM untuk digunakan nanti.
-
Pilih Amazon EC2 sebagai kasus penggunaan.
-
Gunakan SapDemoTranslate
sebagai nama peran.
-
Lampirkan TranslateReadOnly
profil ke peran.
-
Peran harus memiliki entitas berikut untuk memungkinkan sistem SAP untuk mengambil peran. Ganti "111122223333"
dengan nomor akun AWS
Anda.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"sts:AssumeRole"
],
"Principal": {
"AWS": "111122223333
"
}
}
]
}
Contoh ini menunjukkan bahwa setiap prinsipal dari Akun AWS
"111122223333"
dapat mengambil peran. Ini adalah izin luas yang cocok untuk proof-of-concept. Anda dapat menggunakan prinsipal yang lebih sempit untuk produksi, seperti contoh berikut.
-
Pengguna tertentu — ketika sistem SAP menggunakan salah satu dari berikut ini:
-
Kredensil terenkripsi SSF dari sistem SAP lokal
-
Kredensil dari layanan SAP Credential Store di SAP BTP, lingkungan ABAP
-
Peran khusus - ketika sistem SAP ada di Amazon EC2 dan ada profil instance.
-
Amazon EC2 — ketika sistem SAP ada di Amazon EC2 dan tidak ada profil instance.
Untuk informasi selengkapnya, lihat Praktik terbaik untuk Keamanan IAM.
Autentikasi
Otentikasi tergantung pada di mana sistem SAP Anda di-host.
Di AWS Cloud
Pastikan bahwa EC2 instance di mana sistem SAP Anda berjalan memiliki profil instance dengan izin berikut.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::111122223333:role/SapDemoTranslate
"
}
]
}
Tambahkan ARN yang Anda catat di langkah sebelumnya.
Izin ini memungkinkan sistem SAP Anda untuk mengambil SapDemoTranslate
peran atas nama pengguna ABAP.
Lokal, SAP BTP, atau cloud lainnya
Jika sistem SAP Anda berada di tempat, di SAP BTP atau di cloud lain, gunakan langkah-langkah berikut untuk membuat koneksi untuk otentikasi menggunakan kunci akses rahasia.
-
Buat pengguna IAM. Untuk informasi selengkapnya, lihat Membuat pengguna IAM (konsol).
-
Gunakan SapDemoSID
sebagai nama pengguna IAM. SID
adalah ID sistem sistem SAP Anda.
-
Tetapkan SapDemoTranslate
peran untuk pengguna ini.
Pertahankan access_key
dansecret_access_key
. Anda harus mengonfigurasi kredensil ini di sistem SAP Anda.
Jika sistem SAP Anda berada di tempat, di SAP BTP atau di cloud lain, Anda dapat mengautentikasi menggunakan salah satu opsi berikut.
Langkah 2: Instal SDK
Lihat tab berikut untuk petunjuk penginstalan.
- SDK for SAP ABAP
-
Impor SDK untuk transportasi SAP ABAP di sistem SAP Anda. Anda dapat mengimpor transportasi ke klien mana pun. Untuk informasi selengkapnya, lihat Menginstal SDK untuk SAP ABAP.
- SDK for SAP ABAP - BTP edition
-
Instal SDK untuk SAP ABAP - edisi BTP menggunakan aplikasi Deploy Product. Untuk informasi selengkapnya, lihat Menginstal SDK untuk SAP ABAP - edisi BTP.
Sebelum mengonfigurasi SDK, pastikan Anda memiliki otorisasi yang diperlukan. Untuk informasi selengkapnya, lihat otorisasi SAP.
Lihat tab berikut untuk petunjuk konfigurasi.
- SDK for SAP ABAP
-
Jalankan /AWS1/IMG
transaksi untuk membuka Panduan Implementasi untuk SDK untuk SAP ABAP. Untuk menjalankan transaksi ini, masukkan /n/AWS1/IMG
di bilah perintah sistem SAP Anda, lalu pilih Enter.
Selesaikan konfigurasi berikut.
-
Pergi ke Prasyarat Teknis.
-
Buka Pengaturan Global → Konfigurasi Skenario.
-
Buka Pengaturan Global → Pengaturan Teknis.
-
Buka Pengaturan Runtime → Log Dan Trace.
-
Pilih Entri Baru.
-
Pilih Simpan.
-
Buka Pengaturan Runtime → Skenario Aktif.
Prasyarat untuk Sistem Lokal
Jika sistem SAP Anda berjalan di tempat atau di cloud lain, maka kredensialnya harus disimpan di database SAP Anda. Kredensialnya dienkripsi menggunakan SAP SSF dan memerlukan pustaka kriptografi yang dikonfigurasi, seperti SAP. CommonCryptoLib
Langkah-langkah untuk mengkonfigurasi SSF untuk SDK untuk SAP ABAP dijelaskan dalam transaksi. /AWS1/IMG
Prasyarat sebelumnya tidak berlaku jika sistem SAP Anda berjalan di Amazon. EC2 Sistem SAP yang berjalan di Amazon EC2 mengambil kredenal yang berumur pendek dan berputar secara otomatis dari metadata instans Amazon. EC2
- SDK for SAP ABAP - BTP edition
-
Buka lingkungan ABAP Anda di browser web, dan arahkan ke aplikasi Konfigurasi Bisnis Kustom.
Selesaikan konfigurasi berikut.
Langkah 4: Pengaturan fungsional
Lihat tab berikut untuk petunjuk penyiapan.
- SDK for SAP ABAP
-
Jalankan transaksi /AWS1/IMG
(masukkan /n/AWS1/IMG
di bilah perintah, dan pilih Enter) untuk membuka panduan implementasi AWS SDK.
-
Buka Konfigurasi Aplikasi → Profil SDK.
-
Pilih Entri Baru.
-
Profil:DEMO
.
-
Keterangan:Demo
profile
.
-
Pilih Simpan.
-
Sorot entri yang Anda buat dan klik cabang pohon Otentikasi Dan Pengaturan.
-
Klik pada cabang pohon Pemetaan Peran IAM.
-
Pilih Entri Baru.
-
Masukkan nomor Urutan: 010.
-
Masukkan peran IAM Logis: TESTUSER.
-
Masukkan ARN Peran IAM: masukkan arn:aws: dari peran IAM yang berisi kebijakan yang dibuat TranslateReadOnly
pada langkah sebelumnya.
- SDK for SAP ABAP - BTP edition
-
Siapkan otentikasi menggunakan SAP Credential Store. Untuk informasi selengkapnya, lihat Menggunakan SAP Credential Store.
Buka lingkungan ABAP Anda di browser web, dan arahkan ke aplikasi Konfigurasi Bisnis Kustom.
-
Buka Profil SDK.
-
Pilih tombol panah kanan di sebelah entri yang dibuat untuk menavigasi ke tab Otentikasi dan Pengaturan.
Pilih Entri Baru.
-
SID: ID sistem dari sistem SAP yang Anda gunakan saat ini.
-
Klien: Klien dari sistem SAP yang Anda gunakan saat ini.
-
ID Skenario: Daftar dropdown tempat Anda akan menemukan skenario DEFAULT yang dibuat oleh administrator Basis Anda.
-
AWS Wilayah: masukkan AWS Wilayah tempat Anda ingin melakukan panggilan. Jika sistem SAP Anda berjalan AWS, masukkan AWS Wilayah tempat ia berjalan.
-
Metode Otentikasi: Pilih Kredensial dari SAP Credential Store.
-
Masukkan nama Namespace dan Key dari kredensial yang disimpan di SAP Credentials Store.
-
Masukkan nama Pengaturan Komunikasi yang dibuat untuk menjalin komunikasi antara SDK untuk SAP ABAP - edisi BTP dan SAP Credential Store.
-
Biarkan Nonaktifkan peran IAM tetap kosong.
-
Klik kanan pada tombol panah kanan di sebelah entri yang dibuat untuk menavigasi ke tab Pemetaan Peran IAM.
Pilih Entri Baru.
-
Masukkan nomor Urutan: 010.
-
Masukkan peran IAM Logis: TESTUSER.
-
Masukkan ARN Peran IAM: masukkan arn:aws: dari peran IAM yang berisi kebijakan yang dibuat TranslateReadOnly
pada langkah sebelumnya.
Langkah 5: Otorisasi Pengguna SAP
Pengguna SAP tidak diizinkan untuk menggunakan AWS fungsionalitas secara default. Pengguna harus secara eksplisit diotorisasi menggunakan otorisasi SAP. Lihat tab berikut untuk lebih jelasnya.
- SDK for SAP ABAP
-
Buat peran PFCG
Tetapkan peran PFCG ke pengguna SAP
Setiap pengguna yang memiliki ZAWS_SDK_DEMO_TESTUSER
peran yang ditetapkan akan diberi wewenang untuk menggunakan fungsi AWS SDK dengan pengaturan yang dikonfigurasi di profil DEMO
SDK. Pengguna yang berwenang juga akan menganggap peran IAM yang dipetakan ke peran IAM TESTUSER
logis dalam profil itu.
- SDK for SAP ABAP - BTP edition
-
Buat peran Bisnis
-
Buka lingkungan ABAP Anda di browser web, dan arahkan ke aplikasi Pertahankan Peran Bisnis.
-
Pilih Buat dari Template, dan masukkan detail berikut.
-
Template - Pilih/AWS1/RT_BTP_ENDUSER
.
-
ID Peran Bisnis Baru - Masukkan ID.
-
Deskripsi Peran Bisnis Baru — Masukkan deskripsi.
-
Pilih OK untuk melihat halaman untuk peran bisnis.
-
Di bawah tab Rincian Peran Umum, buka Kategori Akses, dan atur bidang Tulis, Baca, Nilai Bantuan sebagai Dibatasi.
-
Pilih Pertahankan Pembatasan, dan perluas Jenis Pembatasan yang Ditugaskan dari panel navigasi kiri. Perbarui bidang berikut di bagian Pembatasan dan Nilai.
-
Di bawah Pilih Sesi SDK, pilih ikon pensil di samping Profil SDK, dan arahkan ke tab Ranges. MasukkanDEMO
, dan pilih Tambah.
-
Di bawah Pilih Peran IAM Logis, pilih ikon pensil di samping Peran IAM Logis, dan arahkan ke tab Ranges. MasukkanTESTUSER
, dan pilih Tambah.
Pilih ikon pensil di sebelah Profil SDK, dan arahkan ke tab Ranges. MasukkanDEMO
, dan pilih Tambah
-
Arahkan kembali ke template Peran Bisnis, dan buka tab Pengguna Bisnis. Pilih Tambah untuk menetapkan Peran Bisnis yang baru dibuat ke pengguna bisnis SAP yang akan menguji fungsionalitas SDK. Pilih Simpan.
Setiap pengguna bisnis yang ditetapkan ke Peran Bisnis yang dibuat akan diberi wewenang untuk menggunakan fungsi AWS SDK dengan setelan yang dikonfigurasi di profil DEMO
SDK. Pengguna yang berwenang juga akan menganggap peran IAM yang dipetakan ke peran IAM TESTUSER
logis dalam profil itu.
Langkah 6: Tulis kodenya
Lihat tab berikut untuk lebih jelasnya.
- SDK for SAP ABAP
-
-
Buka transaksiSE38
.
-
Masukkan ZDEMO_TRANSLATE_HELLO_WORLD
sebagai nama program.
-
Pilih Create
.
-
Masukkan AWS SDK Hello World In Any Language
sebagai judul.
-
Jenis: pilih Program yang Dapat Dieksekusi.
-
Status: pilih Program Uji.
-
Pilih Simpan.
-
Simpan program sebagai Objek Lokal.
Tambahkan kode berikut.
*&---------------------------------------------------------------------*
*& 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
-
-
Klik kanan pada paket di mana kelas ABAP perlu dibuat, lalu pilih New > ABAP class.
-
Masukkan ZCL_DEMO_XL8_SIMPLE
nama Kelas, dan tambahkan deskripsi Kelas. Pilih Selanjutnya.
-
Buat atau pilih permintaan transportasi. Pilih Selesai.
Tambahkan kode berikut.
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.
Untuk detail tentang cara menulis kode ABAP yang menggunakan SDK, lihat Menggunakan. AWS SDK untuk SAP ABAP
Langkah 7: Jalankan aplikasi
Lihat tab berikut untuk lebih jelasnya.
- SDK for SAP ABAP
-
Jalankan aplikasi diSE38
. Jika berhasil, berikut ini akan menjadi output Anda.
Source Phrase: Hello, World
Target Phrase: Hola, mundo
Jika Anda kehilangan otorisasi, konfigurasi, atau prasyarat Basis, Anda mungkin mendapatkan pesan kesalahan. Lihat contoh berikut ini.
ERROR Could not find configuration under profile DEMO with
scenario DEFAULT for SBX:001
Jika peran SAP Anda mengizinkan Anda untuk menggunakan profil SDK dan memetakannya ke peran IAM logis sementara izin IAM Anda tidak dikonfigurasi untuk sistem SAP untuk mengambil peran IAM, berikut ini akan menjadi output Anda.
ERROR Could not assume role arn:aws:iam::111122223333:role/SapDemoTranslate
Dalam hal ini, tinjau izin IAM Anda dan konfigurasi kepercayaan pada peran IAM, pengguna, atau keduanya yang ditentukan. Langkah 1: Siapkan AWS akun Anda
- SDK for SAP ABAP - BTP edition
-
Jalankan aplikasi di Eclipse > Run As > ABAP Application (Console). Jika berhasil, berikut ini akan menjadi output Anda.
Source Phrase: Hello, World
Target Phrase: Hola, mundo
Jika Anda kehilangan otorisasi, konfigurasi, atau prasyarat Basis, Anda mungkin mendapatkan pesan kesalahan. Lihat contoh berikut ini.
ERROR Could not find configuration under profile DEMO with
scenario DEFAULT for SBX:001
Jika peran SAP Anda mengizinkan Anda untuk menggunakan profil SDK dan memetakannya ke peran IAM logis sementara izin IAM Anda tidak dikonfigurasi untuk sistem SAP untuk mengambil peran IAM, berikut ini akan menjadi output Anda.
ERROR Could not assume role arn:aws:iam::111122223333:role/SapDemoTranslate
Dalam hal ini, tinjau izin IAM Anda dan konfigurasi kepercayaan pada peran IAM, pengguna, atau keduanya yang ditentukan. Langkah 1: Siapkan AWS akun Anda