Authentication

このドキュメントでは、Ad Manager API の認証方法について説明します。認証方法は、使用するインターフェースとコードが実行されている環境によって異なりますが、すべての API リクエストには、Ad Manager API のスコープを含むアクセス トークンを含める必要があります。

Ad Manager クライアント ライブラリは、アプリケーションのデフォルト認証情報を使用して、Ad Manager API スコープでアクセス トークンを生成します。このガイドでは、アプリケーションのデフォルト認証情報を構成する方法について説明します。

クライアント ライブラリを使用していない場合でも、認証情報を作成して、リクエストの承認に使用する必要があります。

認証と認可の詳細については、OAuth 2.0 の使用ガイドをご覧ください。

認証タイプを決定する

認証タイプ 説明
サービス アカウント 特定のユーザーではなく専用アカウントとして認証する場合は、これを選択します。
詳細
ウェブ アプリケーション アプリケーションにアド マネージャーのデータへのアクセスを許可するユーザーとして認証を行う場合は、これを選択します。
詳細
ローカルでの開発 ローカル開発環境から自分の Google アカウントまたはサービス アカウントとして認証する場合は、これを選択します。

Ad Manager API を有効にする

  1. Google API Console Cloud プロジェクトで Ad Manager API を有効にします。

  2. プロンプトが表示されたら、プロジェクトのいずれかを選択するか、新しいプロジェクトを作成します。

認証情報を作成

認証タイプのタブをクリックし、手順に沿って認証情報を作成します。

サービス アカウント

Google Cloud

Google Cloud で実行されているワークロードを認証するには、コードが実行されているコンピューティング リソースに関連付けられているサービス アカウントの認証情報を使用します。

たとえば、サービス アカウントを Compute Engine 仮想マシン(VM)インスタンス、Cloud Run サービス、Dataflow ジョブにアタッチできます。このアプローチは、Google Cloud コンピューティング リソースで実行されているコードの推奨認証方法です。

サービス アカウントを接続できるリソースと、サービス アカウントをリソースに接続する方法については、サービス アカウントの接続に関するドキュメントをご覧ください。

オンプレミスまたは別のクラウド プロバイダ

Google Cloud の外部から認証を設定する際の推奨方法は、Workload Identity 連携を使用することです。認証情報の構成ファイルを作成し、それを参照するように GOOGLE_APPLICATION_CREDENTIALS 環境変数を設定します。これは、サービス アカウント キーを作成するよりも安全です。

Workload Identity 連携を構成できない場合は、サービス アカウントを作成し、サービス アカウント キーを作成する必要があります。

  1. Google API Console の認証情報ページを開きます。

  2. [認証情報] ページで、[認証情報を作成] を選択し、[サービス アカウント] を選択します。

  3. キーを作成するサービス アカウントのメールアドレスをクリックします。

  4. [キー] タブをクリックします。

  5. [鍵を追加] プルダウン メニューをクリックして、[新しい鍵を作成] を選択します。

  6. 鍵のタイプとして [JSON] を選択し、[作成] をクリックします。

  7. 環境変数 GOOGLE_APPLICATION_CREDENTIALS を JSON ファイルのパスに設定します。

Linux または macOS

export GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH

Windows

set GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH

ウェブ アプリケーション

  1. Google API Console の認証情報ページを開きます。

  2. プロンプトが表示されたら、Ad Manager API を有効にしたプロジェクトを選択します。

  3. [認証情報] ページで、[認証情報を作成] を選択し、[OAuth クライアント ID] を選択します。

  4. アプリケーションの種類として [ウェブ アプリケーション] を選択します。

  5. フォームに記入し、[作成] をクリックします。PHP、Java、Python、Ruby、.NET などの言語とフレームワークを使用するアプリケーションは、承認済みのリダイレクト URI を指定する必要があります。リダイレクト URI は、OAuth 2.0 サーバーがレスポンスを送信できるエンドポイントです。これらのエンドポイントは、Google の検証ルールに準拠している必要があります。

  6. 認証情報を作成したら、client_secret.json ファイルをダウンロードします。ご使用のアプリケーションだけがアクセスできる場所に、ファイルを安全に保存します。

ここから、OAuth 2.0 アクセス トークンを取得する手順に沿って操作します。

ローカルでの開発

ローカル環境でアプリケーションのデフォルト認証情報(ADC)を設定します。

Google Cloud CLI をインストールし、次のコマンドを実行して初期化します。

gcloud init

Google アカウントのローカル認証情報を作成し、Ad Manager API が有効になっているプロジェクトにプロジェクト ID を設定します。

gcloud auth application-default login --scopes="https://www.googleapis.com/auth/admanager"
gcloud auth application-default set-quota-project PROJECT_ID

または、環境変数 GOOGLE_APPLICATION_CREDENTIALS をキーファイルのパスに設定して、サービス アカウントとして認証します。

Linux または macOS

export GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH

Windows

set GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH

アド マネージャー ネットワークを設定する

サービス アカウント

  1. アド マネージャー ネットワークに移動します。
  2. [管理者] タブをクリックします。
  3. API アクセスが有効になっていることを確認します。
  4. [サービス アカウント ユーザーを追加] ボタンをクリックします。
  5. サービス アカウントのメールアドレスを使用してフォームに記入します。サービス アカウント ユーザーは、API 統合の適切なロールとチームに追加する必要があります。
  6. [Save] ボタンをクリックします。サービス アカウントの追加を確認するメッセージが表示されます。
  7. 既存のサービス アカウント ユーザーを表示するには、[ユーザー] タブに移動して [サービス アカウント] フィルタをクリックします。

ウェブ アプリケーション

  1. アド マネージャー ネットワークに移動します。
  2. [管理者] タブをクリックします。
  3. API アクセスが有効になっていることを確認します。

ローカルでの開発

  1. アド マネージャー ネットワークに移動します。
  2. [管理者] タブをクリックします。
  3. API アクセスが有効になっていることを確認します。

クライアント ライブラリを使用しない場合

クライアント ライブラリを使用していない場合でも、認証に OAuth2 ライブラリを使用することを強くおすすめします。

アクセス トークンの取得に関する詳細な手順については、Google API での OAuth2 の使用をご覧ください。

アクセス トークン

access_token クエリ パラメータまたは Authorization HTTP ヘッダー Bearer 値のいずれかを含めることで、API へのリクエストにアクセス トークンを含めます。クエリ文字列はサーバーログに表示される傾向があるため、可能な場合は HTTP ヘッダーを使用することをおすすめします。

次に例を示します。

GET /v1/networks/1234
Host: admanager.googleapis.com
Authorization: Bearer ya29.a0Ad52N3_shYLX
GET https://admanager.googleapis.com/v1/networks/1234?access_token=1/fFAGRNJru1FTz70BzhT3Zg

範囲

各アクセス トークンは、1 つ以上のスコープに関連付けられています。スコープは、アクセス トークンで許可されるリソースとオペレーションのセットを制御します。アド マネージャー API には 2 つのスコープがあります。アプリケーションでデータを書き込む必要がない場合は、より狭い admanager.readonly スコープを使用することをおすすめします。

範囲 権限
https://www.googleapis.com/auth/admanager Google アド マネージャーでキャンペーンを表示して管理します。
https://www.googleapis.com/auth/admanager.readonly Google アド マネージャーでキャンペーンとデータを確認する。