Passaggio 8: attivazione dell'accesso al sincronizzatore

Ottenere un token di autorizzazione

Per effettuare le chiamate API Apigee descritte più avanti in questo argomento, devi ottenere un token di autorizzazione con il ruolo Amministratore organizzazione Apigee.

  1. Se non sei il proprietario del progetto Google Cloud associato alla tua organizzazione Apigee Hybrid, assicurati che il tuo account utente Google Cloud disponga del ruolo roles/apigee.admin (amministratore dell'organizzazione Apigee). Puoi controllare i ruoli che ti sono stati assegnati con questo comando:
    gcloud projects get-iam-policy ${PROJECT_ID}  \
    --flatten="bindings[].members" \
    --format='table(bindings.role)' \
    --filter="bindings.members:your_account_email"
    

    Ad esempio:

    gcloud projects get-iam-policy my-project  \
    --flatten="bindings[].members" \
    --format='table(bindings.role)' \
    --filter="bindings.members:myusername@example.com"

    L'output dovrebbe essere simile al seguente:

    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. Se non disponi di roles/apigee.admin nei tuoi ruoli, aggiungi il ruolo Amministratore dell'organizzazione Apigee al tuo account utente. Utilizza il seguente comando per aggiungere il ruolo al tuo account utente:
    gcloud projects add-iam-policy-binding ${PROJECT_ID} \
      --member user:your_account_email \
      --role roles/apigee.admin

    Ad esempio:

    gcloud projects add-iam-policy-binding my-project \
      --member user:myusername@example.com \
      --role roles/apigee.admin
  3. Nella riga di comando, recupera le credenziali di autenticazione gcloud utilizzando il comando seguente:

    Linux / macOS

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

    Per verificare che il token sia stato compilato, utilizza echo, come mostrato nell'esempio seguente:

    echo $TOKEN

    Dovrebbe essere visualizzato il token come stringa codificata.

    Windows

    for /f "tokens=*" %a in ('gcloud auth print-access-token') do set TOKEN=%a

    Per verificare che il token sia stato compilato, utilizza echo, come mostrato nell'esempio seguente:

    echo %TOKEN%

    Dovrebbe essere visualizzato il token come stringa codificata.

Attivare l'accesso al sincronizzatore

Per attivare l'accesso al sincronizzatore:

  1. Ottieni l'indirizzo email del account di servizio a cui stai concedendo l'accesso al sincronizzatore. Per gli ambienti non di produzione (come suggerito in questo tutorial), deve essere apigee-non-prod. Per gli ambienti di produzione, deve essere apigee-synchronizer. Utilizza il seguente comando:

    Non di produzione

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

    Prod

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

    Se corrisponde al pattern apigee-non-prod@${ORG_NAME}.iam.gserviceaccount.com, puoi utilizzarlo nel passaggio successivo.

  2. Chiama l'API setSyncAuthorization per abilitare le autorizzazioni richieste per Synchronizer utilizzando il seguente comando:

    Non di produzione

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

    Dove:

    • ${ORG_NAME}: il nome della tua organizzazione ibrida.
    • apigee-non-prod${ORG_NAME}.iam.gserviceaccount.com o
      apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com: l'indirizzo email del account di servizio.
  3. Per verificare che il account di servizio sia stato impostato, utilizza il seguente comando per chiamare l'API e ottenere un elenco di service account:
    curl -X GET -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"
    

    L'output è simile al seguente:

    Non di produzione

    {
       "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="
    }

Ora hai reso possibile la comunicazione tra i piani di runtime e di gestione di Apigee hybrid. Successivamente, applichiamo la configurazione al runtime di hybrid e completiamo l'installazione di Apigee hybrid.

1 2 3 4 5 6 7 8 (AVANTI) Passaggio 9: installa il runtime ibrido