Authentication

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

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

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

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

認証タイプを決定する

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

Ad Manager API を有効にする

  1. Google API Console クラウド プロジェクトで 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 の使用をご覧ください。

アクセス トークン

API へのリクエストにアクセス トークンを含めるには、access_token クエリ パラメータまたは Authorization HTTP ヘッダーの Bearer 値を指定します。クエリ文字列はサーバーログに表示される傾向があるため、可能であれば 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 つ以上のスコープに関連付けられています。スコープは、アクセス トークンが許可するリソースとオペレーションのセットを制御します。Ad Manager API には 2 つのスコープがあります。アプリケーションでデータを書き込む必要がない場合は、より狭い admanager.readonly スコープを使用することをおすすめします。

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