Registrazione dei numeri di telefono di prova

Questo documento spiega come registrare i numeri di telefono su Identity Platform per scopi di sviluppo. In questo modo puoi testare i metodi di autenticazione che prevedono l'invio di un messaggio SMS, ad esempio l'accesso tramite telefono e l'autenticazione a più fattori.

L'utilizzo di un numero di test (anziché di un numero reale di tua proprietà) presenta diversi vantaggi:

  • Si integra perfettamente con gli emulatori iOS e Android.
  • Elimina l'overhead dell'invio di un SMS effettivo.
  • Puoi eseguire test consecutivi con lo stesso numero di telefono senza essere sottoposto a limitazioni.
  • Puoi scrivere test di integrazione senza essere bloccato dai controlli di sicurezza.
  • Non consuma la quota di utilizzo.

Puoi registrare fino a 10 numeri di telefono per finalità di sviluppo.

Registrazione di un numero di telefono di prova

Per registrare un numero di telefono di prova:

  1. Vai alla pagina Provider di identità nella console Google Cloud.
    Vai alla pagina Provider di identità

  2. Se stai testando l'autenticazione telefonica, individuala nell'elenco dei fornitori, poi fai clic sull'icona Modifica. Se stai testando l'autenticazione a più fattori, seleziona la scheda SMS a più fattori e poi fai clic su Modifica.

  3. In Numeri di telefono per il test, inserisci un numero di telefono e il codice di verifica per registrarti.

    Il numero di telefono deve utilizzare il formato E.164 e non può essere già assegnato a un utente Identity Platform esistente. Il codice di verifica deve essere composto da sei cifre. Per motivi di sicurezza, scegli numeri difficili da indovinare ed evita sequenze evidenti come +1 123-456-7890.

  4. Fai clic su Salva.

I numeri di telefono di prova vengono trattati come numeri di telefono reali da Identity Platform, quindi memorizzali in modo sicuro e ruotali a intervalli regolari.

Test manuale

Puoi iniziare subito a utilizzare i numeri di telefono di prova nella tua app, direttamente o utilizzando gli emulatori iOS e Android. Quando accedi con un numero di telefono di prova, non viene inviato alcun codice di verifica via SMS. Inserisci invece il codice che hai registrato quando hai creato il numero di prova.

Dopo aver eseguito l'accesso, viene creato un utente Identity Platform utilizzando il numero di telefono di test. Questo utente ha lo stesso comportamento e le stesse proprietà di un utente reale, incluso un token ID valido, il che significa che può accedere a tutte le tue app e a tutti i tuoi servizi.

Per limitare l'accesso degli utenti di test, ti consigliamo di creare un ruolo di test con autorizzazioni limitate e di assegnarlo utilizzando claim personalizzati.

Test di integrazione

Oltre ai test manuali, l'SDK client contiene API che possono aiutarti a scrivere test di integrazione. Queste API disattivano i requisiti di verifica reCAPTCHA e dell'app, semplificandone l'aggiramento con l'automazione.

L'esempio seguente mostra come testare l'accesso di un utente con un numero di telefono:

JavaScript

// Turn off phone app verification.
firebase.auth().settings.appVerificationDisabledForTesting = true;

var phoneNumber = "+16505554567";
var testVerificationCode = "123456";

// Render a fake reCAPTCHA and resolve without app verification.
var appVerifier = new firebase.auth.RecaptchaVerifier('recaptcha-container');
// signInWithPhoneNumber will call appVerifier.verify(), which will resolve
// with a fake reCAPTCHA response.
firebase.auth().signInWithPhoneNumber(phoneNumber, appVerifier)
  .then(function (confirmationResult) {
    // confirmationResult can resolve using testVerificationCode.
    return confirmationResult.confirm(testVerificationCode)
  }).catch(function (error) {
    // Error; SMS not sent
    // ...
  });

I verificatori reCAPTCHA simulati visibili e invisibili si comportano in modo diverso quando verifica app è disabilitata:

  • reCAPTCHA visibile:per simulare un clic dell'utente, reCAPTCHA si risolve automaticamente dopo un breve ritardo.

  • reCAPTCHA invisibile: per simulare verifica app, reCAPTCHA si risolverà automaticamente quando viene chiamato appVerifier.verify().

I reCAPTCHA simulati attiveranno comunque i relativi callback quando vengono risolti o scadono.

Passaggi successivi

  • Aggiungi l'autenticazione a più fattori alla tua app web, iOS o Android.