Passo 7: ative o acesso do sincronizador

Obtenha um token de autorização

Para fazer as chamadas API Apigee descritas mais adiante neste tópico, tem de obter um token de autorização com a função de administrador da organização do Apigee.

  1. Se não for o proprietário do projeto do Google Cloud associado à sua organização do Apigee hybrid, certifique-se de que a sua conta de utilizador do Google Cloud tem a função roles/apigee.admin (administrador da organização do Apigee). Pode verificar as funções que lhe foram atribuídas com este comando:
    gcloud projects get-iam-policy ${PROJECT_ID}  \
      --flatten="bindings[].members" \
      --format='table(bindings.role)' \
      --filter="bindings.members:your_account_email"
    

    Por exemplo:

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

    O resultado deve ter um aspeto semelhante ao seguinte:

    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 não tiver roles/apigee.admin nas suas funções, adicione a função Apigee Organization Admin à sua conta de utilizador. Use o seguinte comando para adicionar a função à sua conta de utilizador:
    gcloud projects add-iam-policy-binding ${PROJECT_ID} \
      --member user:your_account_email \
      --role roles/apigee.admin

    Por exemplo:

    gcloud projects add-iam-policy-binding my-project \
      --member user:myusername@example.com \
      --role roles/apigee.admin
  3. Na linha de comando, obtenha as suas credenciais de autenticação gcloud através do seguinte comando:

    Linux / MacOS

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

    Para verificar se o token foi preenchido, use echo, como mostra o exemplo seguinte:

    echo $TOKEN

    Esta ação deve apresentar o seu token como uma string codificada.

    Windows

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

    Para verificar se o token foi preenchido, use echo, como mostra o exemplo seguinte:

    echo %TOKEN%

    Esta ação deve apresentar o seu token como uma string codificada.

Ative o acesso do sincronizador

Para ativar o acesso do sincronizador:

  1. Obtenha o endereço de email da conta de serviço à qual está a conceder acesso de sincronizador. Para ambientes de não produção (conforme sugerido neste tutorial), deve ser apigee-non-prod. Para ambientes de produção, deve ser apigee-synchronizer. Use o seguinte comando:

    Não prod

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

    Se corresponder ao padrão apigee-non-prod@${ORG_NAME}.iam.gserviceaccount.com, pode usar esse padrão no passo seguinte.

    Prod

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

    Se corresponder ao padrão apigee-synchronizer@${ORG_NAME}.iam.gserviceaccount.com, pode usar esse padrão no passo seguinte.

  2. Chame a API setSyncAuthorization para ativar as autorizações necessárias para o sincronizador através do seguinte comando:

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

    Onde:

    • ${ORG_NAME}: o nome da sua organização híbrida.
    • apigee-non-prod${ORG_NAME}.iam.gserviceaccount.com ou
      apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com: o endereço de email da conta de serviço.
  3. Para verificar se a conta de serviço foi definida, use o seguinte comando para chamar a API e obter uma lista de contas de serviço:
    curl -X GET -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"
        

    O resultado tem um aspeto semelhante ao seguinte:

    Não 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="
    }

Agora, tornou possível a comunicação entre os planos de gestão e de tempo de execução do Apigee Hybrid. Em seguida, vamos aplicar a configuração ao tempo de execução híbrido e concluir a instalação do Apigee hybrid.

1 2 3 4 5 6 7 (NEXT) Passo 8: instale o tempo de execução híbrido 9 10