始める前に
必要な Google Cloud アクセス トークンを生成するには、 プロジェクト Google Cloud 内で操作する必要があります。Cloud Network Insights を有効にしたプロジェクトを使用することをおすすめします。
トークンをリクエストするユーザーまたはサービス アカウントには、プロジェクトで次のいずれかの ロールが必要です。 Google Cloud
- アカウントに Cloud Network Insights リソースへの読み取り専用 アクセス権を付与する場合は、プロジェクトで次のいずれかのロールを付与します。
- Cloud Network Insights 閲覧者(
roles/networkmanagement.CloudNetworkInsightsViewer) - ネットワーク管理閲覧者(
networkmanagement.viewer) - 基本閲覧者ロール
- Cloud Network Insights 閲覧者(
- アカウントに Cloud Network Insights リソースへのフルアクセス 権を付与する場合は、プロジェクトで次のいずれかのロールを付与します。
- Cloud Network Insights 編集者(
roles/networkmanagement.CloudNetworkInsightsEditor) - ネットワーク管理者(
networkmanagement.admin)
- Cloud Network Insights 編集者(
AppNeta API トークンを作成する
AppNeta API トークンを作成するには、 Google Cloud アクセス トークン を生成して、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 アクセス
トークンの有効期間は通常 1 時間です。`generateProviderAccessToken` 呼び出しを行うたびに新しい
Google Cloud アクセス トークンを使用することをおすすめします。これにより、AppNeta
generateProviderAccessTokenトークンの有効期間を最大限に延ばすことができます。
gcloud
gcloud network-management network-monitoring-providers generate-provider-access-token NETWORK_MONITORING_PROVIDER --location=global --gcp-access-token=GCP_ACCESS_TOKEN
次のように置き換えます。
NETWORK_MONITORING_PROVIDER: プロバイダ名。別の名前を明示的に設定していない限り、externalを使用します。GCP_ACCESS_TOKEN: で生成したトークン Google Cloud。
curl
curl -H "Authorization: Bearer GCP_ACCESS_TOKEN"
"https://networkmanagement.googleapis.com/v1/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 ドキュメント
をご覧ください。
401 エラーが表示された場合は、新しい
Google Cloud アクセス トークンまたはアプリケーションのデフォルト認証情報トークンを生成し、
トークンを再度交換します。