Application Integration でサポートされているコネクタをご覧ください。
認証プロファイルを管理する
Application Integration のタスクでは、外部アプリケーション、サービス、データソースへの接続が必要になる場合があります。認証プロファイルを使用すると、Application Integration で接続の認証情報を構成して保存できます。保存された認証プロファイルを使用するようにタスクを構成できます。認証プロファイルの作成は 1 回限りのアクティビティであり、同じプロファイルを複数の統合で再利用できます。
必要なロール
認証プロファイルの管理に必要な権限を取得するには、統合に関する次の IAM ロールを付与するよう管理者に依頼してください。
-
Application Integration 管理者(
roles/integrations.integrationAdmin
) -
認証プロファイルを作成する:
Application Integration 編集者(
roles/integrations.integrationEditor
) -
認証プロファイルを編集する:
Application Integration 編集者(
roles/integrations.integrationEditor
) -
認証プロファイルを削除する:
Application Integration 管理者(
roles/integrations.integrationAdmin
)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセスを管理するをご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
OAuth 2.0 クライアント ID を作成する
クライアント ID は、Google の OAuth サーバーで個々のアプリケーションを識別するために使用します。アプリケーションが複数のプラットフォームで実行されている場合は、それぞれに独自のクライアント ID が必要です。 OAuth 2.0 をアプリケーションで使用するには OAuth 2.0 クライアント ID が必要です。アプリケーションは OAuth 2.0 アクセス トークンを要求するときにこの ID を使用します。
OAuth 2.0 クライアント ID を作成するには、次の手順に従います。
- Google Cloud コンソールで、[API とサービス] の [認証情報] に移動します。
- [+ 認証情報の作成] をクリックし、使用可能なオプションのリストから [OAuth クライアント ID] を選択します。
[OAuth クライアント ID の作成] ページが表示されます。
- アプリケーションの種類: プルダウン リストから [ウェブ アプリケーション] を選択します。
- 名前: OAuth 2.0 クライアントの名前を入力して、Cloud コンソールでクライアントを識別します。
- [承認済みのリダイレクト URI] で、[+ URI を追加] をクリックして次のように入力します。
https://console.cloud.google.com/integrations/callback/locations/AUTH_PROFILE_REGION
- [作成] をクリックします。
OAuth 2.0 クライアント ID が正常に作成されました。
新しい認証プロファイルの作成
新しい認証プロファイルを作成するには、次のいずれかのオプションを選択します。
Console
- Google Cloud コンソールで [Application Integration] ページに移動します。
- ナビゲーション メニューで [Auth プロファイル] をクリックします。
- [作成] をクリックして、次の詳細を入力します。
- [プロファイル名] フィールドに、統合エディタに表示する認証プロファイルの名前を入力します。
- [リージョン] リストから、認証プロファイルのリージョンを選択します。
- [説明] フィールドに、認証プロファイルの説明を入力します。
- [続行] をクリックします。
- [認証タイプ] リストから認証タイプを選択し、必要な詳細を入力します。 選択した内容に基づいて、認証情報に必要な追加フィールドがダイアログに表示されます。次の認証タイプのいずれかを選択できます。
- 必要に応じて、サーバーがクライアントの ID を検証するために使用する SSL/TLS クライアント証明書を追加できます。次のフィールドに入力できます。
- SSL 証明書
- 秘密鍵
- 秘密鍵のパスフレーズ
- [作成] をクリックします。
[Authentication Profiles] ページが表示されます。
Terraform
google_integrations_client
リソースを使用します。
Terraform を使用して、次の認証プロファイルを作成できます。
- 認証トークン
- SSL/TLS クライアント証明書のみ
- JSON Web Token(JWT)
- OAuth 2.0 認証コード
- OAuth 2.0 クライアント認証情報
- OIDC ID トークン
- サービス アカウント
認証トークン
次の例では、us-central1
リージョンに認証トークン認証タイプを作成します。
SSL / TLS クライアント認証
次の例では、us-central1
リージョンに SSL / TLS クライアント証明書認証タイプを作成します。
JSON Web Token(JWT)
次の例では、us-central1
リージョンに JSON Web Token(JWT)認証タイプを作成します。
OAuth 2.0 認証コード
次の例では、us-central1
リージョンに SSL / TLS クライアント証明書認証タイプを作成します。
OAuth 2.0 クライアント認証情報
次の例では、us-central1
リージョンに OAuth 2.0 クライアント認証情報認証タイプを作成します。
Google OIDC ID トークン
次の例では、us-central1
リージョンに Google OIDC ID トークン認証タイプを作成します。
resource "random_id" "default" { byte_length = 8 } resource "google_service_account" "service_account" { account_id = "sa-${random_id.default.hex}" display_name = "Service Account" } resource "google_integrations_auth_config" "auth_config_oidc_token" { location = "us-central1" display_name = "tf-oidc-token" description = "Test auth config created via terraform" decrypted_credential { credential_type = "OIDC_TOKEN" oidc_token { service_account_email = google_service_account.service_account.email audience = "https://us-central1-project.cloudfunctions.net/functionA 1234987819200.apps.googleusercontent.com" } } depends_on = [google_service_account.service_account, google_integrations_client.client] }
サービス アカウント
次の例では、us-central1
リージョンにサービス アカウント認証タイプを作成します。
resource "random_id" "default" { byte_length = 8 } resource "google_service_account" "service_account" { account_id = "sa-${random_id.default.hex}" display_name = "Service Account" } resource "google_integrations_auth_config" "auth_config_service_account" { location = "us-central1" display_name = "tf-service-account" description = "Test auth config created via terraform" decrypted_credential { credential_type = "SERVICE_ACCOUNT" service_account_credentials { service_account = google_service_account.service_account.email scope = "https://www.googleapis.com/auth/cloud-platform https://www.googleapis.com/auth/adexchange.buyer https://www.googleapis.com/auth/admob.readonly" } } depends_on = [google_service_account.service_account, google_integrations_client.client] }
保存すると、新しい認証プロファイルは、認証が必要なタスクの [Authorization profile to use] プルダウンのオプションとして使用できるようになります。
(省略可)統合タスクを構成する前に認証プロファイルを作成していない場合は、タスク構成ペインで、[使用する認証プロファイル] プルダウンから [+ 新しい認証プロファイルを追加] を選択して、プロファイル作成ダイアログにアクセスできます。前述の手順で新しい認証プロファイルを作成します。
認証プロファイルを編集する
認証プロファイルを編集するには、次の手順を実行します。
- Google Cloud コンソールで [Application Integration] ページに移動します。
- ナビゲーション メニューで [Auth プロファイル] をクリックします。
- [Authentication Profiles] ページのプルダウン メニューを使用して、認証プロファイルの [リージョン] を選択します。
[認証プロファイル] ダイアログが表示されます。
(アクション メニュー)をクリックし、[編集] をクリックします。- 詳細を編集し、[保存] をクリックします。
[Authentication Profiles] ページが表示されます。
認証プロファイルを削除する
認証プロファイルを削除するには、次の手順を実行します。
- Google Cloud コンソールで [Application Integration] ページに移動します。
- ナビゲーション メニューで [Auth プロファイル] をクリックします。
- [Authentication Profiles] ページのプルダウン メニューを使用して、認証プロファイルの [リージョン] を選択します。
- [削除] をクリックします。
[Authentication Profiles] ページが表示されます。
認証の種類
統合タスクを完了するために必要な認証タイプは、認可サーバーで構成された認証によって異なります。認可サーバーには、スタンドアロン サーバー、または呼び出し元クライアントに認証情報を発行する API を使用できます。Application Integration では、次の認証タイプがサポートされています。
- 認証トークン
- Google OIDC ID トークン
- JSON Web Token(JWT)
- OAuth 2.0 認証コード
- OAuth 2.0 クライアント認証情報
- OAuth 2.0 のリソース オーナー パスワード認証情報
- SSL/TLS クライアント証明書のみ
- サービス アカウント
以降のセクションでは、認証タイプの構成プロパティについて説明します。
認証トークン
認証トークンでは、トークン(認証情報)が使用されます。認証情報は、Authorization: TYPE CREDENTIALS
形式の HTTP Authorization
リクエスト ヘッダーでサーバーに送信されます。この認証タイプを構成するには、次のプロパティを設定します。- タイプ: 認証タイプ(
Basic
、Bearer
、MAC
など)。 - トークン: 認証タイプの認証情報。
認証サーバーで SSL/TLS 証明書が必要な場合は、証明書と秘密鍵をアップロードします。
この認証タイプをサポートするタスクを確認するには、タスクと認証タイプの互換性をご覧ください。Google OIDC ID トークン
Google OIDC ID トークン認証タイプでは、認証に JSON ウェブトークン(JWT)が使用されます。Google OpenID Connect(OIDC)プロバイダ accounts.google.com が、サービス アカウントを使用して認証を行うために、署名してこれらの JWT を発行します。この認証タイプを構成するには、次のプロパティを設定します。- サービス アカウント: API にアクセスするための権限を持つ Google Cloud プロジェクトのサービス アカウント(プリンシパル)。
- 対象: OIDC トークンのオーディエンス(JWT が対象とする受信者を識別します)。たとえば、トリガー URL は、Cloud Function タスクのオーディエンスです。
JSON Web Token(JWT)
JWT 認証タイプでは、認証に JSON ウェブトークン(JWT)が使用されます。JWT の詳細については、RFC7519 をご覧ください。この認証タイプを構成するには、次のプロパティを設定します。- JWT ヘッダー: 署名を生成するアルゴリズム。
注: HS256 アルゴリズムのみを指定できます。
- JWT ペイロード: 一連のクレーム。登録済みクレーム、一般公開クレーム、カスタム クレームを使用できます。
- Secret: クライアントと認証サーバー間の共有キー。
認証サーバーで SSL 証明書が必要な場合は、ファイル選択ツールを使用して証明書と秘密鍵をアップロードします。秘密鍵のパスフレーズを入力します。
この認証タイプをサポートするタスクを確認するには、タスクと認証タイプの互換性をご覧ください。OAuth 2.0 認証コード
OAuth 2.0 認証コードの認証タイプでは、認証に OAuth 2.0
認可トークンを使用します。この認証タイプを構成するには、次のプロパティを設定します。
- AUTHENTERATION ENDPOINT: アプリケーションの認証エンドポイントに対するエンドポイント。アプリケーションのアクセス権限を確認するため、この URL にリダイレクトされます。トークンは、アクセス権が付与された後にのみ生成されます。
- トークン エンドポイント: アクセス トークンを付与または更新するエンドポイント URL。
- クライアント ID: 認証サーバーによって登録されたクライアントに提供される一意の文字列。クライアント ID はシークレットではなく、リソース オーナーに公開されます。この項目をクライアント シークレットとともに使用します。
- シークレット: クライアント(統合)と認証サーバー間の共有シークレット キー。
- スコープ: アクセス トークンのスコープ。スコープを使用すると、ユーザーのアクセス権限を指定できます。スペース 1 つ(「 」)で区切られた複数のスコープを指定できます。詳細については、Google API の OAuth 2.0 スコープをご覧ください。
認証サーバーで SSL 証明書が必要な場合は、ファイル選択ツールを使用して証明書と秘密鍵をアップロードします。必要に応じて、表示される項目に秘密鍵パスフレーズを入力します。
この認証タイプをサポートするタスクを確認するには、タスクと認証タイプの互換性をご覧ください。OAuth 2.0 クライアント認証情報
OAuth 2.0 クライアント認証情報の認証タイプでは、認証に OAuth 2.0
認証トークンを使用します。この認証では、まずクライアント認証情報を使用してアクセス トークンをリクエストしてから、トークンを使用して保護されたリソースにアクセスします。この認証タイプを構成するには、次のプロパティを設定します。
- トークン エンドポイント: アクセス トークンを付与または更新するエンドポイント URL。
- クライアント ID: 認証サーバーによって登録されたクライアントに提供される一意の文字列。クライアント ID はシークレットではなく、リソース オーナーに公開されます。この項目をクライアント シークレットとともに使用します。
- シークレット: クライアント(統合)と認証サーバー間の共有シークレット キー。
- スコープ: アクセス トークンのスコープ。スコープを使用すると、ユーザーのアクセス権限を指定できます。スペース 1 つ(「 」)で区切られた複数のスコープを指定できます。詳細については、Google API の OAuth 2.0 スコープをご覧ください。
- リクエスト タイプ: アクセス トークンを取得するためにリクエスト パラメータを認証サーバーに送信するメカニズム。次のいずれかのリクエスト タイプを指定できます。
- エンコーダ ヘッダー:
CLIENT ID
とCLIENT SECRET
をBase64
形式でエンコードし、エンコードされた文字列を HTTP 認証ヘッダーで送信します。残りのリクエスト パラメータは、HTTP リクエストの本文で送信されます。 - クエリ パラメータ: クエリ文字列でリクエスト パラメータを送信します。
- リクエスト本文: HTTP リクエストの
entity-body
でapplication/x-www-form-urlencoded
コンテンツ タイプとUTF-8
文字セットを使用して、リクエスト パラメータを送信します。 - 不明
- エンコーダ ヘッダー:
- トークン パラメータ: トークンの取得に必要なリクエスト パラメータ。Key-Value 形式の値を指定します。
Key
はパラメータ名、Value
は対応するパラメータ値です。
認証サーバーで SSL 証明書が必要な場合は、ファイル選択ツールを使用して証明書と秘密鍵をアップロードします。必要に応じて、表示される項目に秘密鍵パスフレーズを入力します。
この認証タイプをサポートするタスクを確認するには、タスクと認証タイプの互換性をご覧ください。OAuth 2.0 のリソース オーナー パスワード認証情報
OAuth 2.0 リソース オーナー パスワード認証情報。認証タイプでは、認証に OAuth 2.0
認可トークンを使用します。この認証では、まずリソース オーナーの認証情報(ユーザー名とパスワード)を使用してアクセス トークンをリクエストしてから、トークンを使用して保護されたリソースにアクセスします。この認証タイプを構成するには、接続するインスタンス タイプに基づいて次のプロパティを設定します。
- トークン エンドポイント: アクセス トークンを付与または更新するエンドポイント URL。
- クライアント ID: 認証サーバーによって登録されたクライアントに提供される一意の文字列。クライアント ID はシークレットではなく、リソース オーナーに公開されます。この項目をクライアント シークレットとともに使用します。
- シークレット: クライアント(統合)と認証サーバー間の共有シークレット キー。
- スコープ: アクセス トークンのスコープ。スコープを使用すると、ユーザーのアクセス権限を指定できます。スペース 1 つ(「 」)で区切られた複数のスコープを指定できます。詳細については、Google API の OAuth 2.0 スコープをご覧ください。
- ユーザー名: リソース所有者のユーザー名。
- パスワード: ユーザーのパスワード。
- リクエスト タイプ: アクセス トークンを取得するためにリクエスト パラメータを認証サーバーに送信するメカニズム。次のいずれかのリクエスト タイプを指定できます。
- エンコーダ ヘッダー:
CLIENT ID
とCLIENT SECRET
をBase64
形式でエンコードし、エンコードされた文字列を HTTP 認証ヘッダーで送信します。HTTP リクエストの本文で残りのリクエスト パラメータを送信します。 - クエリ パラメータ: クエリ文字列でリクエスト パラメータを送信します。
- リクエスト本文: HTTP リクエストの
entity-body
でapplication/x-www-form-urlencoded
コンテンツ タイプとUTF-8
文字セットを使用して、リクエスト パラメータを送信します。
- エンコーダ ヘッダー:
- トークン パラメータ: トークンの取得に必要なリクエスト パラメータ。Key-Value 形式の値を指定します。
Key
はパラメータ名、Value
は対応するパラメータ値です。
認証サーバーで SSL 証明書が必要な場合は、ファイル選択ツールを使用して証明書と秘密鍵をアップロードします。必要に応じて、表示される項目に秘密鍵パスフレーズを入力します。
この認証タイプをサポートするタスクを確認するには、タスクと認証タイプの互換性をご覧ください。SSL/TLS クライアント証明書のみ
[SSL/TLS クライアント証明書のみ] 認証タイプでは、SSL/TLS 証明書のみが認証に使用されます。必要な証明書と秘密鍵をアップロードします。この認証タイプを構成するには、次のファイルをアップロードします。- SSL 証明書: PEM 形式でエンコードされた証明書。
- 秘密鍵: PEM 形式でエンコードされた証明書の秘密鍵ファイル。
秘密鍵に
passphrase
が必要な場合は、秘密鍵のパスフレーズを入力します。
サービス アカウント
サービス アカウント認証タイプでは、認証に Google Cloud プロジェクトのサービス アカウントの認証情報を使用します。この認証タイプを構成するには、次のプロパティを設定します。
- サービス アカウント: API にアクセスする権限を持つ Google Cloud プロジェクトのサービス アカウント(プリンシパル)。
- スコープ: ユーザーに付与されるアクセス権限のスコープ。スペース 1 つ(「 」)で区切られた複数のスコープを指定できます。詳細については、Google API の OAuth 2.0 スコープをご覧ください。
サービス アカウントの作成と管理に関するベスト プラクティスについては、サービス アカウントを使用する際のベスト プラクティスのドキュメントをご覧ください。
認証サーバーで SSL 証明書が必要な場合は、ファイル選択ツールを使用して証明書と秘密鍵をアップロードします。必要に応じて、表示される項目に秘密鍵パスフレーズを入力します。
この認証タイプをサポートするタスクを確認するには、タスクと認証タイプの互換性をご覧ください。タスクと認証タイプの互換性
次の表に、認証タイプに対応する互換性のあるタスクを示します。この情報を使用して、タスクに使用する認証タイプを決定できます。
Authentication type | 互換性のあるタスクとトリガー |
---|---|
認証トークン | |
Google OIDC ID トークン | |
JSON Web Token(JWT) | |
OAuth 2.0 認証コード | |
OAuth 2.0 クライアント認証情報 | |
OAuth 2.0 のリソース オーナー パスワード認証情報 | |
SSL/TLS クライアント証明書のみ | |
サービス アカウント |
AuthenticationRule
統合に OAuth 2.0 プロファイルとユーザー管理のサービス アカウントの両方が構成されている場合は、デフォルトで OAuth 2.0 プロファイルが認証に使用されます。OAuth 2.0 プロファイルとユーザー管理のサービス アカウントのどちらも構成されていない場合は、デフォルトのサービス アカウント(service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com
)が使用されます。タスクがデフォルトのサービス アカウントを使用しない場合、実行は失敗します。