REST Resource: projects.tenants

Risorsa: Tenant

Un tenant contiene la configurazione del tenant in un progetto multi-tenant.

Rappresentazione 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)
  }
}
Campi
name

string

Solo output. Nome della risorsa di un tenant. Ad esempio: "projects/{project-id}/tenants/{tenant-id}"

displayName

string

Nome visualizzato del tenant.

allowPasswordSignup

boolean

Indica se consentire l'autenticazione utente tramite email/password.

disableAuth

boolean

Indica se l'autenticazione è disabilitata per il tenant. Se il valore è true, gli utenti del tenant disattivato non sono autorizzati ad accedere. Gli amministratori dell'organizzazione disattivata non sono in grado di gestire i relativi utenti.

hashConfig

object (HashConfig)

Solo output. Hash delle informazioni di configurazione di un tenant per la visualizzazione su Pantheon. Per evitare che le informazioni sensibili vengano divulgate accidentalmente, possono essere visualizzate solo su Pantheon. Viene restituito solo nella risposta di tenants.get per limitare la lettura di queste informazioni. Per restituire questo campo è richiesta l'autorizzazione firebaseauth.configs.getHashConfig nel progetto dell'agente.

enableAnonymousUser

boolean

Indica se attivare l'autenticazione utente anonima.

mfaConfig

object (MultiFactorAuthConfig)

La configurazione a livello di tenant delle opzioni di autenticazione a due fattori.

testPhoneNumbers

map (key: string, value: string)

Una mappa di coppie <numero di telefono di test, codice falso> che possono essere utilizzate per l'MFA. Il numero di telefono deve essere in formato E.164 (https://www.itu.int/rec/T-REC-E.164/) e può essere aggiunto un massimo di 10 coppie (verrà generato un errore una volta superato questo limite).

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

inheritance

object (Inheritance)

Specifica le impostazioni che il tenant potrebbe ereditare.

recaptchaConfig

object (RecaptchaConfig)

La configurazione di reCAPTCHA a livello di tenant.

smsRegionConfig

object (SmsRegionConfig)

Configura le regioni abilitate per l'invio del codice di verifica via SMS.

autodeleteAnonymousUsers

boolean

Indica se gli utenti anonimi verranno eliminati automaticamente dopo un periodo di 30 giorni.

monitoring

object (MonitoringConfig)

Configurazione relativa al monitoraggio dell'attività del progetto.

passwordPolicyConfig

object (PasswordPolicyConfig)

La configurazione del criterio per le password a livello di tenant

emailPrivacyConfig

object (EmailPrivacyConfig)

Configurazione delle impostazioni relative alla privacy dell'email e alla visibilità pubblica.

client

object (ClientPermissionConfig)

Opzioni relative alla configurazione dei client che inviano richieste per conto di un progetto.

HashConfig

Informazioni sulla cronologia dell'algoritmo di hashing e della chiave. Le password di account diversi potrebbero essere generate da versioni diverse.

Rappresentazione JSON
{
  "algorithm": enum (HashAlgorithm),
  "signerKey": string,
  "saltSeparator": string,
  "rounds": integer,
  "memoryCost": integer
}
Campi
algorithm

enum (HashAlgorithm)

Solo output. Diversi algoritmi di hash per password utilizzati in Identity Toolkit.

signerKey

string

Solo output. Chiave del firmatario in base64.

saltSeparator

string

Solo output. Carattere non stampabile da inserire tra il sale e la password in testo normale in base64.

rounds

integer

Solo output. Il numero di round per il calcolo dell'hash. Utilizzato da scrypt e da altri algoritmi di derivazione della password simili.

memoryCost

integer

Solo output. Costo della memoria per il calcolo dell'hash. Utilizzato da scrypt e da altri algoritmi di derivazione della password simili. Per una spiegazione del campo, visita la pagina https://tools.ietf.org/html/rfc7914.

HashAlgorithm

Diversi algoritmi di hash per password utilizzati in Identity Toolkit.

Enum
HASH_ALGORITHM_UNSPECIFIED Valore predefinito. Non utilizzare.
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

Opzioni relative all'autenticazione a più fattori per il progetto.

Rappresentazione JSON
{
  "state": enum (State),
  "enabledProviders": [
    enum (Provider)
  ],
  "providerConfigs": [
    {
      object (ProviderConfig)
    }
  ]
}
Campi
state

enum (State)

Indica se l'autenticazione a più fattori è stata attivata per questo progetto.

enabledProviders[]

enum (Provider)

Un elenco di secondi fattori utilizzabili per questo progetto.

providerConfigs[]

object (ProviderConfig)

Un elenco di secondi fattori utilizzabili per questo progetto, oltre alle relative configurazioni. Questo campo non supporta l'autenticazione a due fattori basata su telefono, per cui utilizza il campo "enabledProviders".

Stato

Indica se l'autenticazione a più fattori è stata attivata per questo progetto.

Enum
STATE_UNSPECIFIED Stato illegale, non deve essere utilizzato.
DISABLED L'autenticazione a più fattori non può essere utilizzata per questo progetto
ENABLED Per questo progetto è possibile utilizzare l'autenticazione a più fattori
MANDATORY Per questo progetto è necessaria l'autenticazione a più fattori. Gli utenti di questo progetto devono autenticarsi con il secondo fattore.

Provider

Un elenco di secondi fattori utilizzabili per questo progetto.

Enum
PROVIDER_UNSPECIFIED Fornitore illegale, non deve essere utilizzato
PHONE_SMS L'SMS è abilitato come secondo fattore per questo progetto.

ProviderConfig

ProviderConfig descrive i provider MFA supportati e le relative configurazioni.

Rappresentazione 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.
}
Campi
state

enum (MfaState)

Descrive lo stato del tipo di autenticazione a più fattori.

Campo unione mfa_provider_config.

mfa_provider_config può essere solo uno dei seguenti:

totpProviderConfig

object (TotpMfaProviderConfig)

Configurazione del provider MFA TOTP per questo progetto.

TotpMfaProviderConfig

TotpMFAProviderConfig rappresenta il provider MFA basato su TOTP.

Rappresentazione JSON
{
  "adjacentIntervals": integer
}
Campi
adjacentIntervals

integer

Il numero consentito di intervalli adiacenti che verranno utilizzati per la verifica per evitare uno sfasamento dell'orologio.

MfaState

Indica se l'autenticazione a più fattori è stata attivata per questo progetto.

Enum
MFA_STATE_UNSPECIFIED Stato illegale, non deve essere utilizzato.
DISABLED L'autenticazione a più fattori non può essere utilizzata per questo progetto.
ENABLED Per questo progetto è possibile utilizzare l'autenticazione a più fattori.
MANDATORY Per questo progetto è richiesta l'autenticazione a più fattori. Gli utenti di questo progetto devono autenticarsi con il secondo fattore.

Ereditarietà

Impostazioni che i tenant erediteranno a livello di progetto.

Rappresentazione JSON
{
  "emailSendingConfig": boolean
}
Campi
emailSendingConfig

boolean

Indica se consentire all'utente di ereditare domini personalizzati, modelli email e impostazioni SMTP personalizzate. Se è true, le email inviate dall'utente seguiranno le configurazioni di invio delle email a livello di progetto. Se è false (per impostazione predefinita), le email verranno inviate con le impostazioni predefinite senza personalizzazioni.

RecaptchaConfig

La configurazione dell'integrazione di reCAPTCHA Enterprise.

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

object (RecaptchaManagedRule)

Le regole gestite per l'azione di autenticazione in base ai punteggi reCAPTCHA. Le regole vengono condivise tra i provider per un determinato progetto tenant.

recaptchaKeys[]

object (RecaptchaKey)

Le chiavi reCAPTCHA.

tollFraudManagedRules[]

object (RecaptchaTollFraudManagedRule)

Le regole gestite per l'azione di autenticazione in base ai punteggi di rischio di frode tariffaria di reCAPTCHA. Le regole gestite per la frode stradale vengono applicate solo quando il valore di phoneEnforcementState è AUDIT o ENFORCE e useSmsTollFraudProtection è true.

emailPasswordEnforcementState

enum (RecaptchaProviderEnforcementState)

La configurazione di reCAPTCHA per il provider email/password, contenente lo stato di applicazione. Il provider di email/password contiene tutti i flussi utente relativi all'email protetti da reCAPTCHA.

useAccountDefender

boolean

Indica se utilizzare l'account defender per la valutazione reCAPTCHA. Il valore predefinito è false.

phoneEnforcementState

enum (RecaptchaProviderEnforcementState)

La configurazione di reCAPTCHA per il provider di telefonia, contenente lo stato dell'applicazione. Il fornitore di telefonia contiene tutti i flussi utente relativi agli SMS protetti da reCAPTCHA.

useSmsBotScore

boolean

Indica se utilizzare il punteggio del bot rCE per il fornitore di telefonia reCAPTCHA. Può essere true solo se lo stato di applicazione dello smartphone è AUDIT o ENFORCE.

useSmsTollFraudProtection

boolean

Indica se utilizzare il punteggio di rischio della protezione antifrode tariffaria SMS di reCAPTCHA per il fornitore di telefoni di reCAPTCHA. Può essere true solo se lo stato di applicazione del telefono è AUDIT o ENFORCE.

RecaptchaProviderEnforcementState

Stati di applicazione per la protezione reCAPTCHA.

Enum
RECAPTCHA_PROVIDER_ENFORCEMENT_STATE_UNSPECIFIED Lo stato dell'applicazione forzata non è stato impostato.
OFF Non applicato.
AUDIT La valutazione reCAPTCHA viene creata, ma il risultato non viene utilizzato per l'applicazione.
ENFORCE Viene creata la valutazione reCAPTCHA e il risultato viene utilizzato per l'applicazione.

RecaptchaManagedRule

La configurazione di una regola gestita da reCAPTCHA. Modella un singolo intervallo [startScore, endScore]. Il valore startScore è implicito. È il punteggio finale più piccolo più vicino (se disponibile) o 0. Intervalli nell'intervallo aggregato [0, 1] senza sovrapposizioni.

Rappresentazione JSON
{
  "endScore": number,
  "action": enum (RecaptchaAction)
}
Campi
endScore

number

Il punteggio finale (incluso) dell'intervallo di punteggi per un'azione. Deve essere un valore compreso tra 0,0 e 1,0, con 11 valori discreti; ad esempio 0, 0,1, 0,2, ... 0,9, 1,0. Un punteggio pari a 0,0 indica la richiesta più rischiosa (probabilmente un bot), mentre 1,0 indica la richiesta più sicura (probabilmente un utente). Consulta la pagina https://cloud.google.com/recaptcha-enterprise/docs/interpret-assessment.

action

enum (RecaptchaAction)

L'azione intrapresa se il punteggio reCAPTCHA di una richiesta rientra nell'intervallo [startScore, endScore].

RecaptchaAction

Le azioni per le richieste protette da reCAPTCHA.

Enum
RECAPTCHA_ACTION_UNSPECIFIED L'azione reCAPTCHA non è specificata.
BLOCK La richiesta protetta da reCAPTCHA verrà bloccata.

RecaptchaKey

La configurazione della chiave reCAPTCHA. reCAPTCHA Enterprise offre chiavi diverse per piattaforme client diverse.

Rappresentazione JSON
{
  "key": string,
  "type": enum (RecaptchaKeyClientType)
}
Campi
key

string

Il nome della risorsa della chiave reCAPTCHA Enterprise, ad esempio "projects/{project}/keys/{key}"

type

enum (RecaptchaKeyClientType)

Il tipo di piattaforma del client.

RecaptchaKeyClientType

I diversi client supportati dalle chiavi reCAPTCHA Enterprise.

Enum
CLIENT_TYPE_UNSPECIFIED Il tipo di client non è specificato.
WEB Il tipo di client è web.
IOS Il tipo di client è iOS.
ANDROID Il tipo di client è Android.

RecaptchaTollFraudManagedRule

La configurazione di una regola gestita per la valutazione della frode tariffaria di reCAPTCHA. Modella un singolo intervallo [startScore, endScore]. Il valore endScore è implicito. È il punteggio finale più piccolo più vicino (se disponibile) o 0. Intervalli nell'intervallo aggregato [0, 1] senza sovrapposizioni.

Rappresentazione JSON
{
  "startScore": number,
  "action": enum (RecaptchaAction)
}
Campi
startScore

number

Il punteggio iniziale (incluso) per un'azione. Deve essere un valore compreso tra 0,0 e 1,0, con 11 valori discreti; ad esempio 0, 0,1, 0,2, ... 0,9, 1,0. Un punteggio pari a 0,0 indica la richiesta più sicura (probabilmente legittima), mentre 1,0 indica la richiesta più rischiosa (probabile frode tariffaria). Consulta la pagina https://cloud.google.com/recaptcha-enterprise/docs/sms-fraud-detection#create-assessment-sms.

action

enum (RecaptchaAction)

L'azione intrapresa se il punteggio reCAPTCHA di una richiesta rientra nell'intervallo [startScore, endScore].

RecaptchaAction

Il valore predefinito è RECAPTCHA_ACTION_UNSPECIFIED

Enum
RECAPTCHA_ACTION_UNSPECIFIED L'azione reCAPTCHA non è specificata.
BLOCK La richiesta protetta da reCAPTCHA verrà bloccata.

SmsRegionConfig

Configura le regioni in cui gli utenti sono autorizzati a inviare SMS di verifica per il progetto o il tenant. Questo valore si basa sul codice di chiamata del numero di telefono di destinazione.

Rappresentazione 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.
}
Campi
Campo unione sms_region_policy. Un criterio per i paesi in cui gli utenti sono autorizzati a inviare SMS di verifica. Ad esempio, puoi consentire tutte le regioni per impostazione predefinita o solo le regioni tramite una lista consentita esplicita. sms_region_policy può essere solo uno dei seguenti:
allowByDefault

object (AllowByDefault)

Un criterio che consente gli SMS in ogni regione per impostazione predefinita e aggiunge le regioni non consentite a una lista di non consentiti.

allowlistOnly

object (AllowlistOnly)

Un criterio che consente solo le regioni aggiungendole esplicitamente a una lista consentita.

AllowByDefault

Definisce un criterio che consente tutte le regioni per impostazione predefinita e aggiunge le regioni non consentite a una lista non consentita.

Rappresentazione JSON
{
  "disallowedRegions": [
    string
  ]
}
Campi
disallowedRegions[]

string

Codici regione Unicode di due lettere da non consentire, come definito da https://cldr.unicode.org/. L'elenco completo di questi codici regione è disponibile qui: https://github.com/unicode-cldr/cldr-localenames-full/blob/master/main/it/territories.json

AllowlistOnly

Definisce un criterio che consente solo le regioni aggiungendole esplicitamente a una lista consentita.

Rappresentazione JSON
{
  "allowedRegions": [
    string
  ]
}
Campi
allowedRegions[]

string

Codici regione Unicode di due lettere da consentire come definiti da https://cldr.unicode.org/. L'elenco completo di questi codici regione è disponibile qui: https://github.com/unicode-cldr/cldr-localenames-full/blob/master/main/it/territories.json

MonitoringConfig

Configurazione relativa al monitoraggio dell'attività del progetto.

Rappresentazione JSON
{
  "requestLogging": {
    object (RequestLogging)
  }
}
Campi
requestLogging

object (RequestLogging)

Configurazione per il logging delle richieste effettuate a questo progetto in Stackdriver Logging

RequestLogging

Configurazione per il logging delle richieste effettuate a questo progetto in Stackdriver Logging

Rappresentazione JSON
{
  "enabled": boolean
}
Campi
enabled

boolean

Indica se il logging è abilitato o meno per questo progetto.

PasswordPolicyConfig

La configurazione del criterio per le password del progetto.

Rappresentazione JSON
{
  "passwordPolicyEnforcementState": enum (PasswordPolicyEnforcementState),
  "passwordPolicyVersions": [
    {
      object (PasswordPolicyVersion)
    }
  ],
  "forceUpgradeOnSignin": boolean,
  "lastUpdateTime": string
}
Campi
passwordPolicyEnforcementState

enum (PasswordPolicyEnforcementState)

La modalità di applicazione da utilizzare per il criterio relativo alle password.

passwordPolicyVersions[]

object (PasswordPolicyVersion)

Deve essere di 1 carattere. Contiene gli attributi di sicurezza per il criterio relativo alla password.

forceUpgradeOnSignin

boolean

Per accedere, gli utenti devono avere una password conforme ai criteri relativi alle password.

lastUpdateTime

string (Timestamp format)

Solo output. L'ultima volta che le norme relative alle password del progetto sono state aggiornate.

Utilizza RFC 3339, in cui l'output generato sarà sempre normalizzato in base a Z e utilizza 0, 3, 6 o 9 cifre decimali. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

PasswordPolicyEnforcementState

Stato di applicazione per il criterio relativo alle password

Enum
PASSWORD_POLICY_ENFORCEMENT_STATE_UNSPECIFIED Stato illegale, non deve essere utilizzato.
OFF Il criterio per le password non verrà utilizzato nel progetto.
ENFORCE Le password non conformi alle norme relative alle password verranno rifiutate e verrà generato un errore.

PasswordPolicyVersion

Gli attributi di sicurezza per i criteri relativi alla password del progetto.

Rappresentazione JSON
{
  "customStrengthOptions": {
    object (CustomStrengthOptions)
  },
  "schemaVersion": integer
}
Campi
customStrengthOptions

object (CustomStrengthOptions)

Le opzioni di complessità personalizzata applicate dai criteri relativi alle password.

schemaVersion

integer

Solo output. Numero di versione dello schema per il criterio della password

CustomStrengthOptions

Opzioni di sicurezza personalizzate da applicare alle password degli utenti.

Rappresentazione JSON
{
  "minPasswordLength": integer,
  "maxPasswordLength": integer,
  "containsLowercaseCharacter": boolean,
  "containsUppercaseCharacter": boolean,
  "containsNumericCharacter": boolean,
  "containsNonAlphanumericCharacter": boolean
}
Campi
minPasswordLength

integer

Lunghezza minima della password. Intervallo da 6 a 30

maxPasswordLength

integer

Lunghezza massima della password. Nessuna durata massima predefinita

containsLowercaseCharacter

boolean

La password deve contenere un carattere minuscolo.

containsUppercaseCharacter

boolean

La password deve contenere un carattere maiuscolo.

containsNumericCharacter

boolean

La password deve contenere un numero.

containsNonAlphanumericCharacter

boolean

La password deve contenere un carattere non alfanumerico.

EmailPrivacyConfig

Configurazione delle impostazioni relative alla privacy dell'email e alla visibilità pubblica. Le impostazioni in questa configurazione proteggono dall'enumerazione delle email, ma potrebbero comportare alcuni compromessi in termini di facilità d'uso.

Rappresentazione JSON
{
  "enableImprovedEmailPrivacy": boolean
}
Campi
enableImprovedEmailPrivacy

boolean

Esegue la migrazione del progetto a uno stato di privacy delle email migliorata. Ad esempio, alcuni codici di errore sono più generici per evitare di fornire informazioni sull'esistenza dell'account. Inoltre, vengono disattivate alcune funzionalità che, come effetto collaterale, consentono l'enumerazione degli utenti. L'attivazione di questo pulsante di attivazione/disattivazione disattiva la funzionalità fetchSignInMethodsForEmail e modifica l'indirizzo email dell'utente in un indirizzo non verificato. Ti consigliamo di rimuovere la dipendenza da questa funzionalità e di attivare l'opzione per migliorare la privacy degli utenti.

ClientPermissionConfig

Opzioni relative alla configurazione dei client che inviano richieste per conto di un tenant.

Rappresentazione JSON
{
  "permissions": {
    object (ClientPermissions)
  }
}
Campi
permissions

object (ClientPermissions)

Configurazione relativa alla limitazione della capacità di un utente di influire sul proprio account.

ClientPermissions

Configurazione relativa alla limitazione della capacità di un utente di influire sul proprio account.

Rappresentazione JSON
{
  "disabledUserSignup": boolean,
  "disabledUserDeletion": boolean
}
Campi
disabledUserSignup

boolean

Se il valore è true, gli utenti finali non possono creare un nuovo account nel progetto associato tramite nessuno dei nostri metodi API

disabledUserDeletion

boolean

Se il valore è true, gli utenti finali non possono eliminare il proprio account nel progetto associato tramite nessuno dei nostri metodi API

MobileLinksConfig

Link alla configurazione mobile.

Rappresentazione JSON
{
  "domain": enum (Domain)
}
Campi
domain

enum (Domain)

Apri il codice nel dominio dell'app da utilizzare per i link app e i link universali.

Dominio

Possibile codice aperto nel dominio dell'app da utilizzare per i link alle app e i link universali.

Enum
DOMAIN_UNSPECIFIED Valore predefinito. Il dominio predefinito è il dominio Firebase Dynamic Link prima del ritiro di FDL e il dominio di hosting dopo il ritiro di FDL.
HOSTING_DOMAIN Utilizza il dominio di hosting come dominio del link dell'app.

Metodi

create

Crea un tenant.

delete

Eliminare un tenant.

get

Ottieni un tenant.

getIamPolicy

Recupera il criterio di controllo dell'accesso per una risorsa.

list

Elenca gli utenti nel progetto dell'agente specificato.

patch

Aggiorna un tenant.

setIamPolicy

Imposta il criterio di controllo dell'accesso per una risorsa.

testIamPermissions

Restituisce le autorizzazioni del chiamante per una risorsa.