Cómo acceder a la API de AppNeta

Puedes interactuar con la API de AppNeta a través de un flujo de autenticación basado en tokens que se origina en Google Cloud.

Antes de comenzar

Para generar el token de acceso Google Cloud necesario, debes operar dentro de un proyecto Google Cloud . Te recomendamos que uses el mismo proyecto en el que habilitaste Cloud Network Insights.

El usuario o la cuenta de servicio que solicita el token debe tener uno de los siguientes roles en el proyecto Google Cloud :

  • Si quieres que la cuenta tenga acceso de solo lectura a los recursos de Cloud Network Insights, otórgale uno de los siguientes roles en tu proyecto:
    • Visualizador de Cloud Network Insights (roles/networkmanagement.cloudNetworkInsightsViewer)
    • Visualizador de administración de redes (networkmanagement.viewer)
    • El rol básico de visualizador
  • Si quieres que la cuenta tenga acceso completo a los recursos de Cloud Network Insights, otórgale uno de los siguientes roles en tu proyecto:
    • Editor de Cloud Network Insights (roles/networkmanagement.cloudNetworkInsightsEditor)
    • Administrador de la administración de la red (networkmanagement.admin)

Crea un token de API de AppNeta

Para crear un token de la API de AppNeta, genera un Google Cloud token de acceso para intercambiarlo por un token específico del proveedor que se usa con la API de AppNeta.

Genera un Google Cloud token de acceso

Genera un token de acceso Google Cloud para el usuario o la cuenta de servicio que realiza las llamadas a la API. Existen varias formas de obtener un token de acceso de Google Cloud , según tu entorno y la forma en que te autenticas en Google Cloud.

  • Cuentas de servicio: Si ejecutas aplicaciones en la infraestructura de Google Cloud(por ejemplo, Compute Engine o Google Kubernetes Engine) o usas claves de cuentas de servicio, puedes usar las bibliotecas cliente de Cloud o el servidor de metadatos para recuperar tokens.
  • Otros entornos: Google Cloud proporciona varios mecanismos de autenticación.

Consulta Tipos de tokens de autenticación para obtener una guía completa sobre cómo elegir el mejor método para tu situación.

Si tienes instalada y configurada Google Cloud CLI, puedes generar un token para copiarlo con los comandos de gcloud CLI.

  gcloud auth print-access-token

Si deseas obtener credenciales predeterminadas de la aplicación, usa el siguiente comando de gcloud CLI.

gcloud auth application-default print-access-token

Tokens de intercambio

Usa el token de acceso Google Cloud copiado para llamar a la API de Network Management y generar un token de acceso específico del proveedor para AppNeta.

El token de AppNeta vence cuando vence el token de accesoGoogle Cloud utilizado para generarlo. Google Cloud Por lo general, los tokens de acceso son válidos durante una hora. Te recomendamos que uses un token de accesoGoogle Cloud nuevo cada vez que realices la llamada generateProviderAccessToken para garantizar que el token de AppNeta tenga la mayor vida útil posible.

gcloud

gcloud alpha network-management network-monitoring-providers 
generate-provider-access-token PROVIDER_NAME
--project=PROJECT_ID
--location=global
--gcp-access-token=GCP_ACCESS_TOKEN

Reemplaza lo siguiente:

  • PROVIDER_NAME: Es el nombre del proveedor. Usa external como PROVIDER_NAME.
  • PROJECT_ID: Es el proyecto en el que está habilitado Cloud Network Insights.
  • GCP_ACCESS_TOKEN: Es el token que generaste en Google Cloud.

curl

curl -H "Authorization: Bearer GCP_ACCESS_TOKEN" 
"https://networkmanagement.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/global/networkMonitoringProviders/external:generateProviderAccessToken?gcp_access_token=GCP_ACCESS_TOKEN"

Reemplaza lo siguiente:

  • GCP_ACCESS_TOKEN: Es el token que generaste en Google Cloud.
  • PROJECT_ID: Es el proyecto en el que está habilitado Cloud Network Insights.

La respuesta de esta llamada contiene el providerAccessToken, que usas para autenticar solicitudes directamente en los extremos de la API de AppNeta.

Usa el token de AppNeta

Usa providerAccessToken como token de portador en el encabezado de autorización cuando realices llamadas a la API de AppNeta. Consulta la documentación de la API de AppNeta para obtener detalles sobre los extremos disponibles y los formatos de solicitud.