Paso 8: Habilita el acceso del sincronizador

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.

  1. 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
  2. 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
  3. 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:

  1. 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 ser apigee-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.

  2. 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.
  3. 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