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

このガイドでは、独自の認証情報とデスクトップ フローまたはウェブ フローを使用して API アクセス用に OAuth 2.0 を設定する方法について説明します。この手順は、OAuth 2.0 認証情報の取り消し、削除、または許可されたスコープの変更が必要な場合を除き、1 回だけ行う必要があります。

OAuth 2.0 認証情報を作成する

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

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

クライアント ライブラリを設定する

  1. ターミナルで GenerateUserCredentials の例を実行します。プロンプトが表示されたら、OAuth 2.0 クライアント ID とクライアント シークレットを入力します。

    dotnet run GenerateUserCredentials.csproj
    
  2. このコード例では、ブラウザで URL が自動的に開きます。ブラウザ セッションにログインしていない場合は、ウェブページで Google アカウントへのログインを求められます。すでにログインしている場合は、ログイン プロンプトはスキップされ、アプリがユーザーの代わりに Google 広告アカウントにアクセスすることを承認する必要がある URL にリダイレクトされます。

    Google 広告へのアクセスに使用している Google アカウントでログインします。通常、これは、管理する必要があるすべてのアカウントがアカウント階層に含まれている Google 広告の MCC アカウントのログイン メールアドレスです。OAuth 2.0 同意画面で [続行] をクリックします。

    OAuth 2.0 同意画面

    認証が成功したことを示すメッセージが表示されたページに移動します。

    Your refresh token has been fetched. Check the
    console output for further instructions.
  3. コード例を実行しているコンソールに戻ります。コード例が完了し、更新トークンといくつかの手順が表示されます。その後に、クライアント ライブラリを構成するために必要な手順が表示されます。

    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 = '******' />
    

    App.config ファイルで LOGIN_CUSTOMER_ID ヘッダーも設定してください。詳細については、 構成ガイドをご覧ください。

    <add key = 'LoginCustomerId' value = 'INSERT_LOGIN_CUSTOMER_ID_HERE' />
    

    代替の構成オプションについては、構成ガイドをご覧ください。

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

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