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

認証情報は、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 を制限することをおすすめします。 詳細については、 API 制限を追加するをご覧ください。

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

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

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

ウェブ アプリケーション

  1. Google API Console で、メニュー アイコン > [Google Auth platform] > [Clients] に移動します。

    [Clients] に移動

  2. [Create Client] をクリックします。
  3. [Application type] > [Web application] をクリックします。
  4. [Name] フィールドに、認証情報の名前を入力します。この名前は Google API Console にのみ表示されます。
  5. アプリに関連する承認済み URI を追加します。
    • クライアントサイド アプリ(JavaScript) \- [Authorized JavaScript origins] で [Add URI] をクリックします。次に、ブラウザ リクエストに使用する URI を入力します。これにより、アプリケーションが OAuth 2.0 サーバーに API リクエストを送信できるドメインが識別されます。
    • サーバーサイド アプリ(Java、Python など)–[Authorized redirect URIs] で [Add URI] をクリックします。次に、OAuth 2.0 サーバーがレスポンスを送信できるエンドポイント URI を入力します。
  6. [Create] をクリックします。

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

    クライアント シークレットはウェブ アプリケーションでは使用されません。

Android

  1. Google API Console で、メニュー アイコン > [Google Auth platform] > [Clients] に移動します。

    [Clients] に移動

  2. [Create Client] をクリックします。
  3. [Application type] > [Android] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google API Console にのみ表示されます。
  5. [パッケージ名] フィールドに、AndroidManifest.xml ファイルのパッケージ名を入力します。
  6. [SHA-1 証明書フィンガープリント] フィールドに、生成した SHA-1 証明書フィンガープリントを入力します。
  7. [Create] をクリックします。

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

iOS

  1. Google API Console で、メニュー アイコン > [Google Auth platform] > [Clients] に移動します。

    [Clients] に移動

  2. [Create Client] をクリックします。
  3. [Application type] [>] [iOS] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google API Console にのみ表示されます。
  5. [Bundle ID] フィールドに、アプリの Info.plist ファイルに記載されているバンドル ID を入力します。
  6. 省略可: アプリが Apple App Store に表示される場合は、App Store ID を入力します。
  7. 省略可: [Team ID] フィールドに、Apple によって生成され、チームに割り当てられている 10 文字からなる固有の文字列を入力します。
  8. [Create] をクリックします。

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

Chrome 拡張機能

  1. Google API Console で、メニュー アイコン > [Google Auth platform] > [Clients] に移動します。

    [Clients] に移動

  2. [Create Client] をクリックします。
  3. [Application type] [>] [Chrome Extension] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google API Console にのみ表示されます。
  5. [商品アイテム ID] フィールドに、アプリの一意の 32 文字の ID 文字列を入力します。この ID 値は、アプリの Chrome ウェブストアの URL と Chrome ウェブストア デベロッパー ダッシュボードで確認できます。
  6. [Create] をクリックします。

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

デスクトップ アプリ

  1. Google API Console で、メニュー アイコン > [Google Auth platform] > [Clients] に移動します。

    [Clients] に移動

  2. [Create Client] をクリックします。
  3. [Application type] > [Desktop app] をクリックします。
  4. [Name] フィールドに、認証情報の名前を入力します。この名前は Google API Console にのみ表示されます。
  5. [Create] をクリックします。

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

テレビと入力が限られたデバイス

  1. Google API Console で、メニュー アイコン > [Google Auth platform] > [Clients] に移動します。

    [Clients] に移動

  2. [Create Client] をクリックします。
  3. [Application type] [>] [TVs & Limited Input devices] をクリックします。
  4. [名前] フィールドに、認証情報の名前を入力します。この名前は Google API Console にのみ表示されます。
  5. [Create] をクリックします。

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

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

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

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

Google API Console

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

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

  2. [サービス アカウントを作成] をクリックします。
  3. サービス アカウントの詳細を入力し、[作成して続行] をクリックします。 フィールドで ID を変更します。
  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 デベロッパー プロダクトのリストとヘルプの検索方法を確認してください。