Menggunakan acurl

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Utilitas acurl(1) menyediakan wrapper praktis di sekitar perintah curl standar. acurl:

  • Menukarkan kredensial Apigee Anda dengan token akses OAuth2.
  • Mendeteksi saat masa berlaku token akses telah berakhir, dan menggunakan token refresh untuk mendapatkan token akses baru.
  • Meneruskan token tersebut di header Authorization permintaan API.

Anda menggunakan token akses untuk memanggil endpoint Edge API dengan OAuth2, termasuk alur kerja LDAP dan SAML.

Jika Anda menggunakan OAuth2 untuk mengakses Edge API, tetapi tidak menggunakan acurl, Anda harus mendapatkan token akses dan menambahkannya ke header permintaan API sendiri. Salah satu cara untuk mendapatkan token akses adalah dengan aplikasi utilitas get_token.

Menginstal acurl

Sebelum dapat menggunakan acurl, Anda harus menginstalnya.

Sintaksis acurl

Utilitas acurl menggunakan sintaksis berikut:

acurl API_URL -u USERNAME:PASSWORD [-m MFACODE]

atau

acurl API_URL -p PASSCODE

Dengan:

Opsi Diperlukan? Deskripsi
API_URL Wajib Endpoint API Apigee Edge. Untuk mengetahui daftar lengkap endpoint, lihat Referensi Apigee Edge API.
USERNAME Opsional. Kombinasi nama pengguna dan sandi atau kode sandi diperlukan. Nama pengguna Apigee Anda, yang biasanya berupa alamat email yang terkait dengan akun Apigee Anda. Anda harus memasukkan nama pengguna atau kode sandi saat pertama kali memanggil get_token. Anda tidak perlu memasukkan alamat email Anda lagi hingga token akses dan refresh telah habis masa berlakunya. Jika Anda menyimpan token dalam cache untuk lebih dari satu pengguna, Anda harus menentukan nama pengguna Anda di setiap panggilan.
PASSWORD Opsional. Kombinasi nama pengguna dan sandi atau kode sandi diperlukan. Sandi untuk akun Apigee Anda. Jika Anda tidak memasukkan sandi, Anda akan diminta untuk memasukkannya saat pertama kali menggunakan acurl dan pada panggilan berikutnya tanpa token refresh yang valid. Jika tidak ingin menggunakan sandi secara langsung dalam perintah, Anda dapat menggunakan kode sandi sekali pakai, bukan sandi Anda.
MFACODE Opsional Kode autentikasi multi-faktor (MFA) enam digit sementara. Kode ini diperlukan jika Anda menggunakan -u dan telah mengaktifkan MFA. Anda akan diminta untuk memasukkannya jika tidak dimasukkan (kecuali dalam mode kode sandi). Jika MFA tidak diaktifkan, atau Anda memiliki alur yang di-script, Anda dapat menentukan -m "" untuk menghindari perintah.
PASSCODE Opsional. Kombinasi nama pengguna dan sandi atau kode sandi diperlukan. Kode sandi sekali pakai yang dapat Anda gunakan sebagai pengganti sandi. Kode sandi diperlukan saat melakukan autentikasi dengan IDP SAML, dan dapat digunakan untuk melakukan autentikasi dengan IDP LDAP.

Contoh:

acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com -p 424242
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd -m 123456

Selain opsi yang ditampilkan di atas, acurl menerima semua opsi curl. Misalnya, Anda dapat meneruskan header, menentukan verb HTTP, menambahkan isi, dan mengaktifkan tingkat detail menggunakan opsi curl standar:

Opsi acurl meaning curl meaning
-u username username
-m MFA code max time (harus menggunakan formulir panjang --max-time)
-p passcode proxy tunnel (harus menggunakan formulir panjang --proxytunnel)
-v verbose verbose
-h help help (harus menggunakan formulir panjang --help)
acurl -v -X POST -H 'Content-Type: application/json' \
    https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apiproducts/myproduct/attributes/attr \
    -u ahamilton@apigee.com -d '{"value":42}'

Panggilan acurl yang berhasil akan menampilkan hasil berdasarkan endpoint Edge API yang Anda panggil. Selain itu, acurl menyimpan token akses dan refresh di ~/.sso-cli.

Anda dapat terus melakukan panggilan tanpa memasukkan kredensial (sandi dan MFA opsional, atau kode sandi) hingga token akses dan token refresh habis masa berlakunya, seperti yang dijelaskan dalam Masa berlaku token.

Bermigrasi dari curl

Jika Anda menggunakan curl, migrasi ke utilitas acurl sangat mudah dan tidak perlu mengenkode kredensial secara manual. Setelah mendownload dan menginstal utilitas, Anda dapat mengganti:

curl -u username
dengan:
acurl -u username

Utilitas acurl akan mengenkode kredensial Anda dan terkadang meminta kredensial tambahan yang diperlukan untuk mendapatkan pasangan token baru.

Utilitas acurl juga dapat digunakan untuk mengganti curl bagi pengguna mesin. Untuk mengetahui informasi selengkapnya, lihat OAuth2 untuk pengguna mesin dan Pengguna mesin di zona SAML.

Memanggil acurl untuk pertama kalinya

Saat pertama kali memanggil API dengan acurl, Anda memberikan kredensial Apigee (nama pengguna dan sandi akun Apigee, atau kode sandi) agar acurl dapat menukarnya dengan token akses dan token refresh.

Contoh berikut menunjukkan panggilan awal dengan acurl untuk mendapatkan detail tentang organisasi menggunakan endpoint Get organization:

acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval \
  -u ahamilton@apigee.com
Enter the password for user 'ahamilton@apigee.com':
[hidden input]
Enter the six-digit code (no spaces) if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:
1a2b3c
{
  "createdAt" : 1491854501264,
  "createdBy" : "noreply_iops@apigee.com",
  "displayName" : "ahamilton",
  "environments" : [ "prod", "test" ],
  "lastModifiedAt" : 1491854501264,
  "lastModifiedBy" : "noreply_iops@apigee.com",
  "name" : "ahamilton",
  "properties" : {
    "property" : [ {
      "name" : "features.isSmbOrganization",
      "value" : "false"
    }, {
      "name" : "features.isCpsEnabled",
      "value" : "true"
    } ]
  },
  "type" : "trial"
}

Utilitas acurl mendapatkan token akses dan menyisipkannya ke dalam panggilan ke endpoint API Edge:

curl -H "Authorization: Bearer oauth2_access_token" ...

Token akses disimpan secara lokal di ~/.sso-cli dan digunakan untuk panggilan berikutnya.

Setelah masa berlaku token akses berakhir, acurl akan otomatis menggunakan token refresh untuk mendapatkan token akses baru. Saat masa berlaku token refresh berakhir, acurl akan meminta kredensial Apigee Anda.

Permintaan ini mendapatkan detail tentang organisasi "ahamilton-eval". Untuk mengetahui daftar lengkap endpoint API Edge, lihat Referensi API Apigee Edge.


(1) Hak Cipta 2023 Google LLC
Alat acurl disediakan sebagai "Software" berdasarkan perjanjian yang mengatur penggunaan Anda atas Google Cloud Platform, termasuk Persyaratan Khusus Layanan yang tersedia di https://cloud.google.com/terms/service-terms.