Receber um token de autorização
Para fazer as chamadas de API da Apigee descritas anteriormente neste tópico, é necessário ter um token de autorização que tenha o papel de administrador da organização da Apigee.
- Se você não for o proprietário do projeto do Google Cloud associado à organização da Apigee híbrida, verifique se sua conta de usuário do Google Cloud tem o papel roles/apigee.admin (Administrador da organização da Apigee). Verifique os papéis atribuídos a você com este comando:
gcloud projects get-iam-policy ${PROJECT_ID} \ --flatten="bindings[].members" \ --format='table(bindings.role)' \ --filter="bindings.members:your_account_email"
Exemplo:
gcloud projects get-iam-policy my-project \ --flatten="bindings[].members" \ --format='table(bindings.role)' \ --filter="bindings.members:myusername@example.com"
A resposta será semelhante a esta:
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
- Se você não tiver
roles/apigee.admin
nos papéis, adicione o papel Administrador da organização da Apigee à conta de usuário. Use o seguinte comando para adicionar o papel à sua conta de usuário:gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member user:your_account_email \ --role roles/apigee.admin
Exemplo:
gcloud projects add-iam-policy-binding my-project \ --member user:myusername@example.com \ --role roles/apigee.admin
-
Na linha de comando, receba as credenciais de autenticação de
gcloud
usando o comando a seguir:Linux / MacOS
TOKEN=$(gcloud auth print-access-token)
Para verificar se o token foi preenchido, use
echo
, como mostra o exemplo a seguir:echo $TOKEN
Isso exibirá 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 a seguir:echo %TOKEN%
Isso exibirá seu token como uma string codificada.
Ativar acesso do sincronizador
Para ativar o acesso do sincronizador:
- Encontre o endereço de e-mail da conta de serviço à qual você está concedendo acesso de sincronia.
Para ambientes que não são de produção (como sugerido neste tutorial), ele precisa ser
apigee-non-prod
. Para ambientes de produção, ele precisa serapigee-synchronizer
. Use o comando a seguir:Sem produção
gcloud iam service-accounts list --filter "apigee-non-prod"
Prod.
gcloud iam service-accounts list --filter "apigee-synchronizer"
Se ele corresponder ao padrão
apigee-non-prod@${ORG_NAME}.iam.gserviceaccount.com
, use esse padrão na próxima etapa - Chame a
API setSyncAuthorization
para ativar as permissões necessárias para o Sincronizador usando o seguinte comando:
Sem produção
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"'"]}'
Em que:
${ORG_NAME}
: o nome da organização híbrida.apigee-non-prod${ORG_NAME}.iam.gserviceaccount.com
ou
apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com
: o endereço de e-mail da conta de serviço.
- Para verificar se a conta de serviço foi definida, use o seguinte comando para chamar a API a fim de conseguir
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"
A resposta será semelhante a:
Sem produção
{ "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=" }
Você permitiu agora a comunicação entre os ambientes de gerenciamento e ambiente de execução da Apigee híbrida. Em seguida, vamos aplicar a configuração ao ambiente de execução híbrido e concluir a instalação da Apigee híbrida.
1 2 3 4 5 6 7 8 (A SEGUIR) Etapa 9: instalar o ambiente de execução híbrido