Accéder à l'API AppNeta

Vous pouvez interagir avec l'API AppNeta à l'aide d'un flux d'authentification basé sur un jeton qui provient de Google Cloud.

Avant de commencer

Pour générer le jeton d'accès Google Cloud nécessaire, vous devez opérer dans un projet Google Cloud . Nous vous recommandons d'utiliser le même projet que celui dans lequel vous avez activé Cloud Network Insights.

L'utilisateur ou le compte de service qui demande le jeton doit disposer de l'un des rôles suivants dans le projet Google Cloud  :

  • Si vous souhaitez que le compte dispose d'un accès en lecture seule aux ressources Cloud Network Insights, attribuez-lui l'un des rôles suivants dans votre projet :
    • Lecteur Cloud Network Insights (roles/networkmanagement.cloudNetworkInsightsViewer)
    • Lecteur Network Management (networkmanagement.viewer)
    • Rôle de base "Lecteur"
  • Si vous souhaitez que le compte dispose d'un accès complet aux ressources Cloud Network Insights, attribuez-lui l'un des rôles suivants dans votre projet :
    • Éditeur Cloud Network Insights (roles/networkmanagement.cloudNetworkInsightsEditor)
    • Administrateur Network Management (networkmanagement.admin)

Créer un jeton d'API AppNeta

Vous pouvez créer un jeton d'API AppNeta en générant un Google Cloud jeton d'accès à échanger contre un jeton spécifique au fournisseur utilisé avec l'API AppNeta.

Générer un jeton d'accès Google Cloud

Générez un jeton d'accès Google Cloud pour le compte utilisateur ou de service qui effectue les appels d'API. Il existe plusieurs façons d'obtenir un jeton d'accès Google Cloud , en fonction de votre environnement et de la façon dont vous êtes authentifié auprès de Google Cloud.

  • Comptes de service : si vous exécutez des applications sur l'infrastructure Google Cloud(par exemple, Compute Engine, Google Kubernetes Engine) ou si vous utilisez des clés de compte de service, vous pouvez utiliser les bibliothèques clientes Cloud ou le serveur de métadonnées pour récupérer les jetons.
  • Autres environnements : Google Cloud fournit différents mécanismes d'authentification.

Pour obtenir un guide complet sur le choix de la méthode la mieux adaptée à votre situation, consultez Types de jetons d'authentification.

Si Google Cloud CLI est installé et configuré, vous pouvez générer un jeton à copier à l'aide des commandes gcloud CLI.

  gcloud auth print-access-token

Si vous souhaitez utiliser les identifiants par défaut de l'application, exécutez la commande gcloud CLI suivante.

gcloud auth application-default print-access-token

Jetons d'échange

Utilisez le jeton d'accès Google Cloud copié pour appeler l'API Network Management afin de générer un jeton d'accès spécifique au fournisseur pour AppNeta.

Le jeton AppNeta expire lorsque le jetonGoogle Cloud utilisé pour le générer expire. Google Cloud Les jetons d'accès sont généralement valides pendant une heure. Nous vous recommandons d'utiliser un jeton d'accèsGoogle Cloud à chaque fois que vous effectuez l'appel generateProviderAccessToken pour vous assurer que le jeton AppNeta a la durée de vie la plus longue possible.

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

Remplacez les éléments suivants :

  • PROVIDER_NAME : nom du fournisseur. Utilisez external comme PROVIDER_NAME.
  • PROJECT_ID : projet dans lequel Cloud Network Insights est activé.
  • GCP_ACCESS_TOKEN : jeton que vous avez généré dans 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"

Remplacez les éléments suivants :

  • GCP_ACCESS_TOKEN : jeton que vous avez généré dans Google Cloud.
  • PROJECT_ID : projet dans lequel Cloud Network Insights est activé.

La réponse à cet appel contient le providerAccessToken, que vous utilisez pour authentifier les requêtes directement sur les points de terminaison de l'API AppNeta.

Utiliser le jeton AppNeta

Utilisez providerAccessToken comme jeton de support dans l'en-tête d'autorisation lorsque vous effectuez des appels à l'API AppNeta. Consultez la documentation de l'API AppNeta pour en savoir plus sur les points de terminaison et les formats de requête disponibles.