Passaggio 7: attiva l'accesso al programma di sincronizzazione

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 ibrida Apigee, assicurati che il tuo account utente Google Cloud abbia il ruolo roles/apigee.admin (Amministratore 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 hai roles/apigee.admin nei ruoli, aggiungi il ruolo Amministratore organizzazione Apigee al tuo account utente. Utilizza questo 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 di gcloud utilizzando il seguente comando:

    Linux / MacOS

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

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

    echo $TOKEN

    Il token dovrebbe essere visualizzato 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 completato, utilizza echo, come illustrato nell'esempio seguente:

    echo %TOKEN%

    Il token dovrebbe essere visualizzato come stringa codificata.

Abilita accesso sincronizzatore

Per attivare l'accesso al programma di sincronizzazione:

  1. Recupera l'indirizzo email dell'account di servizio a cui stai concedendo l'accesso al programma di sincronizzazione. 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 questo comando:

    Non di produzione

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

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

    Produzione

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

    Se corrisponde al pattern apigee-synchronizer@${ORG_NAME}.iam.gserviceaccount.com, puoi utilizzare questo pattern nel passaggio successivo.

  2. Chiama l'API setSyncAuthorization per abilitare le autorizzazioni richieste per il programma Sincronizzatore 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"'"]}'
    

    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-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 dell'account di servizio.
  3. Per verificare che l'account di servizio sia stato impostato, usa il comando seguente per chiamare l'API e ottenere un elenco di account di servizio:
    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="
    }

    Produzione

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

Hai ora reso possibile la comunicazione tra i piani di runtime e gestione ibridi di Apigee. Successivamente, applichiamo la tua configurazione al runtime ibrido e completa l'installazione di Apigee hybrid.

1 2 3 4 5 6 {15 {15 {16 {16 {16 {16 {16 {16 {16 {/1