REST Resource: projects.tenants

Ressource: Locataire

Un locataire contient la configuration du locataire dans un projet multi-tenant.

Représentation 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)
  }
}
Champs
name

string

Uniquement en sortie. Nom de ressource d'un locataire. Par exemple: "projects/{project-id}/tenants/{tenant-id}"

displayName

string

Nom à afficher du locataire.

allowPasswordSignup

boolean

Indique si l'authentification des utilisateurs par adresse e-mail/mot de passe est autorisée.

disableAuth

boolean

Indique si l'authentification est désactivée pour le locataire. Si la valeur est "True", les utilisateurs du locataire désactivé ne sont pas autorisés à se connecter. Les administrateurs du locataire désactivé ne peuvent pas gérer ses utilisateurs.

hashConfig

object (HashConfig)

Uniquement en sortie. Informations de configuration du hachage d'un locataire à afficher sur Pantheon. Cette information ne peut être affichée que sur Pantheon pour éviter que des informations sensibles ne soient divulguées accidentellement. Ne renvoyé que dans la réponse tenants.get pour limiter la lecture de ces informations. Pour renvoyer ce champ, vous devez disposer de l'autorisation firebaseauth.configs.getHashConfig sur le projet de l'agent.

enableAnonymousUser

boolean

Indique si l'authentification anonyme des utilisateurs doit être activée.

mfaConfig

object (MultiFactorAuthConfig)

Configuration des options d'authentification multifacteur au niveau du locataire.

testPhoneNumbers

map (key: string, value: string)

Carte des paires <numéro de téléphone de test, faux code> pouvant être utilisées pour l'authentification multifacteur. Le numéro de téléphone doit être au format E.164 (https://www.itu.int/rec/T-REC-E.164/). Vous pouvez ajouter au maximum 10 paires (une erreur sera générée si vous dépassez ce nombre).

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

inheritance

object (Inheritance)

Spécifiez les paramètres que le locataire peut hériter.

recaptchaConfig

object (RecaptchaConfig)

Configuration reCAPTCHA au niveau du locataire.

smsRegionConfig

object (SmsRegionConfig)

Configure les régions pour lesquelles l'envoi du code de validation par SMS est activé.

autodeleteAnonymousUsers

boolean

Indique si les utilisateurs anonymes seront automatiquement supprimés au bout de 30 jours.

monitoring

object (MonitoringConfig)

Configuration liée à la surveillance de l'activité du projet.

passwordPolicyConfig

object (PasswordPolicyConfig)

Configuration des règles de mot de passe au niveau du locataire

emailPrivacyConfig

object (EmailPrivacyConfig)

Configuration des paramètres liés à la confidentialité des e-mails et à la visibilité publique.

client

object (ClientPermissionConfig)

Options concernant la configuration des clients qui envoient des requêtes au nom d'un projet.

HashConfig

Informations sur l'historique de l'algorithme de hachage et de la clé. Les mots de passe de différents comptes peuvent être générés par différentes versions.

Représentation JSON
{
  "algorithm": enum (HashAlgorithm),
  "signerKey": string,
  "saltSeparator": string,
  "rounds": integer,
  "memoryCost": integer
}
Champs
algorithm

enum (HashAlgorithm)

Uniquement en sortie. Différents algorithmes de hachage de mot de passe utilisés dans Identity Toolkit

signerKey

string

Uniquement en sortie. Clé de signature au format base64.

saltSeparator

string

Uniquement en sortie. Caractère non imprimable à insérer entre le sel et le mot de passe en texte brut au format base64.

rounds

integer

Uniquement en sortie. Nombre de tours pour le calcul du hachage. Utilisé par scrypt et d'autres algorithmes de dérivation de mot de passe similaires.

memoryCost

integer

Uniquement en sortie. Coût de la mémoire pour le calcul du hachage. Utilisé par scrypt et d'autres algorithmes de dérivation de mot de passe similaires. Pour en savoir plus sur ce champ, consultez la page https://tools.ietf.org/html/rfc7914.

HashAlgorithm

Différents algorithmes de hachage de mot de passe utilisés dans Identity Toolkit

Enums
HASH_ALGORITHM_UNSPECIFIED Valeur par défaut. Ne l'utilisez pas.
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

Options liées à l'authentification multifacteur pour le projet.

Représentation JSON
{
  "state": enum (State),
  "enabledProviders": [
    enum (Provider)
  ],
  "providerConfigs": [
    {
      object (ProviderConfig)
    }
  ]
}
Champs
state

enum (State)

Indique si l'authentification multifacteur a été activée pour ce projet.

enabledProviders[]

enum (Provider)

Liste des deuxièmes facteurs utilisables pour ce projet.

providerConfigs[]

object (ProviderConfig)

Liste des deuxièmes facteurs utilisables pour ce projet, ainsi que leurs configurations. Ce champ n'est pas compatible avec l'authentification multifacteur par téléphone. Pour cela, utilisez le champ "enabledProviders".

État

Indique si l'authentification multifacteur a été activée pour ce projet.

Enums
STATE_UNSPECIFIED État illégal, ne doit pas être utilisé.
DISABLED L'authentification multifacteur ne peut pas être utilisée pour ce projet
ENABLED L'authentification multifacteur peut être utilisée pour ce projet
MANDATORY L'authentification multifacteur est requise pour ce projet. Les utilisateurs de ce projet doivent s'authentifier avec le second facteur.

Fournisseur

Liste des deuxièmes facteurs utilisables pour ce projet.

Enums
PROVIDER_UNSPECIFIED Fournisseur illégal, ne doit pas être utilisé
PHONE_SMS Le SMS est activé en tant que deuxième facteur pour ce projet.

ProviderConfig

ProviderConfig décrit les fournisseurs d'authentification multifacteur compatibles, ainsi que leurs configurations.

Représentation 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.
}
Champs
state

enum (MfaState)

Décrit l'état du type d'authentification multifacteur.

Champ d'union mfa_provider_config.

mfa_provider_config ne peut être qu'un des éléments suivants :

totpProviderConfig

object (TotpMfaProviderConfig)

Configuration du fournisseur d'authentification multifacteur TOTP pour ce projet.

TotpMfaProviderConfig

TotpMFAProviderConfig représente le fournisseur d'authentification multifacteur basé sur le TOTP.

Représentation JSON
{
  "adjacentIntervals": integer
}
Champs
adjacentIntervals

integer

Nombre d'intervalles adjacents autorisés qui seront utilisés pour la validation afin d'éviter les décalages de l'horloge.

MfaState

Indique si l'authentification multifacteur a été activée pour ce projet.

Enums
MFA_STATE_UNSPECIFIED État illégal, ne doit pas être utilisé.
DISABLED L'authentification multifacteur ne peut pas être utilisée pour ce projet.
ENABLED L'authentification multifacteur peut être utilisée pour ce projet.
MANDATORY L'authentification multifacteur est requise pour ce projet. Les utilisateurs de ce projet doivent s'authentifier avec le second facteur.

Héritage

Paramètres que les locataires hériteront du niveau du projet.

Représentation JSON
{
  "emailSendingConfig": boolean
}
Champs
emailSendingConfig

boolean

Indique si le locataire peut hériter des domaines personnalisés, des modèles d'e-mail et des paramètres SMTP personnalisés. Si la valeur est "true", les e-mails envoyés depuis le locataire suivent les configurations d'envoi d'e-mails au niveau du projet. Si la valeur est "false" (par défaut), les e-mails sont envoyés avec les paramètres par défaut, sans aucune personnalisation.

RecaptchaConfig

Configuration de l'intégration reCAPTCHA Enterprise.

Représentation JSON
{
  "managedRules": [
    {
      object (RecaptchaManagedRule)
    }
  ],
  "recaptchaKeys": [
    {
      object (RecaptchaKey)
    }
  ],
  "tollFraudManagedRules": [
    {
      object (RecaptchaTollFraudManagedRule)
    }
  ],
  "emailPasswordEnforcementState": enum (RecaptchaProviderEnforcementState),
  "useAccountDefender": boolean,
  "phoneEnforcementState": enum (RecaptchaProviderEnforcementState),
  "useSmsBotScore": boolean,
  "useSmsTollFraudProtection": boolean
}
Champs
managedRules[]

object (RecaptchaManagedRule)

Règles gérées pour l'action d'authentification en fonction des scores reCAPTCHA. Les règles sont partagées entre les fournisseurs pour un projet de locataire donné.

recaptchaKeys[]

object (RecaptchaKey)

Les clés reCAPTCHA.

tollFraudManagedRules[]

object (RecaptchaTollFraudManagedRule)

Règles gérées pour l'action d'authentification en fonction des scores de risque de fraude par appel téléphonique reCAPTCHA. Les règles gérées pour la fraude aux péages ne prennent effet que lorsque l'état phoneEnforcementState est AUDIT ou ENFORCE et que useSmsTollFraudProtection est défini sur "true".

emailPasswordEnforcementState

enum (RecaptchaProviderEnforcementState)

Configuration reCAPTCHA pour le fournisseur d'adresses e-mail/de mots de passe, contenant l'état d'application. Le fournisseur d'adresse e-mail/de mot de passe contient tous les flux utilisateur liés à l'adresse e-mail protégés par reCAPTCHA.

useAccountDefender

boolean

Indique si l'outil Account Defender doit être utilisé pour l'évaluation reCAPTCHA. La valeur par défaut est false.

phoneEnforcementState

enum (RecaptchaProviderEnforcementState)

Configuration reCAPTCHA pour le fournisseur de téléphone, contenant l'état d'application forcée. Le fournisseur de téléphonie contient tous les flux utilisateur liés aux SMS protégés par reCAPTCHA.

useSmsBotScore

boolean

Indique si le score du bot rCE doit être utilisé pour le fournisseur de téléphone reCAPTCHA. Ne peut être défini sur "true" que lorsque phoneEnforcementState est défini sur AUDIT ou ENFORCE.

useSmsTollFraudProtection

boolean

Indique si le score de risque de protection contre la fraude à la facturation par l'opérateur via SMS rCE doit être utilisé pour le fournisseur de téléphone reCAPTCHA. Ne peut être défini sur "true" que lorsque phoneEnforcementState est défini sur AUDIT ou ENFORCE.

RecaptchaProviderEnforcementState

États d'application de la protection reCAPTCHA.

Enums
RECAPTCHA_PROVIDER_ENFORCEMENT_STATE_UNSPECIFIED L'état d'application n'a pas été défini.
OFF Non appliquée.
AUDIT Une évaluation reCAPTCHA est créée, mais son résultat n'est pas utilisé pour l'application.
ENFORCE Une évaluation reCAPTCHA est créée, et le résultat est utilisé pour l'application.

RecaptchaManagedRule

Configuration d'une règle gérée par reCAPTCHA. Modélise un seul intervalle [startScore, endScore]. La valeur startScore est implicite. Il s'agit de la valeur de fin la plus proche (si elle est disponible) ou de 0. Les intervalles de la valeur agrégée couvrent la plage [0, 1] sans se chevaucher.

Représentation JSON
{
  "endScore": number,
  "action": enum (RecaptchaAction)
}
Champs
endScore

number

Score de fin (inclus) de la plage de scores d'une action. Doit être une valeur comprise entre 0,0 et 1,0, avec 11 valeurs distinctes (par exemple, 0, 0,1, 0,2, 0,3, etc., 0,9, 1,0). Un score de 0,0 indique la requête la plus risquée (probablement un robot), tandis qu'un score de 1,0 indique la requête la plus sûre (probablement un humain). Consultez https://cloud.google.com/recaptcha-enterprise/docs/interpret-assessment.

action

enum (RecaptchaAction)

Action effectuée si le score reCAPTCHA d'une requête se situe dans l'intervalle [startScore, endScore].

RecaptchaAction

Actions pour les requêtes protégées par reCAPTCHA.

Enums
RECAPTCHA_ACTION_UNSPECIFIED L'action reCAPTCHA n'est pas spécifiée.
BLOCK La requête protégée par reCAPTCHA sera bloquée.

RecaptchaKey

Configuration de la clé reCAPTCHA. reCAPTCHA Enterprise propose différentes clés pour différentes plates-formes clientes.

Représentation JSON
{
  "key": string,
  "type": enum (RecaptchaKeyClientType)
}
Champs
key

string

Nom de la ressource de clé reCAPTCHA Enterprise, par exemple "projects/{project}/keys/{key}"

type

enum (RecaptchaKeyClientType)

Type de plate-forme du client.

RecaptchaKeyClientType

Différents clients compatibles avec les clés reCAPTCHA Enterprise.

Enums
CLIENT_TYPE_UNSPECIFIED Le type de client n'est pas spécifié.
WEB Le type de client est Web.
IOS Le type de client est iOS.
ANDROID Le type de client est Android.

RecaptchaTollFraudManagedRule

Configuration d'une règle gérée d'évaluation de la fraude à la facturation par l'opérateur reCAPTCHA. Modélise un seul intervalle [startScore, endScore]. La valeur "endScore" est implicite. Il s'agit de la valeur de fin la plus proche (si elle est disponible) ou de 0. Les intervalles de la valeur agrégée couvrent la plage [0, 1] sans se chevaucher.

Représentation JSON
{
  "startScore": number,
  "action": enum (RecaptchaAction)
}
Champs
startScore

number

Score de début (inclus) pour une action. Doit être une valeur comprise entre 0,0 et 1,0, avec 11 valeurs distinctes (par exemple, 0, 0,1, 0,2, 0,3, etc., 0,9, 1,0). Un score de 0,0 indique la requête la plus sûre (probablement légitime), tandis qu'un score de 1,0 indique la requête la plus risquée (fraude à la facturation par l'opérateur probable). Consultez https://cloud.google.com/recaptcha-enterprise/docs/sms-fraud-detection#create-assessment-sms.

action

enum (RecaptchaAction)

Action effectuée si le score reCAPTCHA d'une requête se situe dans l'intervalle [startScore, endScore].

RecaptchaAction

La valeur par défaut est RECAPTCHA_ACTION_UNSPECIFIED.

Enums
RECAPTCHA_ACTION_UNSPECIFIED L'action reCAPTCHA n'est pas spécifiée.
BLOCK La requête protégée par reCAPTCHA sera bloquée.

SmsRegionConfig

Configure les régions dans lesquelles les utilisateurs sont autorisés à envoyer des SMS de validation pour le projet ou le locataire. Il est basé sur le code d'appel du numéro de téléphone de destination.

Représentation 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.
}
Champs
Champ d'union sms_region_policy. Règle concernant les pays dans lesquels les utilisateurs sont autorisés à envoyer des SMS de validation. Vous pouvez autoriser toutes les régions par défaut ou n'autoriser les régions que via une liste d'autorisation explicite. sms_region_policy ne peut être qu'un des éléments suivants :
allowByDefault

object (AllowByDefault)

Une règle autorisant les SMS dans toutes les régions par défaut et ajoutant les régions non autorisées à une liste de non-autorisation.

allowlistOnly

object (AllowlistOnly)

Règle qui n'autorise que les régions en les ajoutant explicitement à une liste d'autorisation.

AllowByDefault

Définit une règle autorisant toutes les régions par défaut et ajoutant les régions non autorisées à une liste de non-autorisation.

Représentation JSON
{
  "disallowedRegions": [
    string
  ]
}
Champs
disallowedRegions[]

string

Codes de région Unicode à deux lettres à ne pas autoriser, comme défini sur https://cldr.unicode.org/. La liste complète de ces codes de région est disponible sur https://github.com/unicode-cldr/cldr-localenames-full/blob/master/main/en/territories.json.

AllowlistOnly

Définit une stratégie qui n'autorise que les régions en les ajoutant explicitement à une liste d'autorisation.

Représentation JSON
{
  "allowedRegions": [
    string
  ]
}
Champs
allowedRegions[]

string

Codes régionaux Unicode à deux lettres à autoriser, comme défini sur https://cldr.unicode.org/. La liste complète de ces codes régionaux est disponible sur https://github.com/unicode-cldr/cldr-localenames-full/blob/master/main/en/territories.json.

MonitoringConfig

Configuration liée à la surveillance de l'activité du projet.

Représentation JSON
{
  "requestLogging": {
    object (RequestLogging)
  }
}
Champs
requestLogging

object (RequestLogging)

Configuration pour la journalisation des requêtes envoyées à ce projet dans Stackdriver Logging

Enregistrement des requêtes

Configuration pour la journalisation des requêtes envoyées à ce projet dans Stackdriver Logging

Représentation JSON
{
  "enabled": boolean
}
Champs
enabled

boolean

Indique si la journalisation est activée pour ce projet.

PasswordPolicyConfig

Configuration de la règle de mot de passe du projet.

Représentation JSON
{
  "passwordPolicyEnforcementState": enum (PasswordPolicyEnforcementState),
  "passwordPolicyVersions": [
    {
      object (PasswordPolicyVersion)
    }
  ],
  "forceUpgradeOnSignin": boolean,
  "lastUpdateTime": string
}
Champs
passwordPolicyEnforcementState

enum (PasswordPolicyEnforcementState)

Mode d'application à utiliser pour la stratégie de mot de passe.

passwordPolicyVersions[]

object (PasswordPolicyVersion)

Doit comporter un seul caractère. Contient les attributs de sécurité de la règle de mot de passe.

forceUpgradeOnSignin

boolean

Pour se connecter, les utilisateurs doivent disposer d'un mot de passe conforme à la stratégie de mot de passe.

lastUpdateTime

string (Timestamp format)

Uniquement en sortie. Date de la dernière mise à jour des règles relatives aux mots de passe du projet.

Utilise la norme RFC 3339, où la sortie générée est toujours normalisée avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

PasswordPolicyEnforcementState

État d'application de la règle de mot de passe

Enums
PASSWORD_POLICY_ENFORCEMENT_STATE_UNSPECIFIED État illégal, ne doit pas être utilisé.
OFF La stratégie de mot de passe ne sera pas utilisée pour le projet.
ENFORCE Les mots de passe non conformes aux règles sur les mots de passe seront rejetés et une erreur sera générée.

PasswordPolicyVersion

Attributs de force des règles concernant les mots de passe du projet.

Représentation JSON
{
  "customStrengthOptions": {
    object (CustomStrengthOptions)
  },
  "schemaVersion": integer
}
Champs
customStrengthOptions

object (CustomStrengthOptions)

Options de sécurité personnalisées appliquées par la stratégie de mot de passe.

schemaVersion

integer

Uniquement en sortie. Numéro de version du schéma pour la stratégie de mots de passe

CustomStrengthOptions

Options de sécurité personnalisées à appliquer aux mots de passe des utilisateurs.

Représentation JSON
{
  "minPasswordLength": integer,
  "maxPasswordLength": integer,
  "containsLowercaseCharacter": boolean,
  "containsUppercaseCharacter": boolean,
  "containsNumericCharacter": boolean,
  "containsNonAlphanumericCharacter": boolean
}
Champs
minPasswordLength

integer

Longueur minimale du mot de passe. Valeur comprise entre 6 et 30

maxPasswordLength

integer

Longueur maximale du mot de passe. Aucune durée maximale par défaut

containsLowercaseCharacter

boolean

Le mot de passe doit comporter une minuscule.

containsUppercaseCharacter

boolean

Le mot de passe doit comporter une majuscule.

containsNumericCharacter

boolean

Le mot de passe doit comporter un chiffre.

containsNonAlphanumericCharacter

boolean

Le mot de passe doit comporter un caractère non alphanumérique.

EmailPrivacyConfig

Configuration des paramètres liés à la confidentialité des e-mails et à la visibilité publique. Les paramètres de cette configuration protègent contre l'énumération des adresses e-mail, mais peuvent entraîner des compromis en termes de facilité d'utilisation.

Représentation JSON
{
  "enableImprovedEmailPrivacy": boolean
}
Champs
enableImprovedEmailPrivacy

boolean

Migre le projet vers un état de confidentialité des e-mails améliorée. Par exemple, certains codes d'erreur sont plus génériques pour éviter de divulguer des informations sur l'existence du compte. De plus, cela désactive certaines fonctionnalités qui, en tant qu'effet secondaire, permettent l'énumération des utilisateurs. L'activation de ce bouton désactive la fonctionnalité fetchSignInMethodsForEmail et remplace l'adresse e-mail de l'utilisateur par une adresse non validée. Nous vous recommandons de ne plus dépendre de cette fonctionnalité et d'activer ce bouton pour améliorer la confidentialité des utilisateurs.

ClientPermissionConfig

Options concernant la configuration des clients qui envoient des requêtes au nom d'un locataire.

Représentation JSON
{
  "permissions": {
    object (ClientPermissions)
  }
}
Champs
permissions

object (ClientPermissions)

Configuration liée à la restriction de la capacité d'un utilisateur à modifier son compte.

ClientPermissions

Configuration liée à la restriction de la capacité d'un utilisateur à modifier son compte.

Représentation JSON
{
  "disabledUserSignup": boolean,
  "disabledUserDeletion": boolean
}
Champs
disabledUserSignup

boolean

Si cette valeur est définie sur "true", les utilisateurs finaux ne peuvent pas créer de compte sur le projet associé à l'aide de l'une de nos méthodes d'API.

disabledUserDeletion

boolean

Si cette valeur est définie sur "true", les utilisateurs finaux ne peuvent pas supprimer leur compte du projet associé à l'aide de l'une de nos méthodes d'API.

MobileLinksConfig

Liens de configuration pour mobile.

Représentation JSON
{
  "domain": enum (Domain)
}
Champs
domain

enum (Domain)

Code ouvert dans le domaine de l'application à utiliser pour les liens vers une application et les liens universels.

Domaine

Code ouvert possible dans le domaine de l'application à utiliser pour les liens d'application et les liens universels.

Enums
DOMAIN_UNSPECIFIED Valeur par défaut. Le domaine par défaut est le domaine Firebase Dynamic Links avant l'abandon de FDL et le domaine d'hébergement après l'abandon de FDL.
HOSTING_DOMAIN Utiliser le domaine d'hébergement comme domaine de lien d'application

Méthodes

create

Créez un locataire.

delete

Supprimez un locataire.

get

Obtenez un locataire.

getIamPolicy

Récupère la stratégie de contrôle d'accès d'une ressource.

list

Répertorie les locataires du projet d'agent donné.

patch

Mettez à jour un locataire.

setIamPolicy

Définit la stratégie de contrôle d'accès pour une ressource.

testIamPermissions

Renvoie les autorisations de l'appelant sur une ressource.