アクティビティ ロギング

このドキュメントでは、Identity Platform でのアクティビティ ログに Cloud Logging を使用する方法について説明します。

アクティビティ ログを有効にする

デフォルトでは、アクティビティ ログは無効になっています。アクティビティ ログは、Google Cloud コンソールまたは REST API を使用して有効にできます。

コンソール

  1. Google Cloud コンソールで [設定] ページに移動します。
    設定に移動

  2. [ユーザー アクティビティのロギング] で [有効] を選択します。

  3. [保存] をクリックします。

REST

curl -d "{'monitoring':{'requestLogging':{'enabled':true}}}" \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -X PATCH -H 'Content-Type: application/json' \
  https://identitytoolkit.googleapis.com/admin/v2/projects/PROJECT_ID/config?updateMask=monitoring.requestLogging.enabled

PROJECT_ID をプロジェクト ID で置き換えます。

アクティビティ ロギングを有効にすると、料金に影響する可能性があります。詳細については、Google Cloud Observability の料金をご覧ください。

テナント プロジェクトのアクティビティ ロギングの有効化

テナント プロジェクトのアクティビティ ログはデフォルトで無効になっています。REST API を使用してテナント プロジェクトのアクティビティ ロギングを有効にするには、次のコマンドを実行します。

curl -d "{'monitoring':{'requestLogging':{'enabled':true}}}" \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -X PATCH -H 'Content-Type: application/json' \
  https://identitytoolkit.googleapis.com/v2/projects/PROJECT_ID/tenants/TENANT_ID?updateMask=monitoring.requestLogging.enabled

以下を置き換えます。

  • PROJECT_ID: プロジェクト ID。
  • TENANT_ID: テナント ID。

アクティビティ ロギングを有効にすると、料金に影響する可能性があります。詳細については、Google Cloud Observability の料金をご覧ください。

アクティビティ ログの表示

Logging が有効になると、ユーザー リクエストごとにログエントリが生成されます。各ログエントリには次のフィールドが含まれています。

フィールド 説明
logName projects/PROJECT_ID/logs/identitytoolkit.googleapis.com/requests
resource identitytoolkit_project or identitytoolkit_tenant
serviceName identitytoolkit.googleapis.com
protoPayload ログに記録されたリクエストまたはレスポンス。

[ログ エクスプローラ] を使用して、プロジェクトまたはテナントのアクティビティ ログを表示できます。ログを表示するには:

  1. Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。

    [ログ エクスプローラ] ページに移動

  2. [リソース] プルダウンから [Identity Toolkit Project] または [Identity Toolkit Tenant] を選択します。マルチテナンシーを使用している場合は、すべてのテナントを表示したり、特定のテナントだけをフィルタリングしたりできます。

ログに記録されるオペレーション

次の表は、アクティビティ ログを生成できる API オペレーションをまとめたものです。

サービス メソッド
google.cloud.identitytoolkit.v1.AccountManagementService DeleteAccount
GetAccountInfo
GetOobCode
ResetPassword
SetAccountInfo
google.cloud.identitytoolkit.v1.AuthenticationService CreateAuthUri
GetRecaptchaParam
SendVerificationCode
SignInWithCustomToken
SignInWithEmailLink
SignInWithGameCenter
SignInWithIdp
SignInWithPassword
SignInWithPhoneNumber
SignUp
VerifyIosClient
google.cloud.identitytoolkit.v1.ProjectConfigService GetProjectConfig

オペレーションの除外

ロギングには、ログ取り込みを無効にするツールや、不要なログエントリを除外するツールが用意されています。特定のログを除外する方法について詳しくは、ログの除外をご覧ください。

以下に、読み取り専用の GetAccountInfo() メソッドと GetProjectConfig() メソッドのすべてのログを除外する方法を示しています。

resource.type="identitytoolkit_project"
(
 jsonPayload.methodName="google.cloud.identitytoolkit.v1.AccountManagementService.GetAccountInfo"
 OR
 jsonPayload.methodName="google.cloud.identitytoolkit.v1.ProjectConfigService.GetProjectConfig"
)