Langkah 8: Aktifkan akses Synchronizer

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.

  1. Jika Anda bukan pemilik project Google Cloud yang terkait dengan organisasi Apigee Hybrid, 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"

    Outputnya akan terlihat seperti ini:

    ROLE
    roles/apigee.admin
    roles/compute.admin
    roles/container.admin
    roles/gkehub.admin
    roles/iam.serviceAccountAdmin
    roles/iam.serviceAccountKeyAdmin
    roles/meshconfig.admin
    roles/owner
    roles/resourcemanager.projectIamAdmin
    roles/servicemanagement.admin
    roles/serviceusage.serviceUsageAdmin
  2. Jika Anda tidak memiliki roles/apigee.admin dalam peran Anda, 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
  3. Di command line, dapatkan kredensial autentikasi gcloud Anda menggunakan perintah berikut:

    Linux / MacOS

    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=%a

    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.

Mengaktifkan akses sinkronisasi

Untuk mengaktifkan akses penyinkron:

  1. 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 harus apigee-synchronizer. Gunakan perintah berikut:

    Non-prod

    gcloud iam service-accounts list --filter "apigee-non-prod"

    Prod

    gcloud iam service-accounts list --filter "apigee-synchronizer"

    Jika cocok dengan pola apigee-non-prod@${ORG_NAME}.iam.gserviceaccount.com, Anda dapat menggunakan pola tersebut pada langkah berikutnya.

  2. Panggil setSyncAuthorization API untuk mengaktifkan izin yang diperlukan untuk Synchronizer menggunakan perintah berikut:

    Non-prod

    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-non-prod@${ORG_NAME}.iam.gserviceaccount.com"'"]}'
    

    Prod

    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 hybrid Anda.
    • apigee-non-prod${ORG_NAME}.iam.gserviceaccount.com atau
      apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com: Alamat email akun layanan.
  3. Untuk memverifikasi bahwa akun layanan telah disetel, gunakan perintah berikut untuk memanggil API guna mendapatkan daftar akun layanan:
    curl -X GET -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"
    

    Outputnya akan terlihat mirip seperti berikut:

    Non-prod

    {
       "identities":[
          "serviceAccount:apigee-non-prod@my_project_id.iam.gserviceaccount.com"
       ],
       "etag":"BwWJgyS8I4w="
    }

    Prod

    {
       "identities":[
          "serviceAccount:apigee-synchronizer@my_project_id.iam.gserviceaccount.com"
       ],
       "etag":"BwWJgyS8I4w="
    }

Sekarang Anda telah memungkinkan bidang pengelolaan dan runtime hybrid Apigee Anda untuk berkomunikasi. Selanjutnya, terapkan konfigurasi Anda ke runtime hybrid dan selesaikan penginstalan Apigee hybrid.

1 2 3 4 5 6 7 8 (NEXT) Langkah 9: Instal runtime hybrid