存取 AppNeta API

您可以透過源自 Google Cloud的權杖型驗證流程,與 AppNeta API 互動。

事前準備

如要產生必要的 Google Cloud 存取權杖,您必須在 Google Cloud 專案中操作。建議使用已啟用 Cloud Network Insights 的專案。

要求符記的使用者或服務帳戶必須在 Google Cloud 專案中具備下列其中一個角色:

  • 如要讓帳戶擁有 Cloud Network Insights 資源的唯讀存取權,請在專案中授予下列其中一個角色:
    • Cloud Network Insights 檢視者 (roles/networkmanagement.cloudNetworkInsightsViewer)
    • Network Management 檢視者 (networkmanagement.viewer)
    • 基本檢視者角色
  • 如要讓帳戶完整存取 Cloud Network Insights 資源,請在專案中授予下列其中一個角色:
    • Cloud Network Insights 編輯者 (roles/networkmanagement.cloudNetworkInsightsEditor)
    • 網路管理管理員 (networkmanagement.admin)

建立 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 存取權杖 Google Cloud 過期,AppNeta 權杖也會失效。存取權杖的效期通常為一小時。建議您每次執行 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 說明文件