Authentification OTP par SMS
L’authentification OTP (One-Time Password) est une méthode de sécurité robuste qui permet aux utilisateurs de se connecter en utilisant leur numéro de téléphone. Le système envoie un code unique par SMS que l’utilisateur doit saisir pour confirmer son identité. Cette technique est idéale pour la vérification des numéros de téléphone et l’authentification à deux facteurs (2FA).
Fonctionnalités
- Envoi de codes OTP personnalisables
- Vérification automatique des codes
- Support de différents formats (numérique, alphabétique, alphanumérique)
- Personnalisation des messages
- Gestion des tentatives de vérification
Utilisation
Après avoir initialisé votre bibliothèque, vous pouvez utiliser la propriété otp
pour gérer l’authentification par SMS.
Envoi d’un code OTP
import { sms } from "@/libs/sms";
const sendOtp = async () => {
try {
// Envoi du code OTP au numéro de téléphone
const res = await sms.otp.get({ phoneNumber: "22500000000" });
console.log(res);
} catch (error) {
console.error(error);
}
};
const verifyOtp = async () => {
try {
// Vérification du code OTP avec le numéro, le code et le token
const res = await sms.otp.verify({
phoneNumber: "22500000000",
otp: "1234",
token: "returned_token_from_sendOTP",
});
console.log(res);
} catch (error) {
console.error(error);
}
};
La variable sms
est l’instance initialisée de notre SDK. Elle fournit deux
méthodes principales pour l’authentification OTP : get
pour l’envoi et
verify
pour la vérification.
Documentation de l’API
sms.otp.get
Permet d’envoyer un code d’authentification (OTP) par SMS au numéro de téléphone du destinataire.
Nom | Description | Type | Facultatif | Valeur par défaut |
---|---|---|---|---|
phoneNumber | Numéro de Téléphone du destinataire | Texte | Non | |
length | Longueur du code entre 4 et 8 chiffres | Nombre | Oui | 4 |
mode | Mode d’envoi du code | ”NUMERIC”, “ALPHABET”, “ALPHA_NUMERIC” | Oui | NUMERIC |
senderId | Identifiant de l’expéditeur | Texte | Oui | |
appName | Nom de votre application à écrire dans le SMS | Texte | Oui |
sms.otp.verify
Permet de vérifier un code d’authentification (OTP) envoyé par SMS.
Nom | Description | Type | Facultatif | Valeur par défaut |
---|---|---|---|---|
token | Jeton retourné pour validation | Texte | Non | |
otp | Code de vérification envoyé | Nombre | Non | |
phoneNumber | Numéro de Téléphone du destinataire | Texte | Non |
Bonnes pratiques
- Sécurité : Utilisez des codes d’au moins 6 caractères pour une meilleure sécurité
- Expiration : Les codes OTP expirent après 5 minutes par défaut
- Tentatives : Limitez le nombre de tentatives de vérification
- Messages : Personnalisez les messages pour une meilleure expérience utilisateur
- Gestion des erreurs : Implémentez une gestion appropriée des erreurs
Cas d’utilisation
- Authentification à deux facteurs (2FA)
- Vérification de numéro de téléphone
- Réinitialisation de mot de passe
- Validation de transactions sensibles
- Connexion sécurisée aux applications