Como acessar a API do AppNeta

É possível interagir com a API AppNeta usando um fluxo de autenticação baseada em token originado do Google Cloud.

Antes de começar

Para gerar o token de acesso Google Cloud necessário, você precisa operar em um projeto Google Cloud . Recomendamos usar o mesmo projeto em que você ativou o Cloud Network Insights.

O usuário ou a conta de serviço que solicita o token precisa ter um dos seguintes papéis no projeto Google Cloud :

  • Se você quiser que a conta tenha acesso somente leitura aos recursos do Cloud Network Insights, conceda a ela um dos seguintes papéis no seu projeto:
    • Leitor do Cloud Network Insights (roles/networkmanagement.cloudNetworkInsightsViewer)
    • Leitor do gerenciamento de rede (networkmanagement.viewer)
    • O papel básico de leitor
  • Se você quiser que a conta tenha acesso total aos recursos do Network Insights do Cloud, conceda a ela um dos seguintes papéis no seu projeto:
    • Editor do Cloud Network Insights (roles/networkmanagement.cloudNetworkInsightsEditor)
    • Admin do gerenciamento de rede (networkmanagement.admin)

Criar um token da API AppNeta

É possível criar um token da API AppNeta gerando um token de acesso para troca por um token específico do provedor usado com a API AppNeta. Google Cloud

Gerar um token de acesso Google Cloud

Gere um token de acesso Google Cloud para o usuário ou a conta de serviço que faz as chamadas de API. Há várias maneiras de conseguir um token de acesso Google Cloud , dependendo do seu ambiente e de como você se autentica no Google Cloud.

  • Contas de serviço: se você estiver executando aplicativos na infraestrutura do Google Cloud(por exemplo, Compute Engine, Google Kubernetes Engine) ou usando chaves de conta de serviço, use as bibliotecas de cliente do Cloud ou o servidor de metadados para buscar tokens.
  • Outros ambientes: Google Cloud oferece vários mecanismos de autenticação.

Consulte Tipos de token de autenticação para um guia completo sobre como escolher o melhor método para sua situação.

Se você tiver a Google Cloud CLI instalada e configurada, gere um token para copiar usando comandos da CLI gcloud.

  gcloud auth print-access-token

Se você quiser credenciais padrão do aplicativo, use o seguinte comando da CLI gcloud.

gcloud auth application-default print-access-token

Tokens de troca

Use o token de acesso Google Cloud copiado para chamar a API Network Management e gerar um token de acesso específico do provedor para a AppNeta.

O token do AppNeta expira quando o tokenGoogle Cloud usado para gerá-lo expira.Os tokens de acesso Google Cloud geralmente são válidos por uma hora. Recomendamos usar um novo token de acessoGoogle Cloud sempre que você fizer a chamada generateProviderAccessToken para garantir que o token da AppNeta tenha a maior vida útil possível.

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

Substitua:

  • PROVIDER_NAME: o nome do provedor. Use external como o PROVIDER_NAME.
  • PROJECT_ID: o projeto em que o Cloud Network Insights está ativado.
  • GCP_ACCESS_TOKEN: o token que você gerou em 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"

Substitua:

  • GCP_ACCESS_TOKEN: o token que você gerou em Google Cloud.
  • PROJECT_ID: o projeto em que o Cloud Network Insights está ativado.

A resposta dessa chamada contém o providerAccessToken, que você usa para autenticar solicitações diretamente nos endpoints da API AppNeta.

Usar o token do AppNeta

Use o providerAccessToken como um token do portador no cabeçalho de autorização ao fazer chamadas para a API AppNeta. Consulte a documentação da API AppNeta para detalhes sobre endpoints disponíveis e formatos de solicitação.