Partager via


Utilisation de la Bibliothèque de portefeuilles Microsoft Entra avec Vérification d’identité

Dans ce tutoriel, vous allez découvrir comment une application mobile peut utiliser la Bibliothèque de portefeuilles Microsoft Entra avec Vérification d’identité pour émettre et présenter des justificatifs vérifiables.

Prerequisites

  • Android Studio installé sur Mac/Windows et un appareil de test Android. Vous devez activer le mode développeur sur votre appareil de test Android.
  • Un compte de développeur Apple, Mac avec Xcode et un appareil de test iOS avec le mode développeur activé. La version iOS doit être au moins iOs 16.
  • Installez l’application Lecteur de code QR sur votre appareil de test. L’application WalletLibraryDemo n’est pas dotée de la possibilité d’analyser les codes QR. Vous avez donc besoin de l’application Lecteur de code QR pour analyser les codes QR avec.

Nul besoin d’être développeur mobile pour suivre ce tutoriel et faire fonctionner l’application de démonstration. Vous aurez uniquement besoin d’outils, d’un appareil de test et d’un peu de courage pour vous lancer. Vous n’avez pas non plus besoin d’un locataire avec Vérification d’identité Microsoft Entra, car vous pouvez tester l’application de démonstration depuis notre site Web de démonstration public de bout en bout.

Note

Utilisez la Bibliothèque de portefeuilles la plus récente pour obtenir la prise en charge de la courbe P-256 répondant aux exigences de la NIST, utilisée par le service Vérification d’identité depuis février 2024.

Qu’est-ce que la Bibliothèque de portefeuilles Microsoft Entra ?

La Bibliothèque de portefeuilles Microsoft Entra pour iOS et Android permet à votre application mobile de commencer à utiliser la plateforme Vérification d’identité Microsoft Entra. À l’aide de la Bibliothèque de portefeuilles, l’application mobile peut émettre et présenter des justificatifs vérifiables conformément aux normes du secteur.

Quand dois-je utiliser la Bibliothèque de portefeuilles Microsoft Entra ?

Microsoft Authenticator dispose de toutes les fonctionnalités pour être utilisé comme un portefeuille pour la Vérification d’identité Microsoft Entra. Dans les cas où Microsoft Authenticator n’est pas disponible, vous pouvez utiliser la Bibliothèque de portefeuilles. Cette solution peut s’appliquer dans le cas où vous disposez déjà d’une application mobile connue de vos utilisateurs, et où il est plus judicieux d’inclure des technologies de justificatifs vérifiables.

Vous pouvez utiliser Microsoft Authenticator et une application mobile utilisant la bibliothèque Portefeuille côte à côte sur le même appareil mobile. L’authentificateur, s’il est installé, est l’application qui enregistre le gestionnaire de protocole pour openid://, de sorte que votre application doit s’assurer que les requêtes d’émission et de présentation atteignent votre application. L’utilisation de liens profonds incorporés dans des pages HTML qui s’appuient sur le protocole openid:// lance Microsoft Authenticator.

Microsoft utilise-t-il la Bibliothèque de portefeuilles Microsoft Entra ?

Oui, Microsoft Authenticator utilise la Bibliothèque de portefeuilles. Certaines fonctionnalités peuvent d’abord apparaître dans Authenticator, mais nous souhaitons les rendre disponibles dans la Bibliothèque de portefeuilles.

Comment ajouter la Bibliothèque de portefeuilles Microsoft Entra à mon application ?

Pour ajouter la Bibliothèque de portefeuilles à votre projet d’application mobile, il vous suffit d’installer une dépendance Maven pour Android ou une dépendance CocoaPods pour iOS.

Pour iOS, ajoutez le pod WalletLibrary à votre Podfile.

target "YourApp" do
  use_frameworks!
  pod "WalletLibrary", "~> 1.0.1"
end

Vous devez ensuite écrire du code pour traiter les requêtes. Pour plus d’informations, consultez l’exemple de code WalletLibraryDemo.

/// Create a verifiedIdClient.
let verifiedIdClient = VerifiedIdClientBuilder().build()

/// Create a VerifiedIdRequestInput using a OpenId Request Uri.
let input = VerifiedIdRequestURL(url: URL(string: "openid-vc://...")!)
let result = await verifiedIdClient.createRequest(from: input)

/// Every external method's return value is wrapped in a Result object to ensure proper error handling.
switch (result) {
case .success(let request):
    /// A request created from the method above could be an issuance or a presentation request. 
    /// In this example, it is a presentation request, so we can cast it to a VerifiedIdPresentationRequest.
    let presentationRequest = request as? VerifiedIdPresentationRequest
case .failure(let error):
    /// If an error occurs, its value can be accessed here.
    print(error)
}

Après cela, vous devez gérer les principales tâches suivantes dans votre application.

  • Obtenir des URL de requête. La Bibliothèque de portefeuilles ne dispose d’aucune fonctionnalité permettant d’analyser un code QR ou similaire. Si vous souhaitez fournir la prise en charge des autres options non intégrées à l’application, vous devez ajouter ces fonctionnalités vous-même.
  • Stocker des informations d’identification. La bibliothèque Portefeuille crée la clé privée et publique utilisée pour signer des réponses et les stocke sur l’appareil, mais elle n’est pas dotée de fonctionnalités pour stocker les informations d’identification. Vous devez gérer le stockage des informations d’identification pour votre application mobile.
  • Interface utilisateur. Vous devez implémenter une représentation visuelle des informations d’identification stockées et tous les éléments d’interface utilisateur destinés à piloter le processus d’émission et de présentation.

Application de démonstration de la Bibliothèque de portefeuilles

La Bibliothèque de portefeuilles est fournie avec une application de démonstration dans le référentiel GitHub, prête à être utilisée sans aucune modification. Il vous suffit de la générer et de la déployer. L’application de démonstration est une implémentation simple et facile d’utilisation qui illustre l’émission et la présentation au minimum. Pour démarrer rapidement, vous pouvez utiliser l’application Lecteur de code QR pour analyser le code QR, puis faire un copier/coller dans l’application de démonstration.

Pour tester l’application de démonstration, vous avez besoin d’une application Web qui émet des informations d’identification et qui effectue des requêtes de présentation pour les informations d’identification. L’application Web de démonstration publique Woodgrove est utilisée à cet effet dans ce tutoriel.

Génération de l’exemple pour Android

Sur votre ordinateur développeur avec Android Studio, procédez comme suit :

  1. Téléchargez ou dupliquez le référentiel GitHub de la Bibliothèque de portefeuilles Android. Vous n’avez pas besoin du dossier de bibliothèque de portefeuille et vous pouvez le supprimer si vous le souhaitez.

  2. Démarrez Android Studio et ouvrez le dossier parent de walletlibrarydemo

    Capture d’écran d’Android Studio.

  3. Sélectionnez le menu Générer, puis Créer un projet. Cette étape prend plusieurs minutes.

  4. Connectez votre appareil de test Android via un câble USB à votre ordinateur portable

  5. Sélectionnez votre appareil de test dans Android Studio et sélectionnez le bouton Exécuter (triangle vert)

Émettre des informations d’identification à l’aide de l’exemple pour Android

  1. Démarrez l’application WalletLibraryDemo

    Capture d’écran de l’étape Créer une requête sur Android.

  2. Depuis votre ordinateur portable, lancez le site Web https://aka.ms/vcdemo de démonstration public et procédez comme suit

    1. Entrez votre Prénom et votre Nom, puis appuyez sur Suivant
    2. Sélectionnez Vérifier avec True Identity
    3. Sélectionnez Prendre un selfie et Téléverser l’ID émis par le gouvernement. La démonstration utilise des données simulées et vous n’avez pas besoin de fournir un vrai selfie ou un ID.
    4. Sélectionnez Suivant et OK
  3. Scannez le code QR avec votre application Lecteur de code QR sur votre appareil de test, puis copiez l’URL complète affichée dans l’application Lecteur de code QR. Retenez le code PIN.

  4. Revenez à l’application WalletLibraryDemo et collez l’URL à partir du Presse-papiers

  5. Cliquez sur le bouton CRÉER UNE REQUÊTE

  6. Lorsque l’application télécharge la demande, elle affiche un écran semblable à l’exemple fourni. Sélectionnez le rectangle blanc, qui est une zone de texte, puis entrez le code d’épingle affiché dans la page du navigateur. Sélectionnez ensuite le bouton COMPLETE .

    Capture d’écran de l’étape Saisie du code PIN sur Android.

  7. Une fois l’émission terminée, l’application de démonstration affiche les revendications dans les informations d’identification

    Capture d’écran de l’étape Émission Terminée sur Android.

Présentation des informations d’identification à l’aide de l’exemple sur Android

L’exemple d’application garde en mémoire les informations d’identification émises. Vous pouvez donc les utiliser pour la présentation après l'émission.

  1. Si vous avez correctement émis des informations d’identification, l’application WalletLibraryDemo doit afficher certains détails d’informations d’identification sur l’écran d’accueil.

    Capture d’écran de l’application avec des informations d’identification sur Android.

  2. Dans la démonstration Woodgrove dans le navigateur, sélectionnez Retourner à Woodgrove si vous ne l’avez pas déjà fait et passez à l’étape 3 Accéder au portail personnalisé.

  3. Scannez le code QR avec l’application Lecteur de code QR sur votre appareil de test, puis copiez l’URL complète dans le Presse-papiers.

  4. Revenez à l’application WalletLibraryDemo et collez l’URL, puis sélectionnez le bouton CREATE REQUEST

  5. L’application récupère la requête de présentation et affiche les informations d’identification correspondantes contenues dans la mémoire. Dans ce cas, vous n’en avez qu’un. Cliquez dessus pour afficher la coche, puis sélectionnez le bouton TERMINER pour envoyer la réponse de présentation.

    Capture d’écran de la présentation des informations d’identification sur Android.

Génération de l’exemple sur iOS

Sur votre ordinateur développeur Mac avec Xcode, procédez comme suit :

  1. Téléchargez ou dupliquez le référentiel GitHub de la Bibliothèque de portefeuilles iOS.

  2. Démarrez Xcode et ouvrez le dossier en haut de l’arborescence pour WalletLibrary

  3. Sélectionnez le projet WalletLibraryDemo

    Capture d’écran de Xcode.

  4. Remplacez l’ID d’équipe par votre ID d’équipe Apple Developer.

  5. Sélectionnez le menu Produit, puis cliquer sur Générer. Cette étape prend plusieurs minutes.

  6. Connectez votre appareil de test iOS via un câble USB à votre ordinateur portable

  7. Sélectionnez votre appareil de test dans Xcode

  8. Sélectionnez le menu Produit, puis Exécuter ou sélectionner sur le triangle d’exécution

Émission d’informations d’identification à l’aide de l’exemple pour iOS

  1. Démarrez l’application WalletLibraryDemo

    Capture d’écran de l’étape Créer une requête sur iOS.

  2. Depuis votre ordinateur portable, lancez le site Web https://aka.ms/vcdemo de démonstration public et procédez comme suit

    1. Entrez votre Prénom et votre Nom, puis appuyez sur Suivant
    2. Sélectionnez Vérifier avec True Identity
    3. Sélectionnez Prendre un selfie et Téléverser l’ID émis par le gouvernement. La démonstration utilise des données simulées et vous n’avez pas besoin de fournir un vrai selfie ou un ID.
    4. Sélectionnez Suivant et OK
  3. Scannez le code QR avec votre application Lecteur de code QR sur votre appareil de test, puis copiez l’URL complète affichée dans l’application Lecteur de code QR. Retenez le code PIN.

  4. Revenez à l’application WalletLibraryDemo et collez l’URL à partir du Presse-papiers

  5. Cliquez sur le bouton Créer une requête

  6. Lorsque l’application termine le téléchargement de la demande, elle affiche un écran semblable à notre exemple. Sélectionnez le texte Ajouter un code pin pour accéder à un écran dans lequel vous pouvez entrer le code pin, puis sélectionnez Bouton Ajouter pour revenir en arrière et enfin sélectionner le bouton Terminer .

    Capture d’écran de l’étape Saisie du code PIN sur iOS.

  7. Une fois l’émission terminée, l’application de démonstration affiche les revendications dans les informations d’identification.

    Capture d’écran de l’étape Émission terminée sur iOS.

Présentation des informations d’identification à l’aide de l’exemple pour iOS

L’exemple d’application garde en mémoire les informations d’identification émises. Vous pouvez donc les utiliser pour la présentation après l'émission.

  1. Si vous avez correctement émis des informations d’identification, l’application WalletLibraryDemo affiche le nom du type d’informations d’identification sur l’écran d’accueil.

    Capture d’écran de l’application avec des informations d’identification sur iOS.

  2. Dans la démonstration Woodgrove dans le navigateur, sélectionnez Retourner à Woodgrove si vous ne l’avez pas déjà fait et passez à l’étape 3 Accéder au portail personnalisé.

  3. Scannez le code QR avec l’application Lecteur de code QR sur votre appareil de test, puis copiez l’URL complète dans le Presse-papiers.

  4. Revenez à l’application WalletLibraryDemo, effacez la demande précédente de la zone de texte, collez l’URL et sélectionnez Bouton Créer une demande

  5. L’application récupère la requête de présentation et affiche les informations d’identification correspondantes contenues dans la mémoire. Dans ce cas précis, une seule information est disponible. Cliquez dessus pour que la coche passe du bleu au vert, puis sélectionnez le bouton Terminer pour envoyer la réponse de présentation.

    Capture d’écran de la présentation des informations d’identification sur iOS.

Étapes suivantes

Découvrez comment configurer votre locataire pour le service d’ID vérifié de Microsoft Entra.