准备工作
如需生成必要的 Google Cloud 访问令牌,您需要在 Google Cloud 项目中操作。建议使用已启用 Cloud Network Insights 的同一项目。
请求令牌的用户或服务账号必须在 Google Cloud 项目中拥有以下角色之一:
- 如果您希望该账号拥有对 Cloud Network Insights 资源的只读权限,请在项目中向其授予以下某个角色:
- Cloud Network Insights Viewer
(
roles/networkmanagement.cloudNetworkInsightsViewer) - Network Management Viewer (
networkmanagement.viewer) - 基本 Viewer 角色
- Cloud Network Insights Viewer
(
- 如果您希望账号拥有对 Cloud Network Insights 资源的完整访问权限,请在项目中向其授予以下角色之一:
- Cloud Network Insights Editor
(
roles/networkmanagement.cloudNetworkInsightsEditor) - Network Management Admin (
networkmanagement.admin)
- Cloud Network Insights Editor
(
创建 AppNeta API 令牌
您可以生成 Google Cloud 访问令牌 来换取与 AppNeta API 搭配使用的提供商专用令牌,从而创建 AppNeta API 令牌。
生成 Google Cloud 访问令牌
为执行 API 调用的用户或服务账号生成 Google Cloud 访问令牌。 您可以根据自己的环境以及向 Google Cloud进行身份验证的方式,通过多种方式获取 Google Cloud 访问令牌。
- 服务账号:如果您在 Google Cloud基础架构(例如 Compute Engine、Google Kubernetes Engine)上运行应用或使用服务账号密钥,则可以使用 Cloud 客户端库或元数据服务器来获取令牌。
- 其他环境: Google Cloud 提供各种身份验证机制。
如需获取有关如何根据具体情况选择最佳方法的全面指南,请参阅身份验证令牌类型。
如果您已安装并配置 Google Cloud CLI,则可以使用 gcloud CLI 命令生成要复制的令牌。
gcloud auth print-access-token
如果您需要应用默认凭据,请使用以下 gcloud CLI 命令。
gcloud auth application-default print-access-token
交换令牌
使用复制的 Google Cloud 访问令牌调用 Network Management API,以生成 AppNeta 的提供商专用访问令牌。
当用于生成 AppNeta 令牌的Google Cloud 令牌过期时,AppNeta 令牌也会过期。 Google Cloud 访问令牌的有效期通常为一小时。我们建议您每次执行 generateProviderAccessToken 调用时都使用新的Google Cloud 访问令牌,以确保 AppNeta 令牌具有尽可能长的有效期。
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
替换以下内容:
PROVIDER_NAME:提供方名称。使用external作为 PROVIDER_NAME。PROJECT_ID:启用了 Cloud Network Insights 的项目。GCP_ACCESS_TOKEN:您在 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"
替换以下内容:
GCP_ACCESS_TOKEN:您在 Google Cloud中生成的令牌。PROJECT_ID:启用了 Cloud Network Insights 的项目。
此调用的响应包含 providerAccessToken,您可以使用该令牌直接针对 AppNeta API 端点对请求进行身份验证。
使用 AppNeta 令牌
在调用 AppNeta API 时,请在授权标头中使用 providerAccessToken 作为不记名令牌。如需详细了解可用的端点和请求格式,请参阅 AppNeta API 文档。