Langkah 7: Aktifkan akses Penyinkron

Mendapatkan token otorisasi

Untuk melakukan panggilan Apigee API yang dijelaskan nanti dalam topik ini, Anda perlu mendapatkan token otorisasi yang memiliki peran Apigee Organization Admin.

  1. 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 (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 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 tidak memiliki roles/apigee.admin dalam peran Anda, tambahkan peran Apigee Organization Admin 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. Pada command line, dapatkan kredensial autentikasi gcloud menggunakan perintah berikut:

    Linux / MacOS

    export TOKEN=$(gcloud auth print-access-token)

    Untuk memeriksa apakah token Anda sudah diisi, gunakan echo, seperti yang ditunjukkan pada contoh berikut:

    echo $TOKEN

    Token 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 sudah diisi, gunakan echo, seperti yang ditunjukkan pada contoh berikut:

    echo %TOKEN%

    Token ini akan menampilkan token Anda sebagai string yang dienkode.

Aktifkan akses sinkronisasi

Untuk mengaktifkan akses sinkronisasi:

  1. Dapatkan alamat email untuk akun layanan yang Anda berikan akses sinkronisasi. Untuk lingkungan non-produksi (seperti yang disarankan dalam tutorial ini), parameternya harus berupa apigee-non-prod. Untuk lingkungan produksi, seharusnya adalah apigee-synchronizer. Gunakan perintah berikut:

    Non-produksi

    gcloud iam service-accounts list --project ${PROJECT_ID} --filter "apigee-non-prod"

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

    Produksi

    gcloud iam service-accounts list --project ${PROJECT_ID} --filter "apigee-synchronizer"

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

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

    Non-produksi

    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"'"]}'
    

    Produksi

    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 campuran 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 ditetapkan, 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 terlihat mirip dengan yang berikut ini:

    Non-produksi

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

    Produksi

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

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

Langkah berikutnya

1 2 3 4 5 6 3 4 5 6 Langkah 7