Mendapatkan token otorisasi
Untuk melakukan panggilan Apigee API yang dijelaskan nanti dalam topik ini, Anda perlu mendapatkan token otorisasi yang memiliki peran Admin Organisasi Apigee.
- Jika Anda bukan pemilik project Google Cloud yang terkait dengan organisasi hibrida Apigee, 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.admin
Contoh:
gcloud projects add-iam-policy-binding my-project \ --member user:myusername@example.com \ --role roles/apigee.admin
-
Di command line, dapatkan kredensial autentikasi
gcloud
menggunakan perintah berikut:Linux / MacOS
export TOKEN=$(gcloud auth print-access-token)
Untuk memeriksa apakah token Anda telah diisi, gunakan
echo
, seperti yang ditunjukkan dalam 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=%a
Untuk memeriksa apakah token Anda telah diisi, gunakan
echo
, seperti yang ditunjukkan dalam contoh berikut:echo %TOKEN%
Tindakan ini akan menampilkan token Anda sebagai string yang dienkode.
Mengaktifkan akses sinkronisasi
Untuk mengaktifkan akses sinkronisasi:
- 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 keterangan:
${ORG_NAME}
: Nama organisasi hybrid 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 keterangan:
CONTROL_PLANE_LOCATION
: Lokasi untuk data bidang kontrol jika penginstalan hybrid Anda menggunakan residensi 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 campuran Anda.apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com
: Alamat email akun layanan.
- Untuk memverifikasi bahwa akun layanan telah ditetapkan, 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 terlihat mirip dengan yang berikut ini:
{ "identities":[ "serviceAccount:apigee-synchronizer@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }
Sekarang Anda telah mengaktifkan runtime dan platform pengelolaan Apigee hybrid untuk berkomunikasi. Selanjutnya, instal cert-manager untuk memungkinkan Apigee hybrid menafsirkan dan mengelola sertifikat.