Melakukan autentikasi menggunakan kunci API

Dokumen ini menunjukkan cara menyiapkan autentikasi untuk mengakses Google Cloud API menggunakan kunci API. Hanya beberapa Google Cloud API yang menggunakan kunci API untuk autentikasi, misalnya, Google Maps Platform. Tinjau dokumentasi autentikasi untuk layanan atau API yang ingin Anda gunakan untuk menentukan apakah layanan atau API tersebut mendukung kunci API atau tidak. Terlepas dari tempat sistem SAP Anda dihosting, Anda dapat menggunakan kunci API untuk autentikasi asalkan API yang ingin Anda gunakan mendukung kunci API.

Untuk mengautentikasi ke Google Cloud API menggunakan kunci API, gunakan salah satu metode berikut:

Melakukan autentikasi menggunakan kunci API yang disimpan di SAP SSF

Langkah-langkah konfigurasi tingkat tinggi adalah sebagai berikut:

Membuat kunci API

Untuk autentikasi menggunakan kunci API, Anda perlu membuat kunci API. String kunci API adalah string terenkripsi, misalnya, AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe. ABAP SDK untuk Google Cloud menggunakan string kunci API dalam permintaan HTTP untuk mengautentikasi dengan aman saat memanggil Google Cloud API.

Google Cloud menyediakan beberapa cara untuk membuat kunci API.

Untuk membuat kunci API menggunakan konsol Google Cloud, lakukan langkah-langkah berikut:

  1. Di Konsol Google Cloud, buka halaman Langganan.

    Buka Kredensial

  2. Klik Create Credentials, lalu pilih API key dari menu.

    • Dialog API key created akan menampilkan string kunci API. Salin string kunci Anda dan amankan. Anda memerlukan kunci API ini untuk mengonfigurasi autentikasi ke Google Cloud.

    • Secara default, kunci API tidak dibatasi. Sebaiknya batasi kunci API dengan memilih API yang dapat menggunakan kunci API ini. Untuk mengetahui informasi selengkapnya tentang cara menambahkan pembatasan API, lihat artikel Menambahkan pembatasan API.

Menyimpan kunci API di SSF

ABAP SDK untuk Google Cloud menyediakan opsi untuk menyimpan kunci API dengan aman menggunakan mekanisme SAP Secure Store and Forward (SSF).

Dengan menggunakan opsi SSF, Anda dapat menyimpan Kunci API dalam format terenkripsi di tabel /GOOG/APIKEY_BIN. Saat API dipanggil, kunci API akan diambil dari tabel /GOOG/APIKEY_BIN, didekripsi, dan ditambahkan ke URI endpoint API.

Untuk tujuan keamanan, Anda tidak boleh melihat konten /GOOG/APIKEY_BIN menggunakan alat standar, transaksi seperti SE16, SE16N, atau SE11.

Prasyarat

Untuk autentikasi menggunakan kunci API yang disimpan di SAP SSF, Anda harus menginstal SAP Cryptographic Library versi 8.5 dan yang lebih baru di sistem SAP. Untuk mengetahui informasi selengkapnya tentang SAP Cryptographic Library, lihat 1848999 - Central Note for CommonCryptoLib 8 (SAPCRYPTOLIB) dan 397175 - SAP Cryptographic software - export control.

Untuk memverifikasi versi SAP Cryptographic Library, lakukan langkah-langkah berikut:

  1. Di SAP GUI, masukkan kode transaksi STRUST.
  2. Buka menu Environment, lalu klik Display SSF Version.

Menyiapkan aplikasi SSF

Pada tabel SSFAPPLIC, buat aplikasi SSF baru ZG_APK yang mengenkripsi kunci API. ZG_APK adalah nama aplikasi SSF default.

Atau, Anda dapat membuat aplikasi SSF dengan nama pilihan Anda atau menggunakan aplikasi SSF yang sudah ada dengan nama berbeda. Jika ingin menggunakan aplikasi SSF yang berbeda untuk enkripsi, Anda harus mengonfigurasi nama aplikasi SSF di Authorization Parameter 1 tabel kunci klien.

Untuk membuat entri baru di tabel SSFAPPLIC, lakukan langkah-langkah berikut:

  1. Di SAP GUI, masukkan kode transaksi SE16.
  2. Di kolom Table Name, masukkan SSFAPPLIC, lalu buat entri baru.
  3. Di kolom APPLIC, masukkan ZG_APK.
  4. Tentukan nilai di kolom berikut.

    Kolom Nilai
    APPLIC ZG_APK
    B_TOOLKIT Pilih flag.
    B_FORMAT Pilih flag.
    B_PAB Pilih flag.
    B_PROFID Pilih flag.
    B_PROFILE Pilih flag.
    B_HASHALG Kosongkan kolom ini.
    B_ENCRALG Kosongkan kolom ini.
    B_INCCERTS Kosongkan kolom ini.
    B_DETACHED Kosongkan kolom ini.
    B_ASKPWD Kosongkan kolom ini.
    B_DISTRIB Pilih flag.
    DESCRIPT API Key Encryption for GCP
  5. Simpan entri baru.

Membuat parameter SSF
  1. Di SAP GUI, masukkan kode transaksi SM30.

  2. Buka tampilan VSSFARGS.

  3. Untuk aplikasi ZG_APK (API Key Encryption for GCP), buat entri baru. Parameter SSF khusus aplikasi diisi secara otomatis.

  4. Simpan entri baru.

Membuat Lingkungan Keamanan Pribadi (Personal Security Environment/PSE)

  1. Di SAP GUI, masukkan kode transaksi STRUST.

  2. Di bagian node SSF API Key Encryption for GCP, klik kanan dan pilih Create.

  3. Di kolom Algorithm, pilih RSA. Biarkan kolom lain dengan nilai default yang diisi sistem.

  4. Simpan entri baru.

Menyimpan kunci API

  1. Di SAP GUI, jalankan kode transaksi /GOOG/SDK_IMG.

    Atau, jalankan kode transaksi SPRO, lalu klik IMG Referensi SAP.

  2. Klik ABAP SDK for Google Cloud > Basic Settings > Configure API Key (Using SSF).

  3. Di Nama Kunci Google, masukkan nama konfigurasi kunci klien.

  4. Pada kolom Kunci API, masukkan kunci API yang Anda buat sebelumnya di bagian Membuat kunci API.

  5. Pilih Simpan.

  6. Klik Execute untuk menyimpan kunci API.

Mengonfigurasi kunci klien

  1. Di SAP GUI, jalankan kode transaksi /GOOG/SDK_IMG.

    Atau, jalankan kode transaksi SPRO, lalu klik IMG Referensi SAP.

  2. Klik ABAP SDK for Google Cloud > Basic Settings > Configure Client Key.

  3. Klik New Entries.

  4. Masukkan nilai untuk kolom berikut:

    Kolom Deskripsi
    Nama Kunci Google Cloud Tentukan nama konfigurasi kunci klien. Misalnya, DEMO_API_KEY.
    Nama Akun Layanan Google Cloud Kosongkan kolom ini.
    Cakupan Google Cloud Tentukan cakupan akses API, https://www.googleapis.com/auth/cloud-platform.
    ID Project Tentukan ID project Google Cloud yang berisi API target Anda.
    Nama perintah Kosongkan kolom ini.
    Class Otorisasi Tentukan class otorisasi, /GOOG/CL_AUTH_API_KEY_SSF.
    Penyimpanan Token ke Cache

    Tanda yang menentukan apakah token akses yang diambil dari Google Cloud disimpan ke cache atau tidak.

    Sebaiknya aktifkan penyimpanan token ke dalam cache setelah Anda selesai mengonfigurasi dan menguji koneksi Anda ke Google Cloud. Untuk mengetahui informasi selengkapnya tentang penyimpanan token ke dalam cache, lihat Mengaktifkan penyimpanan token ke dalam cache.

    Detik Pembaruan Token Tentukan jumlah waktu, dalam detik, sebelum masa berlaku token akses berakhir dan harus dimuat ulang. Nilai defaultnya adalah 3500.
    Parameter Otorisasi 1 Jika nama aplikasi SSF berbeda dengan ZG_APK, tentukan nama aplikasi SSF Anda.
    Authorization Parameter 2 Kosongkan kolom ini.
  5. Simpan entri baru.

Membuat tujuan RFC baru

Untuk API yang ingin Anda gunakan dengan ABAP SDK untuk Google Cloud, buat tujuan RFC baru.

Untuk informasi tentang cara membuat tujuan RFC, lihat Tujuan RFC.

Jika tujuan RFC tidak dibuat dan dikonfigurasi, fungsi ABAP SDK untuk Google Cloud yang menggunakan endpoint API default akan dipertahankan dalam setiap stub klien API.

Mengonfigurasi pemetaan layanan

Konfigurasikan tabel pemetaan layanan untuk API yang ingin Anda gunakan menggunakan ABAP SDK untuk Google Cloud.

  1. Di SAP GUI, jalankan kode transaksi /GOOG/SDK_IMG.

    Atau, jalankan kode transaksi SPRO, lalu klik IMG Referensi SAP.

  2. Klik ABAP SDK for Google Cloud > Basic Settings > Configure Service Mapping.

  3. Klik New Entries.

  4. Tentukan tujuan RFC untuk API yang ingin Anda gunakan, misalnya, addressvalidation v1. Jika Anda akan menggunakan API lain, tentukan tujuan RFC untuk API tersebut.

    Nama Nama Layanan RFC Destination
    Nama Kunci Google Cloud addressvalidation:v1 ZGOOG_ADDRVALDN_V1
  5. Simpan entri baru.

Menghapus kunci API

Jika kunci API tidak lagi digunakan, Anda dapat menghapus kunci API tersebut dari sistem SAP.

Untuk menghapus kunci API, lakukan langkah-langkah berikut:

  1. Di SAP GUI, jalankan kode transaksi /GOOG/SDK_IMG.

    Atau, jalankan kode transaksi SPRO, lalu klik IMG Referensi SAP.

  2. Klik ABAP SDK for Google Cloud > Basic Settings > Configure API Key (Using SSF).

  3. Di kolom Google Key Name, masukkan nama konfigurasi kunci klien.

  4. Pilih Hapus.

  5. Klik Execute untuk menghapus kunci API.

Melakukan autentikasi menggunakan kunci API yang disimpan di Secret Manager

Langkah-langkah konfigurasi tingkat tinggi adalah sebagai berikut:

Membuat kunci API

Untuk autentikasi menggunakan kunci API, Anda perlu membuat kunci API. String kunci API adalah string terenkripsi, misalnya, AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe. ABAP SDK untuk Google Cloud menggunakan string kunci API dalam permintaan HTTP untuk mengautentikasi dengan aman saat memanggil Google Cloud API.

Google Cloud menyediakan beberapa cara untuk membuat kunci API.

Untuk membuat kunci API menggunakan konsol Google Cloud, lakukan langkah-langkah berikut:

  1. Di Konsol Google Cloud, buka halaman Langganan.

    Buka Kredensial

  2. Klik Create Credentials, lalu pilih API key dari menu.

    • Dialog API key created akan menampilkan string kunci API. Salin string kunci Anda dan amankan. Anda memerlukan kunci API ini untuk mengonfigurasi autentikasi ke Google Cloud.

    • Secara default, kunci API tidak dibatasi. Sebaiknya batasi kunci API dengan memilih API yang dapat menggunakan kunci API ini. Untuk mengetahui informasi selengkapnya tentang cara menambahkan pembatasan API, lihat artikel Menambahkan pembatasan API.

Membuat secret dan menyimpan kunci API

ABAP SDK untuk Google Cloud menyediakan opsi untuk menyimpan kunci API dengan aman menggunakan layanan Secret Manager Google Cloud. Untuk menyimpan string kunci API dengan aman, Secret Manager memungkinkan Anda mengikuti praktik terbaik untuk menggunakan kunci API dengan aman.

Untuk membuat secret dan menyimpan kunci API, lakukan langkah-langkah berikut:

  1. Mengaktifkan Secret Manager API.

    Buka koleksi API

  2. Di konsol Google Cloud, buat secret, dan simpan kunci API sebagai versi terbaru.

    Buka Secret manager

Untuk mengetahui informasi tentang cara membuat secret, lihat Membuat rahasia.

ABAP SDK untuk Google Cloud secara default hanya mengambil versi terbaru secret.

Mengonfigurasi kunci klien untuk akses Secret Manager

Secret Manager API menggunakan token untuk autentikasi. Oleh karena itu, Anda perlu menyiapkan autentikasi berbasis token untuk mengakses Secret Manager API, bergantung pada deployment SAP Anda.

Gunakan salah satu metode berikut untuk menyiapkan autentikasi berbasis token untuk mengakses Secret Manager API:

Catat nama kunci klien yang Anda buat untuk akses Secret Manager.

Mengonfigurasi kunci klien untuk secret

  1. Di SAP GUI, jalankan kode transaksi /GOOG/SDK_IMG.

    Atau, jalankan kode transaksi SPRO, lalu klik IMG Referensi SAP.

  2. Klik ABAP SDK for Google Cloud > Basic Settings > Configure Client Key.

  3. Klik New Entries.

  4. Masukkan nilai untuk kolom berikut:

    Kolom Deskripsi
    Nama Kunci Google Cloud Tentukan nama konfigurasi kunci klien. Misalnya, DEMO_API_KEY.
    Nama Akun Layanan Google Cloud Kosongkan kolom ini.
    Cakupan Google Cloud Tentukan cakupan akses API, https://www.googleapis.com/auth/cloud-platform.
    ID Project Tentukan ID project Google Cloud yang berisi API target Anda.
    Nama perintah Kosongkan kolom ini.
    Class Otorisasi Tentukan /GOOG/CL_AUTH_API_KEY_SM
    Penyimpanan Token ke Cache

    Tanda yang menentukan apakah token akses yang diambil dari Google Cloud disimpan ke cache atau tidak.

    Sebaiknya aktifkan penyimpanan token ke dalam cache setelah Anda selesai mengonfigurasi dan menguji koneksi Anda ke Google Cloud. Untuk mengetahui informasi selengkapnya tentang penyimpanan token ke dalam cache, lihat Mengaktifkan penyimpanan token ke dalam cache.

    Detik Pembaruan Token Tentukan jumlah waktu, dalam detik, sebelum masa berlaku token akses berakhir dan harus dimuat ulang. Nilai defaultnya adalah 3500.
    Parameter Otorisasi 1 Tentukan nama kunci klien yang Anda buat untuk akses Secret Manager. Misalnya, CLIENT_KEY_SM.
    Authorization Parameter 2 Tentukan nama secret, yang menyimpan kunci API-nya. Misalnya, TEST_SECRET.
  5. Simpan entri baru.

Membuat tujuan RFC baru

Untuk API yang ingin Anda gunakan dengan ABAP SDK untuk Google Cloud, buat tujuan RFC baru.

Untuk informasi tentang cara membuat tujuan RFC, lihat Tujuan RFC.

Jika tujuan RFC tidak dibuat dan dikonfigurasi, fungsi ABAP SDK untuk Google Cloud yang menggunakan endpoint API default akan dipertahankan dalam setiap stub klien API.

Mengonfigurasi pemetaan layanan

Konfigurasikan tabel pemetaan layanan untuk API yang ingin Anda gunakan menggunakan ABAP SDK untuk Google Cloud.

  1. Di SAP GUI, jalankan kode transaksi /GOOG/SDK_IMG.

    Atau, jalankan kode transaksi SPRO, lalu klik IMG Referensi SAP.

  2. Klik ABAP SDK for Google Cloud > Basic Settings > Configure Service Mapping.

  3. Klik New Entries.

  4. Tentukan tujuan RFC untuk API yang ingin Anda gunakan, misalnya, addressvalidation v1. Jika Anda akan menggunakan API lain, tentukan tujuan RFC untuk API tersebut.

    Nama Nama Layanan RFC Destination
    Nama Kunci Google Cloud addressvalidation:v1 ZGOOG_ADDRVALDN_V1
  5. Simpan entri baru.

Memvalidasi pengambilan kunci API dari Secret Manager

Untuk memvalidasi pengambilan kunci API dari Secret Manager, lakukan langkah-langkah berikut:

  1. Di SAP GUI, jalankan kode transaksi /GOOG/SDK_IMG.

    Atau, jalankan kode transaksi SPRO, lalu klik IMG Referensi SAP.

  2. Klik ABAP SDK for Google Cloud > Utilities > Validate API key retrieval (Using Secret Manager).
  3. Tentukan nama kunci klien.
  4. Klik Execute untuk memeriksa apakah kunci API berhasil diambil dari Secret Manager.

Memvalidasi konfigurasi autentikasi

Untuk memvalidasi konfigurasi autentikasi, lakukan langkah-langkah berikut:

  1. Di SAP GUI, jalankan kode transaksi /GOOG/SDK_IMG.

    Atau, jalankan kode transaksi SPRO, lalu klik IMG Referensi SAP.

  2. Klik ABAP SDK for Google Cloud > Utilities > Validate Authentication Configuration.

  3. Masukkan nama kunci klien.

  4. Klik Execute untuk memeriksa apakah keseluruhan alur berhasil dikonfigurasi.

    Centang hijau di kolom Result menunjukkan bahwa semua langkah konfigurasi berhasil diselesaikan.

Mendapatkan dukungan

Jika Anda memerlukan bantuan untuk menyelesaikan masalah terkait ABAP SDK untuk Google Cloud, lakukan hal berikut: