Registrazione dei numeri di telefono di prova

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

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

  • Si integra perfettamente con gli emulatori di iOS e Android.
  • ed elimina l'overhead associato all'invio di un SMS.
  • Puoi eseguire test consecutivi con lo stesso numero di telefono senza subire limitazioni.
  • Puoi scrivere test di integrazione senza essere bloccati 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 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 provider, quindi fai clic sull'icona Modifica. Se stai testando l'autenticazione a più fattori, seleziona la scheda SMS a più fattori, quindi fai clic su Modifica.

  3. In Numeri di telefono per il test, inserisci un numero di telefono e un 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 di sei cifre. Per motivi di sicurezza, scegli numeri difficili da indovinare ed evita schemi ovvi come +1 123-456-7890.

  4. Fai clic su Salva.

I numeri di telefono di test vengono gestiti 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 tramite gli emulatori per iOS e Android. Quando accedi con un numero di telefono di prova, non viene inviato alcun codice di verifica SMS. Inserisci il codice che hai registrato durante la creazione del numero di prova.

Dopo 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 tutti i tuoi servizi.

Per limitare l'accesso agli utenti di test, valuta la possibilità di creare un ruolo di test con autorizzazioni limitate e di assegnarlo utilizzando rivendicazioni personalizzate.

Test di integrazione

Oltre ai test manuali, l'SDK client contiene API che possono aiutare a scrivere test di integrazione. Queste API disattivano i requisiti di reCAPTCHA e verifica app, semplificando l'esclusione 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
    // ...
  });

Gli strumenti di verifica reCAPTCHA visibili e invisibili si comportano in modo diverso quando la verifica app è disattivata:

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

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

I reCAPTCHA fittizi 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.