User Invitation API の設定

このページでは、Cloud Identity User Invite API の設定方法について説明します。

API の有効化と認証情報の設定

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Enable the Cloud Identity API.

    Enable the API

  4. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the Project > Owner role to the service account.

      To grant the role, find the Select a role list, then select Project > Owner.

    6. Click Continue.
    7. Click Done to finish creating the service account.

      Do not close your browser window. You will use it in the next step.

  5. Create a service account key:

    1. In the Google Cloud console, click the email address for the service account that you created.
    2. Click Keys.
    3. Click Add key, and then click Create new key.
    4. Click Create. A JSON key file is downloaded to your computer.
    5. Click Close.
  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Enable the Cloud Identity API.

    Enable the API

  8. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the Project > Owner role to the service account.

      To grant the role, find the Select a role list, then select Project > Owner.

    6. Click Continue.
    7. Click Done to finish creating the service account.

      Do not close your browser window. You will use it in the next step.

  9. Create a service account key:

    1. In the Google Cloud console, click the email address for the service account that you created.
    2. Click Keys.
    3. Click Add key, and then click Create new key.
    4. Click Create. A JSON key file is downloaded to your computer.
    5. Click Close.

Python クライアント ライブラリをインストールする

Python クライアント ライブラリをインストールするには、次のコマンドを実行します。

  pip install --upgrade google-api-python-client google-auth \
    google-auth-oauthlib google-auth-httplib2

Python 開発環境の設定の詳細については、Python 開発環境設定ガイドをご覧ください。

ドメイン全体の委任をもつサービス アカウントとして認証する

ドメイン全体の権限をアカウントに付与して、管理者に代わってユーザーの招待状を管理できるようにするには、サービス アカウントとして認証してから、ドメイン全体の権限を付与する必要があります。

手順については、ドメイン全体の権限をサービス アカウントに委任するをご覧ください。サービス アカウントを承認するには、次のスコープを指定する必要があります。

  • https://www.googleapis.com/auth/cloud-identity.userinvitations

クライアントのインスタンス化

サービス アカウントの認証情報を使用してクライアントをインスタンス化する方法を、次の例に示します。代わりにエンドユーザーとして認証するには、サービス アカウントの認証情報オブジェクトを、ウェブサーバー アプリケーションでの OAuth 2.0 の使用で事前に取得した認証情報に置き換えます。

Python

from google.oauth2 import service_account
import googleapiclient.discovery

SCOPES = ['https://www.googleapis.com/auth/cloud-identity.userinvitations']
SERVICE_ACCOUNT_FILE = '/path/to/service-account-file.json'

def create_service():
  credentials = service_account.Credentials.from_service_account_file(
    SERVICE_ACCOUNT_FILE, scopes=SCOPES)
  delegated_credentials = credentials.with_subject('user@altostrat.com')

  service_name = 'cloudidentity'
  api_version = 'v1'
  service = googleapiclient.discovery.build(
    service_name,
    api_version,
    credentials=delegated_credentials)

  return service

これで、User Invitation API の呼び出しを開始できます。