Exigences
- iOS 10+ et Swift 4.1 sont requis pour utiliser Guardian.
- Pour utiliser ce SDK, vous devez configurer le service Guardian de votre tenant avec vos propres identifiants de notifications push, sinon vous ne recevrez aucune notification push. Pour en savoir plus, consultez Configurer les notifications push pour la MFA.
Installer le SDK Guardian pour iOS
CocoaPods
Guardian.swift est disponible par l’entremise de CocoaPods. Pour l’installer, ajoutez la ligne suivante à votre Podfile :Carthage
Ajoutez cette ligne à votre Cartfile :Activer les notifications push de Guardian
- Accédez à Dashboard > Sécurité > Multi-factor Auth.
- Activez la bascule Notification push.
- Configurer les notifications push.
Utilisation
Guardian est au cœur du SDK. Pour utiliser le SDK, procédez à l’importation de la bibliothèque :
Inscription
Une inscription établit un lien entre le deuxième facteur et un compte Auth0. Lorsqu’un compte est inscrit, vous devrez fournir le deuxième facteur requis pour vérifier l’identité. Si votre application n’utilise pas encore les notifications push ou que vous ne connaissez pas bien ce mécanisme, consultez Apple Push Notification Service Overview pour en savoir plus. Pour effectuer une inscription, vous avez besoin des renseignements suivants, en plus du domaine de votre tenant :
Une fois que vous avez ces renseignements, vous pouvez inscrire votre appareil :
Clés de signature et de vérification
Guardian.swift fournit une classe pratique pour générer une clé de signature :Data et la stocker de façon sécuritaire, par exemple dans une SQLiteDB chiffrée :
SigningKey, par exemple :
Autoriser les requêtes de connexion
Une fois l’inscription effectuée, vous recevrez une notification push chaque fois que l’utilisateur devra valider son identité avec MFA. Guardian fournit une méthode pour analyser les données reçues d’APNs et renvoyer une instanceNotification prête à l’emploi.
allow. Vous aurez aussi besoin de certaines informations provenant de l’appareil inscrit que vous avez obtenues précédemment. Si vous avez plus d’une inscription, vous devrez trouver celle qui a le même id que la notification (la propriété enrollmentId).
Une fois que vous avez ces informations, le paramètre device peut être n’importe quel élément qui implémente le protocole AuthenticatedDevice :
UIDevice.current.identifierForVendor. Ensuite, faites simplement la requête suivante :
Rejeter les requêtes de connexion
Pour rejeter une requête d’authentification, appelez plutôtreject. Vous pouvez aussi envoyer un motif de rejet facultatif. Le motif de rejet apparaîtra dans les journaux de Guardian.
Désinscription
Si vous souhaitez supprimer une inscription, par exemple pour désactiver MFA, vous pouvez envoyer la requête suivante :Configurer l’inscription OTP sur mobile uniquement
Vous pouvez activer les mots de passe à usage unique (OTP) comme facteur MFA à l’aide du ou de la . Cette option ne nécessite pas de QR code et permet aux utilisateurs de s’inscrire manuellement. Pour inviter un utilisateur à s’inscrire, accédez à Auth0 Dashboard > User Management > Users et sélectionnez un utilisateur. Accédez ensuite à son onglet Details et utilisez la section Multi-Factor Authentication pour envoyer une invitation à l’inscription.Connecter une ressource
Vous pouvez connecter une ressource à l’aide de l’Auth0 Dashboard ou du Guardian SDK.-
Accédez à l’écran de connexion Auth0 et copiez le code fourni, ou une clé semblable encodée en base32 obtenue d’une autre source. À l’étape suivante, vous saisirez ce code dans une application d’authentification.

- Saisissez le code que vous avez copié dans une application d’authentification, comme Guardian.
-
Importez la bibliothèque Guardian.
-
Créez un générateur de code.
-
Obtenez le code généré.
Entrez le code à usage unique
Dans l’écran de connexion Auth0, entrez le code que vous avez généré à l’étape précédente.
Connectez-vous avec votre application
Une fois le facteur configuré, l’utilisateur peut se connecter à l’aide de votre application. Commencez par choisir l’application Guardian comme méthode d’authentification.
