Menggunakan utilitas dan API admin Edge setelah mengaktifkan Apigee SSO

Bagian ini menjelaskan cara menjalankan alat dan perintah admin sistem Edge setelah mengaktifkan Apigee SSO. Banyak tugas di Edge memerlukan kredensial administrasi sistem, seperti:

  • Membuat organisasi dan lingkungan
  • Menambahkan dan menghapus komponen Edge
  • Menjalankan perintah apigee-adminapi.sh

Namun, setelah mengaktifkan SSO di Edge, Anda biasanya akan menonaktifkan Autentikasi Dasar sehingga satu-satunya cara untuk mengautentikasi adalah melalui IDP OIDC/SAML. Oleh karena itu, Anda harus memastikan bahwa Anda telah menambahkan akun admin sistem ke IDP, atau membuat Pengguna Mesin lokal untuk otomatisasi.

Memanggil API pengelolaan Edge sebagai administrator sistem

Banyak panggilan API Edge mengharuskan Anda meneruskan kredensial administrator sistem. Menggunakan SAML dengan API pengelolaan Edge berisi petunjuk tentang cara mendapatkan dan memperbarui token menggunakan utilitas get_token saat melakukan panggilan API pengelolaan Edge.

Menggunakan utilitas apigee-adminapi.sh dengan Apigee SSO

Gunakan utilitas apigee-adminapi.sh untuk melakukan tugas konfigurasi Edge yang sama dengan yang Anda lakukan dengan melakukan panggilan ke Management API Edge. Keuntungan dari utilitas apigee-adminapi.sh adalah:

  • Menggunakan antarmuka command line sederhana
  • Mengimplementasikan penyelesaian perintah berbasis tab
  • Memberikan informasi bantuan dan penggunaan
  • Dapat menampilkan panggilan API yang sesuai jika Anda memutuskan untuk mencoba API

Setelah mengaktifkan Apigee SSO, Anda memiliki dua cara utama untuk meneruskan kredensial ke utilitas apigee-adminapi.sh, bergantung pada apakah Anda adalah administrator manusia atau skrip otomatis.

Anda dapat melihat semua opsi untuk perintah apigee-adminapi.sh, termasuk opsi untuk menentukan kredensial SSO, dengan menggunakan opsi -h untuk perintah tersebut. Contoh:

apigee-adminapi.sh orgs list -h

Meneruskan token pembawa (untuk administrator manusia)

Karena Apigee SSO yang dimodernisasi tidak mendukung alur salin-tempel /passcode lama, administrator manusia harus menggunakan utilitas get_token untuk menyelesaikan alur Kode Perangkat OAuth 2.0, lalu meneruskan token yang dihasilkan ke skrip.

Pertama, dapatkan token:

/opt/apigee/apigee-openldap/bin/get_token -u adminEmail

Kemudian, gunakan token saat memanggil perintah:

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode \
  --admin adminEmail --oauth-token token_string

Dengan:

  • oauth-flow menentukan passcode (ini memberi sinyal ke skrip lama bahwa token sedang diberikan).
  • oauth-token berisi string JWT mentah yang diperoleh dari get_token.

Meneruskan sandi (hanya untuk pengguna mesin)

Jika mengotomatiskan deployment infrastruktur, Anda dapat meneruskan kredensial secara langsung menggunakan alur password_grant. Namun, jika gabungan SAML/OIDC diaktifkan, pengguna bayangan manusia akan diblokir dari login sandi untuk mencegah pengabaian MFA. Anda harus menyediakan Pengguna Mesin eksplisit di OpenLDAP terlebih dahulu.

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow password_grant \
  --admin machineUserEmail --oauth-password machineUserPassword

Dengan:

  • Opsi sso-url menentukan URL Apigee SSO. Ubah port atau protokol jika Anda telah mengubahnya dari 9099 dan HTTP.
  • oauth-flow menentukan password_grant.
  • machineUserEmail adalah alamat email Pengguna Mesin otomatis.
  • oauth-password menentukan sandi Pengguna Mesin.

Menggunakan utilitas Edge dengan Apigee SSO

Banyak utilitas Edge memerlukan kredensial admin sistem, seperti:

  • apigee-provision digunakan untuk membuat organisasi, lingkungan, dan host virtual
  • setup.sh digunakan untuk menambahkan node ke sistem yang ada
  • Utilitas lain yang mengharuskan Anda menentukan kredensial admin sistem dalam file konfigurasi

Utilitas ini menggunakan file konfigurasi yang menentukan kredensial admin sistem sebagai input. Sebelum SSO diaktifkan, hal ini dilakukan dengan menggunakan properti:

ADMIN_EMAIL="adminEmail"
APIGEE_ADMINPW="adminPWord"

Setelah mengaktifkan Apigee SSO, Anda harus menggunakan properti yang berbeda untuk menentukan kredensial admin sistem.

Menggunakan token pemilik (untuk administrator manusia)

Untuk deployment interaktif oleh administrator manusia, dapatkan token menggunakan utilitas get_token dan berikan melalui properti OAUTH_BEARER_TOKEN:

ADMIN_EMAIL="adminEmail"
SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099"
OAUTH_FLOW="passcode"
OAUTH_BEARER_TOKEN="token_string"

Dengan:

  • OAUTH_FLOW menentukan passcode (memberi sinyal bahwa token disediakan).
  • OAUTH_BEARER_TOKEN berisi string JWT mentah yang diperoleh dari get_token.

Menggunakan sandi (hanya untuk pengguna mesin)

Untuk deployment yang sepenuhnya otomatis, berikan kredensial Pengguna Mesin yang disediakan secara eksplisit menggunakan alur password_grant:

ADMIN_EMAIL="machineUserEmail"
SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099"
OAUTH_FLOW="password_grant"
OAUTH_ADMIN_PASSWORD="machineUserPassword"

Dengan:

  • SSO_LOGIN_URL menentukan URL Apigee SSO.
  • OAUTH_FLOW menentukan password_grant.
  • OAUTH_ADMIN_PASSWORD menentukan sandi Pengguna Mesin.