OAuth デスクトップとウェブ アプリケーションのフロー

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

このガイドでは、独自の認証情報とデスクトップ フローまたはウェブフローを使用して API アクセス用に OAuth2 を設定する方法について説明します。

単一アカウントの OAuth2 認証情報を生成する

Google Ads API アカウントに最も簡単な方法は、

  1. 1 つの Google 広告クライアント センター(MCC)アカウントで、API 呼び出しを行うすべてのアカウントをリンクします。

  2. GenerateUserCredentials の例を使用して、MCC アカウントへのアクセス権を持つユーザーの OAuth2 認証情報を生成します。

  3. OAuth2 認証情報を使用して、Google Ads API を使って管理する必要があるすべてのアカウントに呼び出しを行います。

この手順は、OAuth2 認証情報のスコープを取り消す、削除する、または変更する必要がない限り、1 回だけ行う必要があります。

ステップ 1 - OAuth2 認証情報を作成する

  1. 手順に沿って Google Ads API 用の Google API Console プロジェクトを設定します。

  2. クライアント IDシークレットをメモしてから、このページに戻ります。

ステップ 2 - クライアント ライブラリを設定する

  1. ターミナルで GenerateUserCredentials サンプルを実行します。これにより、OAuth2 クライアント ID とシークレットの入力を求められます。

    これはインタラクティブ例であり、入力が必要です

    dotnet run GenerateUserCredentials.csproj
    
  2. この例では、OAuth2 のクライアント IDシークレットを入力するように求められます。ステップ 1 の詳細を入力します。

  3. この例では、ブラウザで URL が自動的に開きます。ブラウザ セッションにログインしていない場合は、ウェブページで Google アカウントへのログインを求められます。すでにログインしている場合は、ログイン プロンプトをスキップし、Google 広告アカウントへのアクセスをアプリケーションに許可するよう求められた URL にリダイレクトされます。

    同意画面

  4. 認証が成功したことを示すメッセージを含むページが表示されます。

    更新トークンを取得しました。詳細な手順については、コンソールの出力をご覧ください。

  5. サンプルを実行していたコンソールに戻ります。更新トークンの例と、更新トークン、いくつかの手順が示され、続いてクライアント ライブラリの構成に必要なプロパティが表示されています。

    Copy the following content into your App.config file.
    
    <add key = 'OAuth2Mode' value = 'APPLICATION' />
    <add key = 'OAuth2ClientId' value = '******' />
    <add key = 'OAuth2ClientSecret' value = '******' />
    <add key = 'OAuth2RefreshToken' value = '******' />
    
    Make sure you also set the LOGIN_CUSTOMER_ID header. See
    https://developers.google.com/google-ads/api/docs/client-libs/dotnet/configuration#google_ads_api_settings
    to learn more.
    
    <add key = 'LoginCustomerId' value = 'INSERT_LOGIN_CUSTOMER_ID_HERE' />
    
    See https://developers.google.com/google-ads/api/docs/client-libs/dotnet/configuration
    for alternate configuration options.
    

インタラクティブ アプリケーション用の OAuth2 認証情報の生成

API 呼び出しを行うための Google 広告アカウントが事前に不明な場合は、セッションにログインしたユーザーの認証情報を使用して、ランタイムにアカウントを検出できます。現在ログインしているユーザーが認証され、実行時に OAuth2 認証情報を取得する例については、AuthenticateInAspNetCoreApplication をご覧ください。