Menggunakan acurl

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

Utilitas acurl(1) menyediakan wrapper praktis di sekitar curl standar perintah. 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 yang 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 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 tersebut menggunakan utilitas get_token.

Menginstal acurl

Sebelum dapat menggunakan acurl, Anda harus instal.

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 Apigee Edge API.
USERNAME Opsional. Kombinasi nama pengguna dan sandi atau kode sandi diperlukan. Nama pengguna Apigee Anda, biasanya adalah alamat email yang terkait dengan akun Apigee Anda. Anda harus meneruskan nama pengguna atau kode sandi saat pertama kali memanggil get_token. Anda tidak perlu meneruskan email Anda masuk kembali hingga masa berlaku token akses dan token telah habis. Jika Anda meng-cache token 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 Anda menghilangkan {i>password<i}, Anda akan diminta untuk masukkan saat pertama kali Anda menggunakan acurl dan pada panggilan berikutnya tanpa token refresh. Jika Anda tidak ingin menggunakan {i>password<i} Anda secara langsung di dalam perintah, Anda dapat menggunakan kode sandi sekali pakai alih-alih {i>password<i} Anda.
MFACODE Opsional Enam digit sementara multi-faktor kode autentikasi (MFA). Kode ini diperlukan jika Anda menggunakan -u dan mengaktifkan MFA. Anda akan diminta jika dihilangkan (kecuali dalam mode kode sandi). Jika Anda tidak mengaktifkan MFA, atau memiliki alur dengan skrip, Anda dapat menentukan -m "" untuk menghindari dialog.
PASSCODE Opsional. Kombinasi nama pengguna dan sandi atau kode sandi diperlukan. Kode sandi sekali pakai yang dapat Anda gunakan sebagai pengganti {i>password<i}. Kode sandi diperlukan saat mengautentikasi dengan IDP SAML, dan dapat digunakan untuk melakukan otentikasi 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 curl lainnya. 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 dipanggil. Selain itu, acurl menyimpan token akses dan refresh dalam ~/.sso-cli.

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

Bermigrasi dari curl

Jika Anda menggunakan curl, bermigrasi ke utilitas acurl sangat mudah dan sehingga tidak perlu mengenkode kredensial secara manual. Setelah mengunduh dan menginstal utilitas, Anda dapat ganti:

curl -u username
dengan:
acurl -u username

Utilitas acurl akan mengenkode kredensial, dan sesekali meminta kredensial tambahan yang diperlukan untuk memperoleh pasangan token baru.

Utilitas acurl juga dapat digunakan untuk menggantikan curl bagi pengguna mesin. Untuk 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) sehingga acurl dapat menukarnya dengan token akses dan token refresh.

Contoh berikut menunjukkan panggilan awal dengan acurl untuk mendapatkan detail tentang organisasi menggunakan standar Get endpoint 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 API Edge:

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

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

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

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


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