Mendapatkan token otorisasi
Untuk melakukan panggilan API Apigee yang dijelaskan nanti dalam topik ini, Anda perlu mendapatkan otorisasi token yang memiliki peran Apigee Organization Admin.
- Jika Anda bukan pemilik project Google Cloud yang terkait dengan hybrid Apigee Anda
organisasi, pastikan akun pengguna Google Cloud Anda memiliki izin roles/apigee.admin (Apigee
Organization Admin). 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 mencakup
roles/apigee.admin
. - Jika Anda tidak memiliki
roles/apigee.admin
, tambahkan Apigee peran Organization Admin ke akun pengguna Anda. Gunakan perintah berikut untuk menambahkan 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 autentikasi
gcloud
menggunakan perintah berikut:Linux / MacOS
export TOKEN=$(gcloud auth print-access-token)
Untuk memeriksa apakah token Anda telah diisi, gunakan
echo
, sebagai contoh berikut menunjukkan: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
, sebagai contoh berikut menunjukkan:echo %TOKEN%
Tindakan ini akan menampilkan token Anda sebagai string yang dienkode.
Aktifkan 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), lingkungan
apigee-non-prod
. Untuk lingkungan produksi, harusapigee-synchronizer
. Gunakan perintah berikut:gcloud iam service-accounts list --project ${PROJECT_ID} --filter "apigee-synchronizer"
- Panggil
setSyncAuthorization
API untuk mengaktifkan izin yang diperlukan bagi 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 campuran Anda organisasi/pengaturan.apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com
: Email alamat 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 menggunakan residensi data. Di sini, 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 disetel, gunakan perintah berikut untuk memanggil API guna
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 bidang manajemen dan runtime hybrid Apigee untuk berkomunikasi. Selanjutnya, instal cert-manager untuk mengaktifkan Apigee Hybrid untuk menafsirkan dan mengelola CA {i>root<i}.