Share via


Créer des justificatifs vérifiables avec plusieurs attestations

Une définition de règles qui utilise plusieurs types d’attestations produit un flux d’émission où les revendications proviennent de plusieurs sources. Par exemple, vous devrez peut-être présenter des informations d’identification existantes et entrer manuellement des valeurs pour les revendications dans Microsoft Authenticator.

Dans ce guide pratique, nous allons étendre l’exemple d’attestation d’indicateur de jeton d’ID en ajoutant une revendication auto-attestée que l’utilisateur doit entrer dans l’authentificateur lors de l’émission. La demande d’émission à l’ID vérifié contient un indicateur de jeton d’ID avec les valeurs de revendication pour given_name et family_name et un type d’attestation auto-émis pour la revendication displayName que l’utilisateur entre lui-même.

Créer des informations d’identification personnalisées avec plusieurs types d’attestation

Dans le portail Azure, lorsque vous sélectionnez Ajouter des informations d’identification, vous pouvez lancer deux guides de démarrage rapide. Sélectionnez Informations d’identification personnalisées, puis Suivant.

Capture d’écran du démarrage rapide de la création d’informations d’identification personnalisé.

Dans la page Créer des informations d’identification, entrez le code JSON pour les définitions de règles et d’affichage. Dans la zone Nom des informations d’identification, affectez un nom de type. Pour créer les informations d’identification, sélectionnez Créer.

Capture d’écran de la page « Créer des informations d’identification » affichant des exemples de JSON pour les fichiers d’affichage et de règles.

Exemples de définitions d’affichage JSON

La définition d’affichage JSON a une revendication supplémentaire nommée displayName par rapport à la définition d’affichage de l’indicateur de jeton d’ID.

{
    "locale": "en-US",
    "card": {
      "title": "Verified Credential Expert",
      "issuedBy": "Microsoft",
      "backgroundColor": "#507090",
      "textColor": "#ffffff",
      "logo": {
        "uri": "https://didcustomerplayground.blob.core.windows.net/public/VerifiedCredentialExpert_icon.png",
        "description": "Verified Credential Expert Logo"
      },
      "description": "Use your verified credential to prove to anyone that you know all about verifiable credentials."
    },
    "consent": {
      "title": "Do you want to get your Verified Credential?",
      "instructions": "Sign in with your account to get your card."
    },
    "claims": [
      {
        "claim": "vc.credentialSubject.displayName",
        "label": "Name",
        "type": "String"
      },
      {
        "claim": "vc.credentialSubject.firstName",
        "label": "First name",
        "type": "String"
      },
      {
        "claim": "vc.credentialSubject.lastName",
        "label": "Last name",
        "type": "String"
      }
    ]
}

Exemples de définitions de règles JSON

La définition de règles JSON contient deux attestations différentes qui indiquent à l’authentificateur d’obtenir des valeurs de revendication à partir de deux sources différentes. La demande d’émission à l’API de service de requête fournit les valeurs des revendications given_name et family_name pour satisfaire l’attestation idTokenHints . L’utilisateur est invité à entrer la valeur de revendication pour displayName dans l’authentificateur lors de l’émission.

{
  "attestations": {
    "idTokenHints": [
        {
        "mapping": [
            {
            "outputClaim": "firstName",
            "required": true,
            "inputClaim": "$.given_name",
            "indexed": false
            },
            {
            "outputClaim": "lastName",
            "required": true,
            "inputClaim": "$.family_name",
            "indexed": false
            }
        ],
        "required": false
        }
    ],
    "selfIssued": {
      "mapping": [
        {
          "outputClaim": "displayName",
          "required": true,
          "inputClaim": "displayName",
          "indexed": false
        }
      ],
      "required": false
    }
  },
  "validityInterval": 2592000,
  "vc": {
    "type": [
      "VerifiedCredentialExpert"
    ]
  }
}

Entrée de revendications lors de l’émission

Pendant l’émission, Authenticator invite l’utilisateur à entrer des valeurs pour les revendications spécifiées. L’entrée utilisateur n’est pas validée.

Capture d’écran de l’entrée de revendications selfIssued.

Revendications dans les informations d’identification émises

Les informations d’identification émises auront trois revendications au total, où FirstetLast name proviennent de l’attestation d’indicateur de jeton d’id et le Name provient de l’attestation auto-émise .

Capture d’écran des revendications dans les informations d’identification émises.

Configurer les exemples pour émettre et vérifier vos informations d’identification personnalisées

Pour configurer votre exemple de code de façon à émettre et à vérifier vos informations d’identification personnalisées, vous avez besoin des éléments suivants :

  • Identificateur décentralisé (DID) de l’émetteur de votre locataire
  • Type d’informations d’identification
  • URL du manifeste vers vos informations d’identification

Le moyen le plus simple de trouver ces informations pour des informations d’identification personnalisées consiste à accéder à vos informations d’identification dans le portail Azure. Sélectionnez Informations d’identification du problème. Ensuite, vous avez accès à une zone de texte avec une charge utile JSON pour l’API de service de demande. Remplacez les valeurs d’espace réservé par les informations de votre environnement. Le DID de l’émetteur est la valeur d’autorité.

Capture d’écran de l’émission d’informations d’identification personnalisées dans le guide de démarrage rapide.

Étapes suivantes

Consultez les Informations de référence sur les définitions d’affichage et de règles.