REST Resource: projects.tenants

リソース: テナント

Tenant には、マルチテナント プロジェクトのテナントの構成が含まれます。

JSON 表現
{
  "name": string,
  "displayName": string,
  "allowPasswordSignup": boolean,
  "enableEmailLinkSignin": boolean,
  "disableAuth": boolean,
  "hashConfig": {
    object (HashConfig)
  },
  "enableAnonymousUser": boolean,
  "mfaConfig": {
    object (MultiFactorAuthConfig)
  },
  "testPhoneNumbers": {
    string: string,
    ...
  },
  "inheritance": {
    object (Inheritance)
  },
  "recaptchaConfig": {
    object (RecaptchaConfig)
  },
  "smsRegionConfig": {
    object (SmsRegionConfig)
  },
  "autodeleteAnonymousUsers": boolean,
  "monitoring": {
    object (MonitoringConfig)
  },
  "passwordPolicyConfig": {
    object (PasswordPolicyConfig)
  },
  "emailPrivacyConfig": {
    object (EmailPrivacyConfig)
  },
  "client": {
    object (ClientPermissionConfig)
  },
  "mobileLinksConfig": {
    object (MobileLinksConfig)
  }
}
フィールド
name

string

出力専用。テナントのリソース名。例: "projects/{project-id}/tenants/{tenant-id}"

displayName

string

テナントの表示名。

allowPasswordSignup

boolean

メール/パスワードによるユーザー認証を許可するかどうか。

disableAuth

boolean

テナントの認証が無効になっているかどうか。true の場合、無効なテナント内のユーザーはログインできません。無効になったテナントの管理者は、そのテナントのユーザーを管理できません。

hashConfig

object (HashConfig)

出力専用。Pantheon に表示するテナントのハッシュ構成情報。機密情報が誤って漏洩しないように、この情報は Pantheon にのみ表示されます。この情報の読み取りを制限するために、tenants.get レスポンスでのみ返されます。このフィールドを返すには、エージェント プロジェクトに対する firebaseauth.configs.getHashConfig 権限が必要です。

enableAnonymousUser

boolean

匿名ユーザー認証を有効にするかどうか。

mfaConfig

object (MultiFactorAuthConfig)

MFA オプションのテナントレベルの構成。

testPhoneNumbers

map (key: string, value: string)

MFA に使用できる <テスト用の電話番号、偽のコード> ペアのマップ。電話番号は E.164 形式(https://www.itu.int/rec/T-REC-E.164/)で指定する必要があります。追加できるペアは最大 10 個です(上限を超えるとエラーが発生します)。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

inheritance

object (Inheritance)

テナントが継承できる設定を指定します。

recaptchaConfig

object (RecaptchaConfig)

テナントレベルの reCAPTCHA 構成。

smsRegionConfig

object (SmsRegionConfig)

SMS 確認コードの送信が有効なリージョンを設定します。

autodeleteAnonymousUsers

boolean

匿名ユーザーを 30 日後に自動削除するかどうか。

monitoring

object (MonitoringConfig)

プロジェクト アクティビティのモニタリングに関連する構成。

passwordPolicyConfig

object (PasswordPolicyConfig)

テナントレベルのパスワード ポリシー構成

emailPrivacyConfig

object (EmailPrivacyConfig)

メールのプライバシーと公開設定に関連する設定の構成。

client

object (ClientPermissionConfig)

プロジェクトに代わってリクエストを行うクライアントの設定方法に関連するオプション。

HashConfig

ハッシュ アルゴリズムと鍵の履歴情報。アカウントごとに異なるバージョンでパスワードが生成される場合があります。

JSON 表現
{
  "algorithm": enum (HashAlgorithm),
  "signerKey": string,
  "saltSeparator": string,
  "rounds": integer,
  "memoryCost": integer
}
フィールド
algorithm

enum (HashAlgorithm)

出力専用。Identity Toolkit で使用されるさまざまなパスワード ハッシュ アルゴリズム。

signerKey

string

出力専用。署名者の鍵(Base64 形式)。

saltSeparator

string

出力専用。ソルトと平文パスワードの間に挿入される base64 の印刷不可文字。

rounds

integer

出力専用。ハッシュ計算のラウンド数。scrypt などの同様のパスワード派生アルゴリズムで使用されます。

memoryCost

integer

出力専用。ハッシュ計算のメモリコスト。scrypt やその他の同様のパスワード派生アルゴリズムで使用されます。フィールドの説明については、https://tools.ietf.org/html/rfc7914 をご覧ください。

HashAlgorithm

Identity Toolkit で使用されるさまざまなパスワード ハッシュ アルゴリズム。

列挙型
HASH_ALGORITHM_UNSPECIFIED デフォルト値。使用しないでください。
HMAC_SHA256 HMAC_SHA256
HMAC_SHA1 HMAC_SHA1
HMAC_MD5 HMAC_MD5
SCRYPT SCRYPT
PBKDF_SHA1 PBKDF_SHA1
MD5 MD5
HMAC_SHA512 HMAC_SHA512
SHA1 SHA1
BCRYPT BCRYPT
PBKDF2_SHA256 PBKDF2_SHA256
SHA256 SHA256
SHA512 SHA512
STANDARD_SCRYPT STANDARD_SCRYPT

MultiFactorAuthConfig

プロジェクトの多要素認証に関連するオプション。

JSON 表現
{
  "state": enum (State),
  "enabledProviders": [
    enum (Provider)
  ],
  "providerConfigs": [
    {
      object (ProviderConfig)
    }
  ]
}
フィールド
state

enum (State)

このプロジェクトで多要素認証が有効になっているかどうか。

enabledProviders[]

enum (Provider)

このプロジェクトで使用可能な第 2 要素のリスト。

providerConfigs[]

object (ProviderConfig)

このプロジェクトで使用可能な 2 番目の要素のリストとその構成。このフィールドは電話ベースの MFA をサポートしていません。そのためには、enabledProviders フィールドを使用します。

このプロジェクトで多要素認証が有効になっているかどうか。

列挙型
STATE_UNSPECIFIED 不正な状態。使用しないでください。
DISABLED このプロジェクトでは多要素認証を使用できません
ENABLED このプロジェクトで多要素認証を使用できる
MANDATORY このプロジェクトでは多要素認証が必要です。このプロジェクトのユーザーは、2 段階認証プロセスで認証する必要があります。

プロバイダ

このプロジェクトで使用可能な第 2 要素のリスト。

列挙型
PROVIDER_UNSPECIFIED 違法なプロバイダ。使用しないでください
PHONE_SMS このプロジェクトでは SMS が第 2 要素として有効になっています。

ProviderConfig

ProviderConfig には、サポートされている MFA プロバイダとその構成が記述されます。

JSON 表現
{
  "state": enum (MfaState),

  // Union field mfa_provider_config can be only one of the following:
  "totpProviderConfig": {
    object (TotpMfaProviderConfig)
  }
  // End of list of possible types for union field mfa_provider_config.
}
フィールド
state

enum (MfaState)

多要素認証タイプの状態を示します。

共用体フィールド mfa_provider_config

mfa_provider_config は次のいずれかになります。

totpProviderConfig

object (TotpMfaProviderConfig)

このプロジェクトの TOTP MFA プロバイダの構成。

TotpMfaProviderConfig

TotpMFAProviderConfig は、TOTP ベースの MFA プロバイダを表します。

JSON 表現
{
  "adjacentIntervals": integer
}
フィールド
adjacentIntervals

integer

クロック スキューを回避するために検証に使用される隣接する区間の許容数。

MfaState

このプロジェクトで多要素認証が有効になっているかどうか。

列挙型
MFA_STATE_UNSPECIFIED 不正な状態。使用しないでください。
DISABLED このプロジェクトでは多要素認証を使用できません。
ENABLED このプロジェクトでは多要素認証を使用できます。
MANDATORY このプロジェクトでは多要素認証が必要です。このプロジェクトのユーザーは、2 段階認証プロセスで認証する必要があります。

継承

テナントがプロジェクト レベルから継承する設定。

JSON 表現
{
  "emailSendingConfig": boolean
}
フィールド
emailSendingConfig

boolean

テナントがカスタム ドメイン、メール テンプレート、カスタム SMTP 設定を継承できるようにするかどうか。true の場合、テナントから送信されるメールは、プロジェクト レベルのメール送信構成に従います。false(デフォルト)の場合、メールはカスタマイズなしでデフォルト設定で送信されます。

RecaptchaConfig

reCAPTCHA Enterprise 統合構成。

JSON 表現
{
  "managedRules": [
    {
      object (RecaptchaManagedRule)
    }
  ],
  "recaptchaKeys": [
    {
      object (RecaptchaKey)
    }
  ],
  "tollFraudManagedRules": [
    {
      object (RecaptchaTollFraudManagedRule)
    }
  ],
  "emailPasswordEnforcementState": enum (RecaptchaProviderEnforcementState),
  "useAccountDefender": boolean,
  "phoneEnforcementState": enum (RecaptchaProviderEnforcementState),
  "useSmsBotScore": boolean,
  "useSmsTollFraudProtection": boolean
}
フィールド
managedRules[]

object (RecaptchaManagedRule)

reCAPTCHA スコアに基づく認証アクションの管理対象ルール。ルールは、特定のテナント プロジェクトのプロバイダ間で共有されます。

recaptchaKeys[]

object (RecaptchaKey)

reCAPTCHA キー。

tollFraudManagedRules[]

object (RecaptchaTollFraudManagedRule)

reCAPTCHA 通行料不正リスクスコアに基づく認証アクションのマネージド ルール。通行料詐欺の管理対象ルールは、phoneEnforcementState が AUDIT または ENFORCE で、useSmsTollFraudProtection が true の場合にのみ有効になります。

emailPasswordEnforcementState

enum (RecaptchaProviderEnforcementState)

メール/パスワード プロバイダの reCAPTCHA 構成。適用ステータスが含まれます。メール/パスワード プロバイダには、reCAPTCHA で保護されたすべてのメール関連のユーザーフローがあります。

useAccountDefender

boolean

reCAPTCHA 評価にアカウント保護機能を使用するかどうか。デフォルトは false です。

phoneEnforcementState

enum (RecaptchaProviderEnforcementState)

電話通信会社の reCAPTCHA 構成。適用ステータスが含まれます。携帯通信会社には、reCAPTCHA によって保護されているすべての SMS 関連のユーザーフローがあります。

useSmsBotScore

boolean

reCAPTCHA 電話プロバイダの rCE bot スコアを使用するかどうか。phoneEnforcementState が AUDIT または ENFORCE の場合にのみ true にできます。

useSmsTollFraudProtection

boolean

reCAPTCHA の電話プロバイダに rCE SMS 通信不正利用防止リスクスコアを使用するかどうか。phoneEnforcementState が AUDIT または ENFORCE の場合にのみ true にできます。

RecaptchaProviderEnforcementState

reCAPTCHA 保護の適用状態。

列挙型
RECAPTCHA_PROVIDER_ENFORCEMENT_STATE_UNSPECIFIED 違反措置のステータスが設定されていません。
OFF 適用なし。
AUDIT reCAPTCHA 評価が作成され、結果が適用に使用されません。
ENFORCE reCAPTCHA 評価が作成され、その結果が適用に使用されます。

RecaptchaManagedRule

reCAPTCHA 管理ルールの構成。単一区間 [startScore、endScore] をモデル化します。startScore は暗黙的です。最も近い小さい endScore(利用可能な場合)または 0 です。集計内の区間は重複することなく [0, 1] にまたがります。

JSON 表現
{
  "endScore": number,
  "action": enum (RecaptchaAction)
}
フィールド
endScore

number

アクションのスコア範囲の終了スコア(指定したスコアを含む)。0.0 ~ 1.0 の値で、11 個の離散値(0、0.1、0.2、0.3、... 0.9、1.0 など)にする必要があります。スコア 0.0 は最もリスクの高いリクエスト(bot の可能性が高い)を示し、スコア 1.0 は最も安全なリクエスト(人間の可能性が高い)を示します。https://cloud.google.com/recaptcha-enterprise/docs/interpret-assessment をご覧ください。

action

enum (RecaptchaAction)

リクエストの reCAPTCHA スコアが [startScore、endScore] の範囲内にある場合に実行されるアクション。

RecaptchaAction

reCAPTCHA で保護されたリクエストのアクション。

列挙型
RECAPTCHA_ACTION_UNSPECIFIED reCAPTCHA のアクションが指定されていません。
BLOCK reCAPTCHA で保護されたリクエストはブロックされます。

RecaptchaKey

reCAPTCHA キーの構成。reCAPTCHA Enterprise には、クライアント プラットフォームごとに異なるキーが用意されています。

JSON 表現
{
  "key": string,
  "type": enum (RecaptchaKeyClientType)
}
フィールド
key

string

reCAPTCHA Enterprise キーのリソース名(例: "projects/{project}/keys/{key}")。

type

enum (RecaptchaKeyClientType)

クライアントのプラットフォーム タイプ。

RecaptchaKeyClientType

reCAPTCHA Enterprise キーがサポートするさまざまなクライアント。

列挙型
CLIENT_TYPE_UNSPECIFIED クライアントの種類が指定されていません。
WEB クライアント タイプはウェブです。
IOS クライアントの種類は iOS です。
ANDROID クライアントの種類は Android です。

RecaptchaTollFraudManagedRule

reCAPTCHA 通話料金不正使用評価マネージド ルールの構成。単一区間 [startScore, endScore] をモデル化します。endScore は暗黙的です。最も近い小さい endScore(利用可能な場合)または 0 です。集計内の区間は重複することなく [0, 1] にまたがります。

JSON 表現
{
  "startScore": number,
  "action": enum (RecaptchaAction)
}
フィールド
startScore

number

アクションの開始スコア(このスコアを含む)。0.0 ~ 1.0 の値で、11 個の離散値(0、0.1、0.2、0.3、... 0.9、1.0 など)にする必要があります。スコア 0.0 は最も安全なリクエスト(正当な可能性が高い)を示し、スコア 1.0 は最も危険なリクエスト(通行料の不正行為の可能性が高い)を示します。https://cloud.google.com/recaptcha-enterprise/docs/sms-fraud-detection#create-assessment-sms をご覧ください。

action

enum (RecaptchaAction)

リクエストの reCAPTCHA スコアが [startScore、endScore] の範囲内にある場合に実行されるアクション。

RecaptchaAction

デフォルトは RECAPTCHA_ACTION_UNSPECIFIED です。

列挙型
RECAPTCHA_ACTION_UNSPECIFIED reCAPTCHA のアクションが指定されていません。
BLOCK reCAPTCHA で保護されたリクエストはブロックされます。

SmsRegionConfig

ユーザーがプロジェクトまたはテナントの確認 SMS を送信できるリージョンを構成します。これは、宛先の電話番号の国際電話番号に基づいています。

JSON 表現
{

  // Union field sms_region_policy can be only one of the following:
  "allowByDefault": {
    object (AllowByDefault)
  },
  "allowlistOnly": {
    object (AllowlistOnly)
  }
  // End of list of possible types for union field sms_region_policy.
}
フィールド
共用体フィールド sms_region_policy。ユーザーが確認 SMS を送信できる国や地域に関するポリシー。デフォルトですべてのリージョンを許可することも、明示的な許可リストでリージョンのみを許可することもできます。sms_region_policy は次のいずれかになります。
allowByDefault

object (AllowByDefault)

デフォルトですべての地域への SMS を許可し、許可されていない地域を拒否リストに追加するポリシー。

allowlistOnly

object (AllowlistOnly)

許可リストに明示的に追加することでリージョンのみを許可するポリシー。

AllowByDefault

デフォルトですべてのリージョンを許可し、許可されていないリージョンを拒否リストに追加するポリシーを定義します。

JSON 表現
{
  "disallowedRegions": [
    string
  ]
}
フィールド
disallowedRegions[]

string

https://cldr.unicode.org/ で定義されている、使用できない 2 文字の Unicode 地域コード。これらの地域コードの一覧は、https://github.com/unicode-cldr/cldr-localenames-full/blob/master/main/en/territories.json をご覧ください。

AllowlistOnly

許可リストにリージョンを明示的に追加して、リージョンのみを許可するポリシーを定義します。

JSON 表現
{
  "allowedRegions": [
    string
  ]
}
フィールド
allowedRegions[]

string

https://cldr.unicode.org/ で定義されている、許可する 2 文字の Unicode 地域コード。これらの地域コードの一覧は、https://github.com/unicode-cldr/cldr-localenames-full/blob/master/main/ja/territories.json で確認できます。

MonitoringConfig

プロジェクト アクティビティのモニタリングに関連する構成。

JSON 表現
{
  "requestLogging": {
    object (RequestLogging)
  }
}
フィールド
requestLogging

object (RequestLogging)

このプロジェクトに対して行われたリクエストを Stackdriver Logging にロギングするための構成

RequestLogging

このプロジェクトに対して行われたリクエストを Stackdriver Logging にロギングするための構成

JSON 表現
{
  "enabled": boolean
}
フィールド
enabled

boolean

このプロジェクトでロギングが有効かどうか。

PasswordPolicyConfig

プロジェクトのパスワード ポリシーの構成。

JSON 表現
{
  "passwordPolicyEnforcementState": enum (PasswordPolicyEnforcementState),
  "passwordPolicyVersions": [
    {
      object (PasswordPolicyVersion)
    }
  ],
  "forceUpgradeOnSignin": boolean,
  "lastUpdateTime": string
}
フィールド
passwordPolicyEnforcementState

enum (PasswordPolicyEnforcementState)

パスワード ポリシーに使用する適用モード。

passwordPolicyVersions[]

object (PasswordPolicyVersion)

長さが 1 である必要があります。パスワード ポリシーの強度属性が含まれています。

forceUpgradeOnSignin

boolean

ログインするには、パスワード ポリシーに準拠したパスワードが必要です。

lastUpdateTime

string (Timestamp format)

出力専用。プロジェクトのパスワード ポリシーが最後に更新された日時。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

PasswordPolicyEnforcementState

パスワード ポリシーの適用状態

列挙型
PASSWORD_POLICY_ENFORCEMENT_STATE_UNSPECIFIED 不正な状態。使用しないでください。
OFF プロジェクトでパスワード ポリシーは使用されません。
ENFORCE パスワード ポリシーに準拠していないパスワードは拒否され、エラーがスローされます。

PasswordPolicyVersion

プロジェクトのパスワード ポリシーの強度属性。

JSON 表現
{
  "customStrengthOptions": {
    object (CustomStrengthOptions)
  },
  "schemaVersion": integer
}
フィールド
customStrengthOptions

object (CustomStrengthOptions)

パスワード ポリシーによって適用されるカスタム強度オプション。

schemaVersion

integer

出力専用。パスワード ポリシーのスキーマ バージョン番号

CustomStrengthOptions

ユーザーのパスワードに適用するカスタム強度オプション。

JSON 表現
{
  "minPasswordLength": integer,
  "maxPasswordLength": integer,
  "containsLowercaseCharacter": boolean,
  "containsUppercaseCharacter": boolean,
  "containsNumericCharacter": boolean,
  "containsNonAlphanumericCharacter": boolean
}
フィールド
minPasswordLength

integer

最小パスワード長。範囲は 6 ~ 30

maxPasswordLength

integer

パスワードの最大文字数。デフォルトの最大長なし

containsLowercaseCharacter

boolean

パスワードには小文字を含める必要があります。

containsUppercaseCharacter

boolean

パスワードには大文字を含める必要があります。

containsNumericCharacter

boolean

パスワードには数字を含める必要があります。

containsNonAlphanumericCharacter

boolean

パスワードには英数字以外の文字を含める必要があります。

EmailPrivacyConfig

メールのプライバシーと公開設定に関連する設定の構成。この構成の設定はメールの列挙を防ぎますが、ユーザー フレンドリーさの点でトレードオフが生じる可能性があります。

JSON 表現
{
  "enableImprovedEmailPrivacy": boolean
}
フィールド
enableImprovedEmailPrivacy

boolean

メールのプライバシーが強化された状態にプロジェクトを移行します。たとえば、アカウントが存在するかどうかの情報が漏洩しないように、特定のエラーコードはより一般的なものです。また、ユーザーの列挙を副作用として許可する特定の機能が無効になります。この切り替えボタンをオンにすると、fetchSignInMethodsForEmail 機能が無効になり、ユーザーのメールアドレスが未確認のメールアドレスに変更されます。この機能に依存しないようにして、この切り替えボタンを有効にすることをおすすめします。これにより、ユーザーのプライバシーを保護できます。

ClientPermissionConfig

テナントに対してリクエストを行うクライアントの構成方法に関するオプション。

JSON 表現
{
  "permissions": {
    object (ClientPermissions)
  }
}
フィールド
permissions

object (ClientPermissions)

ユーザーがアカウントに影響を与える機能を制限する構成。

ClientPermissions

ユーザーがアカウントに影響を与える機能を制限する構成。

JSON 表現
{
  "disabledUserSignup": boolean,
  "disabledUserDeletion": boolean
}
フィールド
disabledUserSignup

boolean

true に設定すると、エンドユーザーは API メソッドを使用して、関連付けられたプロジェクトで新しいアカウントを登録できなくなります。

disabledUserDeletion

boolean

true の場合、エンドユーザーは API メソッドを使用して、関連付けられたプロジェクトのアカウントを削除できません。

MobileLinksConfig

設定のモバイルリンク。

JSON 表現
{
  "domain": enum (Domain)
}
フィールド
domain

enum (Domain)

アプリリンクとユニバーサル リンクに使用するアプリドメインのコードをオープンします。

ドメイン

アプリリンクとユニバーサル リンクに使用できる、アプリドメイン内のオープンコード。

列挙型
DOMAIN_UNSPECIFIED デフォルト値。デフォルト ドメインは、FDL のサポート終了前は Firebase Dynamic Links ドメインで、FDL のサポート終了後はホスティング ドメインです。
HOSTING_DOMAIN ホスティング ドメインをアプリリンク ドメインとして使用します。

メソッド

create

テナントを作成します。

delete

テナントを削除します。

get

テナントを取得します。

getIamPolicy

リソースのアクセス制御ポリシーを取得します。

list

指定されたエージェント プロジェクトの下にあるテナントを一覧表示します。

patch

テナントを更新します。

setIamPolicy

リソースのアクセス制御ポリシーを取得します。

testIamPermissions

リソースに対する呼び出し元の権限を返します。