Come faccio a creare un sistema di autenticazione del numero di telefono per il mio sito web? [chiuso]

-5

Devo davvero impedire agli utenti di creare più account. Quindi stavo pensando di creare un sistema di autenticazione del numero di telefono. Quando un utente si iscrive, un codice a 4 cifre viene inviato al proprio telefono, lo inserisce nel mio sito Web e il suo account viene creato.

È molto difficile im non un esperto con il codice del computer. Se lo è, c'è un modo più semplice per impedire alle persone di creare più account?

    
posta p511 07.07.2015 - 19:29
fonte

2 risposte

1

Per lo meno è possibile generare un codice casuale a 4 cifre (1000-9999) e memorizzarlo in un database, quindi utilizzare i gateway SMS-a-mail per inviare sms al cellulare gratuitamente. La maggior parte dei corrieri supporta questo, tuttavia dovrai chiedere al tuo utente finale quale operatore hanno e dovrai mantenere un database di tutti i domini del gateway del gestore.

Ad esempio, puoi generare il codice usando un gestore di posta all'interno del tuo sito web (in PHP sarebbe mail() )

Invia un'email a phonenumber@carriergatewayurl

Ad esempio, per un client T-Mobile con il numero (322) 999-9999 funzionerebbe:

[email protected]

Ancora una volta, ogni vettore ha un nome di dominio completamente qualificato gateway diverso. Non tutti i corrieri saranno supportati, tuttavia la maggior parte degli interni (USA).

Questo ha tuttavia delle ramificazioni, il numero di telefono "da" sarà randomizzato (molto probabilmente dal tuo operatore) e quindi più messaggi non saranno dallo stesso "contatto" e potrebbero finire in più thread. Inoltre, non sarai in grado di verificare se il messaggio è andato a buon fine o anche se il numero di telefono esiste per questo (a meno che una risposta di posta elettronica come "nessun utente qui qui" venga restituita in un secondo momento). Anche la formattazione del messaggio dovrà essere armata, poiché l'uso sia del "soggetto" che del "corpo" all'interno della tua e-mail in genere non assomiglia ad un normale messaggio di testo, come in una singola fodera quando viene inviato a SMS.

Su questa nota è molto meglio andare con un servizio come Twilio, a buon mercato.

Un'altra alternativa gratuita che ho usato con successo (in passato) è l'invio di SMS tramite google voice tramite richieste POST (PHP curl + google voice mobile site) - vedi PHP API di Google Voice su github - e IMAP utilizzato client per leggere gli SMS "inoltrati da Google Voice a GMail, analizzando le email basate sul modello soggetto / corpo / intestazioni di voce di Google a intervalli regolari in esecuzione su un processo cron per leggere gli SMS in entrata (risposte al servizio sms). Nota, questa è una configurazione piuttosto elaborata e richiede un po 'di tempo per funzionare perfettamente - potrebbe essere meglio sborsare la pasta - inoltre questo è un modo rapido per bandire il tuo account Google Voice e il numero di telefono personalizzato rimosso da te .

Consiglierei Twilio, ma rimarrai sorpreso dal numero di siti Web che eliminano i gateway SMS-Email. Sembra economico, anche se ben fatto. Ma funziona.

    
risposta data 07.07.2015 - 20:45
fonte
0

Esistono diverse aziende che forniscono servizi SMS e (di solito) dispongono di librerie e librerie API decenti per tutti i linguaggi di programmazione più diffusi (che è PHP). Questi siti non sono gratuiti e fanno pagare una piccola somma per ogni testo inviato.

Hanno la possibilità di attivare la "modalità test", in modo da poter sviluppare il tuo sito senza temere che tu invii centinaia di dollari di SMS a persone a caso. Quando hai finito, basta disattivare la modalità test e dovrebbe funzionare a livello globale!

Alcuni esempi sono:

Twilio - documenti API

Plivo - documenti API

Nexmo - Documenti API

Queste API consentono di inviare una semplice richiesta CURL a un endpoint sul proprio server, con la chiave API, il testo e il numero di telefono che si desidera inviare.

Ricorda che gli SMS internazionali potrebbero non essere supportati da tutte le parti o potrebbero costare di più.

Ho usato Twilio da solo, ma ci dovrebbe essere abbastanza documentazione da poter iniziare indipendentemente. Vorrei anche suggerire di navigare sul Web per vedere se è possibile trovare alcuni tutorial sull'implementazione di SMS. Ce ne dovrebbero essere molti.

Una piccola nota tuttavia, che succede se qualcuno ha più phonenumbers? Suggerirei, a meno che non sia fondamentale per la tua applicazione, che non ti preoccupi molto di più utenti sul tuo sito web.

Accadrà, quindi preparati per quello.

buona fortuna!

    
risposta data 08.07.2015 - 13:27
fonte

Leggi altre domande sui tag