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

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

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

適切なアクセス認証情報を選択する

必要な認証情報は、アプリのデータの種類、プラットフォーム、アクセス方法によって異なります。使用できる認証情報には次の 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. [Package name](パッケージ名)フィールドに、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. 省略可: [チーム 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] フィールドに、アプリの一意の 32 文字の ID 文字列を入力します。この 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. [続行] をクリックします。
  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 スコープ] フィールドに、アプリケーションに必要なスコープのカンマ区切りリストを入力します。これは、OAuth 同意画面の設定時に定義したスコープのセットと同じです。
    6. [承認] をクリックします。

次のステップ

Google Workspace での開発が可能です。Google Workspace デベロッパー向けプロダクトのリストとヘルプを確認する方法を確認する。