Passaggio 7: attiva l'accesso al sincronizzatore

Recuperare un token di autorizzazione

Per effettuare le chiamate API Apigee descritte più avanti in questo argomento, devi ottenere un'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 dell'organizzazione Apigee). Puoi controllare i ruoli assegnati a te 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 includere roles/apigee.admin.

  2. Se non disponi di roles/apigee.admin, aggiungi il metodo Apigee Amministratore dell'organizzazione al tuo account utente. Utilizza il seguente comando per aggiungere 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 seguente comando:

    Linux e MacOS

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

    Per verificare che il token sia stato compilato, usa echo come 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 inserito, utilizza echo, come illustrato nell'esempio seguente:

    echo %TOKEN%

    Il token dovrebbe essere visualizzato come stringa codificata.

Abilita l'accesso per sincronizzare

Per abilitare l'accesso al sincronizzatore:

  1. Ottieni l'indirizzo email per l'account di servizio a cui stai concedendo l'accesso per la sincronizzazione. Per gli ambienti non di produzione (come suggerito in questo tutorial), dovrebbe essere apigee-non-prod. Per gli ambienti di produzione, deve essere apigee-synchronizer. Utilizza il seguente comando:
    gcloud iam service-accounts list --project ${PROJECT_ID} --filter "apigee-synchronizer"
  2. Chiama l'API setSyncAuthorization per abilitare le autorizzazioni richieste per Synchronizer utilizzando il seguente comando:

    Nessuna residenza dei dati

    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-synchronizer${ORG_NAME}.iam.gserviceaccount.com: l'email. dell'account di servizio.

    Residenza dei dati

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

    Dove:

    • CONTROL_PLANE_LOCATION: la posizione dei dati del piano di controllo se l'installazione ibrida utilizza la residenza dei dati. Questa è la posizione in cui sono archiviati i contenuti principali dei clienti, come i bundle proxy. Per un elenco, consulta Regioni del piano di controllo dell'API Apigee disponibili.
    • ${ORG_NAME}: il nome della tua organizzazione ibrida.
    • 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, utilizza il comando seguente per chiamare l'API e ottenere un elenco di account di servizio:

    Nessuna residenza dei dati

    curl -X GET -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"
        

    Residenza dei dati

    curl -X GET -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"
        

    L'output è simile al seguente:

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

Ora hai attivato la comunicazione tra i piani di gestione e di runtime di Apigee hybrid. Installa poi cert-manager per consentire ad Apigee hybrid di interpretare e gestire certificati.

Passaggio successivo

1 2 3 4 5 6 7 (SUCCESSIVO) Passaggio 8: installa cert-manager 9 10 11 12