Obtener un token de autorización
Para hacer las llamadas a la API de Apigee que se describen más adelante en este tema, debes obtener un token de autorización que tenga el rol de administrador de la organización de Apigee.
- Si no eres el propietario del proyecto de Google Cloud asociado a tu organización de Apigee hybrid, asegúrate de que tu cuenta de usuario de GCP tenga el rol roles/apigee.admin (administrador de la organización de Apigee). Puedes consultar los roles que tienes asignados con este comando:
gcloud projects get-iam-policy ${PROJECT_ID} \ --flatten="bindings[].members" \ --format='table(bindings.role)' \ --filter="bindings.members:your_account_email"
Por ejemplo:
gcloud projects get-iam-policy my-project \ --flatten="bindings[].members" \ --format='table(bindings.role)' \ --filter="bindings.members:myusername@example.com"
La salida debería tener un aspecto similar al siguiente:
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
- Si no tienes
roles/apigee.admin
en tus roles, añade el rol Administrador de organización de Apigee a tu cuenta de usuario. Usa el siguiente comando para añadir el rol a tu cuenta de usuario:gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member user:your_account_email \ --role roles/apigee.admin
Por ejemplo:
gcloud projects add-iam-policy-binding my-project \ --member user:myusername@example.com \ --role roles/apigee.admin
-
En la línea de comandos, obtén tus credenciales de autenticación de
gcloud
con el siguiente comando:Linux o macOS
export TOKEN=$(gcloud auth print-access-token)
Para comprobar que se ha rellenado el token, usa
echo
, como se muestra en el siguiente ejemplo:echo $TOKEN
Debería mostrar tu token como una cadena codificada.
Windows
for /f "tokens=*" %a in ('gcloud auth print-access-token') do set TOKEN=%a
Para comprobar que se ha rellenado el token, usa
echo
, como se muestra en el siguiente ejemplo:echo %TOKEN%
Debería mostrar tu token como una cadena codificada.
Habilitar el acceso del sincronizador
Para habilitar el acceso del sincronizador, sigue estos pasos:
- Obtén la dirección de correo de la cuenta de servicio a la que vas a conceder acceso de sincronizador.
En los entornos que no sean de producción (como se sugiere en este tutorial), debería ser
apigee-non-prod
. En los entornos de producción, debe serapigee-synchronizer
. Usa el siguiente comando:No producción
gcloud iam service-accounts list --filter "apigee-non-prod"
Producción
gcloud iam service-accounts list --filter "apigee-synchronizer"
Si coincide con el patrón
apigee-non-prod@${ORG_NAME}.iam.gserviceaccount.com
, puedes usarlo en el siguiente paso. - Llama a la API setSyncAuthorization para habilitar los permisos necesarios para Synchronizer con el siguiente comando:
No producción
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"'"]}'
Producción
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"'"]}'
Donde:
${ORG_NAME}
: el nombre de tu organización híbrida.apigee-non-prod${ORG_NAME}.iam.gserviceaccount.com
o
apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com
: la dirección de correo de la cuenta de servicio.
- Para verificar que se ha configurado la cuenta de servicio, usa el siguiente comando para llamar a la API y obtener una lista de cuentas de servicio:
curl -X GET -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"
El resultado es similar al siguiente:
No producción
{ "identities":[ "serviceAccount:apigee-non-prod@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }
Producción
{ "identities":[ "serviceAccount:apigee-synchronizer@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }
Ahora, los planos de gestión y de tiempo de ejecución de Apigee hybrid pueden comunicarse. A continuación, vamos a aplicar la configuración al entorno de ejecución híbrido y a completar la instalación de Apigee hybrid.
1 2 3 4 5 6 7 8 (SIGUIENTE) Paso 9: Instala el tiempo de ejecución híbrido