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

認証情報は、アプリが 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. [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. [バンドル 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. [アプリケーションの種類] > [ユニバーサル Windows プラットフォーム(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. [Close] をクリックします。

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

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 デベロッパー向けプロダクトのリストとヘルプの検索方法を確認する。