Menggunakan acurl

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

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

  • Menukarkan kredensial Apigee Anda dengan token akses OAuth2.
  • Mendeteksi saat masa berlaku token akses 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 sendiri ke header permintaan API. Salah satu cara untuk mendapatkan token akses adalah dengan utilitas get_token.

Menginstal acurl

Sebelum dapat menggunakan acurl, Anda harus menginstal.

sintaksis acurl

Utilitas acurl menggunakan sintaksis berikut:

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

atau

acurl API_URL -p PASSCODE

Dengan keterangan:

Opsi Diperlukan? Deskripsi
API_URL Wajib Endpoint Apigee Edge API. Untuk mengetahui daftar lengkap endpoint, lihat Referensi API Apigee Edge.
USERNAME Opsional. Kombinasi nama pengguna dan sandi atau kode sandi diperlukan. Nama pengguna Apigee Anda, yang biasanya merupakan 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 meneruskan alamat email lagi hingga token akses dan refresh telah habis masa berlakunya. Jika menyimpan token dalam cache untuk lebih dari satu pengguna, Anda harus menentukan nama pengguna dalam setiap panggilan.
PASSWORD Opsional. Kombinasi nama pengguna dan sandi atau kode sandi diperlukan. Sandi untuk akun Apigee Anda. Jika menghapus 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 langsung di perintah, Anda dapat menggunakan kode sandi kode 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 melakukannya jika dihilangkan (kecuali dalam mode kode sandi). Jika MFA tidak diaktifkan, atau Anda memiliki alur dengan skrip, 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 kata kerja HTTP, menambahkan isi, dan mengaktifkan panjang menggunakan opsi curl standar:

Opsi acurl meaning curl meaning
-u username username
-m MFA code max time (harus menggunakan format panjang --max-time)
-p passcode proxy tunnel (harus menggunakan format panjang --proxytunnel)
-v verbose verbose
-h help help (harus menggunakan format 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 masa berlaku token akses dan token refresh berakhir, seperti yang dijelaskan dalam Masa berlaku token.

Bermigrasi dari curl

Jika Anda menggunakan curl, migrasi ke utilitas acurl dapat dilakukan dengan mudah dan menghilangkan kebutuhan untuk 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 Anda, 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 yang menggunakan endpoint Dapatkan organisasi:

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 memasukkannya ke dalam panggilan ke endpoint Edge API:

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 token refresh berakhir, acurl akan meminta kredensial Apigee Anda.

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


(1) Hak Cipta 2023 Google LLC
Alat acurl tersedia 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.