Mendapatkan token otorisasi
Untuk melakukan panggilan API Apigee yang dijelaskan nanti dalam topik ini, Anda harus mendapatkan token otorisasi yang memiliki peran Admin Organisasi Apigee.
- Jika Anda bukan pemilik project Google Cloud yang terkait dengan organisasi Apigee Hybrid Anda, pastikan akun pengguna Google Cloud Anda memiliki peran roles/apigee.admin (Admin Organisasi Apigee). Anda dapat memeriksa peran yang ditetapkan kepada Anda dengan perintah ini:
gcloud projects get-iam-policy ${PROJECT_ID} \ --flatten="bindings[].members" \ --format='table(bindings.role)' \ --filter="bindings.members:your_account_email"Contoh:
gcloud projects get-iam-policy my-project \ --flatten="bindings[].members" \ --format='table(bindings.role)' \ --filter="bindings.members:myusername@example.com"
Output harus menyertakan
roles/apigee.admin. - Jika Anda tidak memiliki
roles/apigee.admin, tambahkan peran Admin Organisasi Apigee ke akun pengguna Anda. Gunakan perintah berikut untuk menambahkan peran ke akun pengguna Anda:gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member user:your_account_email \ --role roles/apigee.adminContoh:
gcloud projects add-iam-policy-binding my-project \ --member user:myusername@example.com \ --role roles/apigee.admin
-
Di command line, dapatkan kredensial autentikasi
gcloudAnda menggunakan perintah berikut:Linux / MacOS
export TOKEN=$(gcloud auth print-access-token)
Untuk memeriksa apakah token Anda telah diisi, gunakan
echo, seperti yang ditunjukkan contoh berikut:echo $TOKEN
Tindakan ini akan menampilkan token Anda sebagai string yang dienkode.
Windows
for /f "tokens=*" %a in ('gcloud auth print-access-token') do set TOKEN=%aUntuk memeriksa apakah token Anda telah diisi, gunakan
echo, seperti yang ditunjukkan contoh berikut:echo %TOKEN%
Tindakan ini akan menampilkan token Anda sebagai string yang dienkode.
Mengaktifkan akses sinkronisasi
Untuk mengaktifkan akses penyinkron:
- Dapatkan alamat email untuk akun layanan yang Anda beri akses sinkronisasi.
Untuk lingkungan non-produksi (seperti yang disarankan dalam tutorial ini), nilainya harus
apigee-non-prod. Untuk lingkungan produksi, nilainya harusapigee-synchronizer. Gunakan perintah berikut:gcloud iam service-accounts list --project ${PROJECT_ID} --filter "apigee-synchronizer" - Panggil
setSyncAuthorization
API untuk mengaktifkan izin yang diperlukan untuk Synchronizer menggunakan perintah berikut:
Tidak ada residensi data
curl -X POST -H "Authorization: Bearer ${TOKEN}" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:setSyncAuthorization" \ -d "{\"identities\":[\"serviceAccount:apigee-synchronizer@${ORG_NAME}.iam.gserviceaccount.com\"]}"Dengan:
${ORG_NAME}: Nama organisasi hibrida Anda.apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com: Alamat email akun layanan.
Residensi data
curl -X POST -H "Authorization: Bearer ${TOKEN}" \ -H "Content-Type:application/json" \ "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/${ORG_NAME}:setSyncAuthorization" \ -d "{\"identities\":[\"serviceAccount:apigee-synchronizer@${ORG_NAME}.iam.gserviceaccount.com\"]}"Dengan:
CONTROL_PLANE_LOCATION: Lokasi untuk data bidang kontrol Anda jika penginstalan hybrid Anda menggunakan retensi data. Ini adalah lokasi tempat konten inti pelanggan seperti paket proxy disimpan. Untuk mengetahui daftarnya, lihat Region bidang kontrol Apigee API yang tersedia.${ORG_NAME}: Nama organisasi hybrid Anda.apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com: Alamat email akun layanan.
- Untuk memverifikasi bahwa akun layanan telah disetel, gunakan perintah berikut untuk memanggil API guna mendapatkan
daftar akun layanan:
Tidak ada residensi data
curl -X GET -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"Residensi data
curl -X GET -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"Outputnya akan terlihat mirip seperti berikut:
{ "identities":[ "serviceAccount:apigee-synchronizer@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }
Sekarang Anda telah mengaktifkan bidang pengelolaan dan runtime hybrid Apigee untuk berkomunikasi. Selanjutnya, instal cert-manager agar Apigee hybrid dapat menafsirkan dan mengelola sertifikat.