Registrazione dei numeri di telefono di prova

Questo documento mostra come registrare numeri di telefono con Identity Platform a scopo di sviluppo. Ciò consente di testare i metodi di autenticazione che prevedono l'invio di un messaggio SMS, come l'accesso con il telefono e l'autenticazione a più fattori.

L'utilizzo di un numero di prova (anziché di un numero reale di tua proprietà) offre numerosi vantaggi:

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

Puoi registrare fino a 10 numeri di telefono per lo sviluppo.

Registrazione di un numero di telefono di test

Per registrare un numero di telefono di prova:

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

  2. Se stai testando l'autenticazione telefonica, individua il fornitore 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 fai clic su Modifica.

  3. In Numeri di telefono per i test, inserisci un numero di telefono e un codice di verifica da registrare.

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

  4. Fai clic su Salva.

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

Test manuali

Puoi iniziare subito a utilizzare i numeri di telefono di test nella tua app, direttamente o utilizzando gli emulatori per iOS e Android. Quando accedi con un numero di telefono di test, non viene inviato alcun codice di verifica SMS; inserisci invece il codice registrato durante la creazione del numero di test.

Dopo l'accesso, viene creato un utente di 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 da parte degli utenti di test, valuta la possibilità di creare un ruolo di test con autorizzazioni limitate e di assegnarlo utilizzando le rivendicazioni personalizzate.

Test di integrazione

Oltre ai test manuali, l'SDK client contiene API che possono aiutare a scrivere i test di integrazione. Queste API disabilitano i requisiti di reCAPTCHA e di verifica app, semplificando la loro 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 visibili e invisibili si comportano in modo diverso quando verifica app è disattivata:

  • reCAPTCHA visibile: per simulare un clic dell'utente, il reCAPTCHA viene risolto automaticamente dopo un breve ritardo.

  • reCAPTCHA invisibile: per simulare verifica app, il reCAPTCHA verrà risolto automaticamente quando verrà richiamato appVerifier.verify().

I simulazione di reCAPTCHA continueranno ad attivare i callback quando vengono risolti o scadono.

Passaggi successivi

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