カスタムOAuth アプリケーションの作成
カスタムOAuth アプリケーションの作成
CData はOAuth アプリケーション認証情報を製品に組み込んでおり、デスクトップアプリケーションまたはヘッドレスマシン経由でGoogle Ads に接続する際に使用できます。 (OAuthAccessToken およびその他の設定パラメータを取得および設定する方法についての情報は、「Google Ads への接続」のデスクトップ認証セクションを参照してください。)ただし、Web 経由でGoogle Ads に接続するには、カスタムOAuth アプリケーションの作成が必要です。また、カスタムOAuth アプリケーションは、一般的に使用される3つの認証フローをすべてシームレスにサポートするため、これらの認証フロー用にカスタムOAuth アプリケーションを作成(独自のOAuth アプリケーションクレデンシャルを使用)することもできます。カスタムOAuth アプリケーションは、次のような場合に有用です。
- 認証ダイアログのブランディングをコントロールしたいとき
- ユーザー認証後にアプリケーションがユーザーをリダイレクトするためのリダイレクトURI をコントロールしたいとき
- ユーザーからのリクエストに対する許可をカスタマイズしたいとき
以下のセクションでは、Directory API を有効化し、ユーザーアカウント(OAuth / OAuthPKCE)およびサービスアカウント(OAuth / JWT)用のカスタムOAuth アプリケーションを作成する方法について説明します。
ユーザーアカウント(OAuth / OAuthPKCE)
AuthScheme がOAuth またはOAuthPKCE であり、Web アプリケーション上で認証する必要があるユーザーの場合は、必ずカスタムOAuth アプリケーションを作成する必要があります。(デスクトップおよびヘッドレスフローでのカスタムOAuth アプリケーションの作成は任意です。)以下の手順に従います。
- Google Cloud Console に移動します。
- 新しいプロジェクトを作成するか、既存のプロジェクトを選択します。
- 左側のナビゲーションメニューで、認証情報を選択します。
- このプロジェクトに同意画面がまだ設定されていない場合は、同意画面を設定をクリックして作成します。Google Workspace アカウントを使用しない場合、User Type が外部の同意画面の作成に制限され、ユーザーサポートメールとデベロッパーの連絡先情報を指定する必要があります。追加情報は任意です。
- 認証情報ページで認証情報を作成 -> OAuth クライアントID を選択します。
- アプリケーションの種類メニューでウェブアプリケーションを選択します。
- カスタムOAuth アプリケーションの名前を指定します。
- 承認済みのリダイレクトURI の下にあるURI を追加をクリックし、リダイレクトURI を入力します。
- Enter をクリックし、続けて作成をクリックします。Cloud コンソールは認証情報ページに戻ります。
- Google Cloud コンソールは、クライアントId とクライアントシークレットを表示するウィンドウを開きます。 後で使用するために、クライアントId とクライアントシークレットを記録しておきます。
Note: クライアントシークレットはGoogle Cloud コンソールからアクセス可能です。
サービスアカウント(OAuthJWT)
サービスアカウント(AuthScheme OAuthJWT)をOAuth フローで使用することで、ドメイン内のユーザーの代わりにGoogle API にアクセスすることができます。ドメイン管理者はドメイン全体のアクセスをサービスアカウントに委任することができます。新しいサービスアカウントを作成するには:
- Google Cloud Console に移動します。
- 新しいプロジェクトを作成するか、既存のプロジェクトを選択します。
- 左側のナビゲーションメニューで、認証情報を選択します。
- 認証情報を作成 -> サービスアカウントを選択します。
- サービスアカウントの作成ページで、サービスアカウント名およびサービスアカウントID を入力します。任意でサービスアカウントの説明を入力します。
- 完了をクリックします。Cloud コンソールは認証情報ページを再表示します。
- サービスアカウントセクションで、作成したサービスアカウントを選択します。
- キータブをクリックします。
- 鍵を追加 -> 新しい鍵を作成 をクリックします。
- サポートされているキータイプ(OAuthJWTCert およびOAuthJWTCertType を参照)を選択します。
- 作成をクリックします。キーは自動的にデバイスにダウンロードされ、キーに固有の追加情報が表示されます。
後で使用するために、追加情報を記録しておきます。 - サービスアカウントフローを完了させるには、Google Cloud Console で秘密キーを生成します。サービスアカウントフローにおいて、ドライバーはOAuthAccessToken へのJSON Web Token (JWT) を交換します。秘密キーはJWT の署名に必要で、それを使用することでドライバーはサービスアカウントに付与されたのと同じ権限を得ます。