アクセス認証情報を作成する

認証情報は、アプリが Google Workspace API を呼び出せるように Google の承認サーバーからアクセス トークンを取得するために使用されます。このガイドでは、アプリに必要な認証情報を選択して設定する方法について説明します。

このページの用語の定義については、認証と認可の概要をご覧ください。

自分に合ったアクセス認証情報を選択する

必要な認証情報は、アプリのデータの種類、プラットフォーム、アクセス方法によって異なります。利用可能な認証情報タイプには次の 3 種類があります。

使用例 認証方法 この認証方法について
アプリで一般公開されているデータに匿名でアクセスする。 API キー この認証方法を使用する前に、使用する API が API キーをサポートしていることを確認してください。
メールアドレスや年齢などのユーザーデータにアクセスする。 OAuth クライアント ID アプリがユーザーにリクエストを行い、同意を取得する必要があります。
ドメイン全体の委任を使用して、独自のアプリケーションに属するデータへのアクセスや、Google Workspace または Cloud Identity のユーザーに代わってリソースにアクセスする。 サービス アカウント アプリがサービス アカウントとして認証されると、アプリは、そのサービス アカウントにアクセス権が付与されているすべてのリソースにアクセスできます。

API キーの認証情報

API キーは、大文字、小文字、数字、アンダースコア、ハイフンからなる長い文字列です(例: AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe)。この認証方法は、共有設定の [インターネット上のすべてのユーザー] を使用して共有された Google Workspace ファイルなど、一般公開されているデータに匿名でアクセスするために使用されます。詳しくは、API キーの使用をご覧ください。

API キーを作成するには:

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] > [API キー] をクリックします。
  3. 新しい API キーが表示されます。
    • [コピー] をクリックして、アプリのコードで使用する API キーをコピーします。API キーは、プロジェクトの認証情報の [API キー] セクションにも表示されます。
    • [キーを制限] をクリックして詳細設定を更新し、API キーの使用を制限します。詳しくは、API キーの制限を適用するをご覧ください。

OAuth クライアント ID の認証情報

エンドユーザーとして認証を行い、アプリ内でユーザーデータにアクセスするには、1 つ以上の OAuth 2.0 クライアント ID を作成する必要があります。クライアント ID は、Google の OAuth サーバーで個々のアプリを識別するために使用します。アプリが複数のプラットフォームで実行される場合は、プラットフォームごとに個別のクライアント ID を作成する必要があります。

OAuth クライアント ID の作成手順については、該当するアプリケーション タイプを選択してください。

ウェブ アプリケーション

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] > [OAuth クライアント ID] の順にクリックします。
  3. [アプリケーションの種類] > [ウェブ アプリケーション] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google Cloud コンソールにのみ表示されます。
  5. アプリに関連する承認済み URI を追加します。
    • クライアントサイド アプリ(JavaScript) - [承認済みの JavaScript 生成元] で [URI を追加] をクリックします。次に、ブラウザ リクエストに使用する URI を入力します。これは、アプリケーションが OAuth 2.0 サーバーに API リクエストを送信できるドメインを示します。
    • サーバーサイド アプリ(Java、Python など) - [承認済みのリダイレクト URI] の下にある [URI を追加] をクリックします。次に、OAuth 2.0 サーバーがレスポンスを送信するエンドポイント URI を入力します。
  6. [作成] をクリックします。OAuth クライアントの作成画面が表示され、新しいクライアント ID とクライアント シークレットが表示されます。

    クライアント ID をメモします。クライアント シークレットはウェブ アプリケーションには使用されません。

  7. [OK] をクリックします。新しく作成された認証情報が [OAuth 2.0 クライアント ID] に表示されます。

Android

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] > [OAuth クライアント ID] の順にクリックします。
  3. [アプリケーションの種類] > [Android] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google Cloud コンソールにのみ表示されます。
  5. [パッケージ名] フィールドに、AndroidManifest.xml ファイルにあるパッケージ名を入力します。
  6. [SHA-1 証明書のフィンガープリント] に、生成された SHA-1 証明書のフィンガープリントを入力します。
  7. [作成] をクリックします。[OAuth クライアントの作成] 画面が開き、新しいクライアント ID が表示されます。
  8. [OK] をクリックします。新しく作成された認証情報が [OAuth 2.0 クライアント ID] に表示されます。

iOS

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] > [OAuth クライアント ID] の順にクリックします。
  3. [アプリケーションの種類] > [iOS] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google Cloud コンソールにのみ表示されます。
  5. [Bundle ID] フィールドに、アプリの Info.plist ファイルに記載されているバンドル ID を入力します。
  6. (省略可)アプリが Apple App Store に表示されている場合は、App Store ID を入力します。
  7. 省略可: [Team ID(チーム ID)] フィールドに、Apple によって生成され、チームに割り当てられた一意の 10 文字の文字列を入力します。
  8. [作成] をクリックします。[OAuth クライアントの作成] 画面が表示され、新しいクライアント ID とクライアント シークレットが表示されます。
  9. [OK] をクリックします。新しく作成された認証情報が [OAuth 2.0 クライアント ID] に表示されます。

Chrome アプリ

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] > [OAuth クライアント ID] の順にクリックします。
  3. [アプリケーションの種類] > [Chrome アプリ] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google Cloud コンソールにのみ表示されます。
  5. [アプリケーション ID] に、アプリの一意の ID 文字列(32 文字)を入力します。この ID の値は、アプリの Chrome ウェブストアの URL や Chrome ウェブストアのデベロッパー ダッシュボードで確認できます。
  6. [作成] をクリックします。[OAuth クライアントの作成] 画面が表示され、新しいクライアント ID とクライアント シークレットが表示されます。
  7. [OK] をクリックします。新しく作成された認証情報が [OAuth 2.0 クライアント ID] に表示されます。

デスクトップ アプリ

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] > [OAuth クライアント ID] の順にクリックします。
  3. [アプリケーションの種類] > [デスクトップ アプリ] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google Cloud コンソールにのみ表示されます。
  5. [作成] をクリックします。[OAuth クライアントの作成] 画面が表示され、新しいクライアント ID とクライアント シークレットが表示されます。
  6. [OK] をクリックします。新しく作成された認証情報が [OAuth 2.0 クライアント ID] に表示されます。

テレビ、入力制限のあるデバイス

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] > [OAuth クライアント ID] の順にクリックします。
  3. [アプリケーションの種類] > [テレビと入力制限のあるデバイス] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google Cloud コンソールにのみ表示されます。
  5. [作成] をクリックします。[OAuth クライアントの作成] 画面が表示され、新しいクライアント ID とクライアント シークレットが表示されます。
  6. [OK] をクリックします。新しく作成された認証情報が [OAuth 2.0 クライアント ID] に表示されます。

ユニバーサル Windows プラットフォーム(UWP)

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] > [OAuth クライアント ID] の順にクリックします。
  3. [アプリケーションの種類] > [Universal Windows Platform (UWP)] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google Cloud コンソールにのみ表示されます。
  5. [ストア ID] に、アプリに固有の 12 文字の Microsoft Store ID 値を入力します。この ID は、アプリの Microsoft Store URL とパートナー センターで確認できます。
  6. [作成] をクリックします。[OAuth クライアントの作成] 画面が表示され、新しいクライアント ID とクライアント シークレットが表示されます。
  7. [OK] をクリックします。新しく作成された認証情報が [OAuth 2.0 クライアント ID] に表示されます。

サービス アカウント認証情報

サービス アカウントは、ユーザーではなく、アプリケーションで使用される特別なアカウントです。サービス アカウントを使用すると、ロボット アカウントによるデータへのアクセスやアクションの実行、Google Workspace または Cloud Identity ユーザーの代わりにデータにアクセスできます。詳細については、サービス アカウントについてをご覧ください。

サービス アカウントを作成する

Google Cloud コンソール

  1. Google Cloud コンソールで、メニュー アイコン > [IAM と管理] > [サービス アカウント] に移動します。

    [サービス アカウント] に移動

  2. [サービス アカウントを作成] をクリックします。
  3. サービス アカウントの詳細を入力し、[作成して続行] をクリックします。
  4. 省略可: サービス アカウントにロールを割り当てて、Google Cloud プロジェクトのリソースへのアクセス権を付与します。詳しくは、リソースへのアクセス権の付与、変更、取り消しをご覧ください。
  5. [Continue](続行)をクリックします。
  6. (省略可)このサービス アカウントで操作を管理、実行できるユーザーまたはグループを入力します。詳しくは、サービス アカウントの権限借用を管理するをご覧ください。
  7. [完了] をクリックします。サービス アカウントのメールアドレスをメモします。

gcloud CLI

  1. サービス アカウント
    gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \
      --display-name="SERVICE_ACCOUNT_NAME"
    を作成します。
  2. 省略可: サービス アカウントにロールを割り当てて、Google Cloud プロジェクトのリソースへのアクセス権を付与します。詳しくは、リソースへのアクセス権の付与、変更、取り消しをご覧ください。

サービス アカウントにロールを割り当てる

特権管理者アカウントを使用して、サービス アカウントに事前構築済みのロールまたはカスタムロールを割り当てる必要があります。

  1. Google 管理コンソールで、メニュー アイコン > [アカウント] > [管理者ロール] に移動します。

    [管理者ロール] に移動

  2. 割り当てるロールにカーソルを合わせ、[管理者を割り当て] をクリックします。

  3. [サービス アカウントへの割り当て] をクリックします。

  4. サービス アカウントのメールアドレスを入力します。

  5. [追加] > [ロールを割り当て] をクリックします。

サービス アカウントの認証情報を作成する

公開鍵と秘密鍵のペアの形式で認証情報を取得する必要があります。これらの認証情報は、アプリ内のサービス アカウントのアクションを承認するためにコードで使用されます。

サービス アカウントの認証情報を取得するには:

  1. Google Cloud コンソールで、メニュー アイコン > [IAM と管理] > [サービス アカウント] に移動します。

    [サービス アカウント] に移動

  2. サービス アカウントを選択します。
  3. [キー] > [キーを追加] > [新しいキーを作成] の順にクリックします。
  4. [JSON] を選択し、[作成] をクリックします。

    新しい公開鍵と秘密鍵のペアが生成され、新しいファイルとしてパソコンにダウンロードされます。ダウンロードした JSON ファイルを credentials.json という名前で作業ディレクトリに保存します。このファイルは、この鍵の唯一のコピーです。鍵を安全に保管する方法については、サービス アカウント キーの管理をご覧ください。

  5. [閉じる] をクリックします。

省略可: サービス アカウントのドメイン全体の委任を設定する

Google Workspace 組織内のユーザーに代わって API を呼び出すには、特権管理者アカウントによって、Google Workspace 管理コンソールでサービス アカウントにドメイン全体の権限の委任が付与されている必要があります。詳細については、ドメイン全体の権限をサービス アカウントに委任するをご覧ください。

サービス アカウントに対してドメイン全体の権限の委任を設定するには:

  1. Google Cloud コンソールで、メニュー アイコン > [IAM と管理] > [サービス アカウント] に移動します。

    [サービス アカウント] に移動

  2. サービス アカウントを選択します。
  3. [詳細設定を表示] をクリックします。
  4. [ドメイン全体の委任] でサービス アカウントの [クライアント ID] を見つけます。[] をクリックして、クライアント ID の値をクリップボードにコピーします。
  5. 関連する Google Workspace アカウントに対する特権管理者権限がある場合は、[Google Workspace 管理コンソールを表示] をクリックし、特権管理者ユーザー アカウントを使用してログインし、次の手順に進んでください。

    関連する Google Workspace アカウントに対する特権管理者アクセス権がない場合は、そのアカウントの特権管理者に連絡し、サービス アカウントのクライアント ID と OAuth スコープのリストをメールで通知してください。特権管理者が管理コンソールで次の操作を行えるようにします。

    1. Google 管理コンソールで、メニュー アイコン > [セキュリティ] > [アクセスとデータ管理] > [API の制御] に移動します。

      [API の制御] に移動

    2. [ドメイン全体の委任を管理] をクリックします。
    3. [新しく追加] をクリックします。
    4. [クライアント ID] 欄に、先ほどコピーしたクライアント ID を貼り付けます。
    5. [OAuth Scopes] 欄に、アプリケーションに必要なスコープをカンマ区切りのリストで入力します。これは、OAuth 同意画面の設定時に定義したスコープのセットと同じです。
    6. [承認] をクリックします。

次のステップ

Google Workspace で開発する準備が整いました。Google Workspace デベロッパー向けプロダクトのリストとヘルプの参照方法を確認する。