Freigeben über


Ausstellen von Nachweisen durch Präsentieren von Ansprüchen aus einem bereits vorhandenen Nachweis

Eine Regeldefinition, die den Präsentationsnachweis verwendet, erzeugt einen Ausstellungsablauf, bei dem der Benutzer im Rahmen der Ausstellung einen weiteren Nachweis aus der Brieftasche präsentieren muss und bei dem die Anspruchswerte für die Ausstellung des neuen Nachweises aus dem präsentierten Nachweis entnommen werden. Ein Beispiel für diese Art von Flow kann sein, wenn Sie Ihre VerifiedEmployee-Anmeldeinformation präsentieren, um eine Besucherpass-Anmeldeinformation zu erhalten.

Erstellen eines benutzerdefinierten Nachweises mit Präsentationsnachweis

Wenn Sie im Azure-Portal " Anmeldeinformationen hinzufügen" auswählen, erhalten Sie die Option, zwei Schnellstarts zu starten. Wählen Sie Benutzerdefinierte Anmeldeinformationen und dann Weiter aus.

Screenshot: Schnellstart „Nachweise ausstellen“ zum Erstellen von benutzerdefinierten Nachweisen

Geben Sie auf der Seite Neuen Nachweis erstellen den JSON-Code für die Anzeige- und Regeldefinitionen ein. Geben Sie im Feld Nachweisname einen Namen für den Nachweis ein. Dieser Name ist lediglich ein interner Name für den Nachweis im Portal. Der Typname des Nachweises wird im Namen der Eigenschaft vc.type in der Regeldefinition definiert. Wählen Sie Erstellen aus, um den Nachweis zu erstellen.

Screenshot: Seite „Neuen Nachweis erstellen“ mit Anzeige von JSON-Beispielen für Anzeige- und Regeldateien

Beispiel-JSON-Anzeigedefinitionen

Die JSON-Anzeigedefinition ist unabhängig vom Nachweistyp nahezu identisch. Sie müssen nur die Bezeichnungen entsprechend den Ansprüchen anpassen, über die Ihr Nachweis verfügt. Die erwartete JSON für die Anzeigedefinitionen ist der innere Inhalt der Anzeigensammlung. Der JSON-Code ist eine Sammlung. Wenn Sie also mehrere Gebietsschemas unterstützen möchten, fügen Sie mehrere Einträge mit einem Komma als Trennzeichen hinzu.

{
  "locale": "en-US",
  "card": {
    "backgroundColor": "#000000",
    "description": "Use your verified credential to prove to anyone that you know all about verifiable credentials.",
    "issuedBy": "Microsoft",
    "textColor": "#ffffff",
    "title": "Verified Credential Expert",
    "logo": {
      "description": "Verified Credential Expert Logo",
      "uri": "https://didcustomerplayground.z13.web.core.windows.net/VerifiedCredentialExpert_icon.png"
    }
  },
  "consent": {
    "instructions": "Present your True Identity card to issue your VC",
    "title": "Do you want to get your Verified Credential?"
  },
  "claims": [
    {
      "claim": "vc.credentialSubject.firstName",
      "label": "First name",
      "type": "String"
    },
    {
      "claim": "vc.credentialSubject.lastName",
      "label": "Last name",
      "type": "String"
    }
  ]
}

Beispiel-JSON-Regeldefinitionen

Die JSON-Nachweisdefinition muss den Namen presentations enthalten. Der Eingabeanspruch (inputClaim) im Zuordnungsabschnitt definiert, welche Ansprüche aus dem vom Benutzer präsentierten Nachweis erfasst werden sollen. Sie müssen über das Präfix $.vc.credentialSubject verfügen. Der Ausgabeanspruch (outputClaim) definiert den Namen der Ansprüche im ausgestellten Nachweis.

Die folgende Regeldefinition fordert den Benutzer auf, die True Identity Anmeldeinformation bei der Ausstellung zu präsentieren. Dieser Nachweis stammt aus der öffentlichen Demoanwendung.

{
  "attestations": {
    "presentations": [
      {
        "mapping": [
          {
            "outputClaim": "firstName",
            "required": true,
            "inputClaim": "$.vc.credentialSubject.firstName",
            "indexed": false
          },
          {
            "outputClaim": "lastName",
            "required": true,
            "inputClaim": "$.vc.credentialSubject.lastName",
            "indexed": false
          }
        ],
        "required": false,
        "credentialType": "TrueIdentity",
        "contracts": [
          "https://verifiedid.did.msidentity.com/v1.0/tenants/aaaabbbb-0000-cccc-1111-dddd2222eeee/verifiableCredentials/contracts/M2MzMmVkNDAtOGExMC00NjViLThiYTQtMGIxZTg2ODgyNjY4dHJ1ZSBpZGVudGl0eSBwcm9k/manifest"
        ]
      }
    ]
  },
  "validityInterval": 2592001,
  "vc": {
    "type": [
      "VerifiedCredentialExpert"
    ]
  }
}
Eigentum Typ Beschreibung
credentialType string Nachweistyp, der im Rahmen der Ausstellung angefordert wird. TrueIdentity im vorherigen Beispiel.
contracts Zeichenfolge (Array) Liste der manifest-URLs der angeforderten Anmeldeinformationen. Im vorherigen Beispiel ist die Manifest-URL das Manifest für True Identity
trustedIssuers Zeichenfolge (Array) eine Liste der zugelassenen Aussteller-Dezentralen-Bezeichner (DID)s für die angeforderte Anmeldeinformation. Im vorherigen Beispiel ist die DID die DID des True IdentityAusstellers.

Werte

Authenticator-Erfahrung beim Ausstellen

Während der Ausstellung fordert Authenticator den Benutzer auf, einen passenden Nachweis auszuwählen. Wenn sich in der Brieftasche des Benutzers mehrere passende Nachweise befinden, muss der Benutzer auswählen, welcher Nachweis präsentiert werden soll.

Screenshot: Präsentation von Ansprüchen als Eingabe

Konfigurieren der Beispiele, um Ihren benutzerdefinierten Nachweis auszustellen

Um Ihren Beispielcode so zu konfigurieren, dass er einen benutzerdefinierten Nachweis ausgibt und überprüft wird, benötigen Sie Folgendes:

  • Den dezentralen Bezeichner (Decentralized Identifier, DID) für den Aussteller Ihres Mandanten
  • Der Anmeldeinformationstyp
  • Die Manifest-URL zu Ihren Anmeldeinformationen

Am schnellsten finden Sie diese Informationen für benutzerdefinierte Anmeldeinformationen, wenn Sie zu Ihren Anmeldeinformationen im Azure-Portal navigieren. Wählen Sie Anmeldeinformation ausstellen aus. Daraufhin haben Sie Zugriff auf ein Textfeld mit einer JSON-Nutzlast für die Request Service API. Ersetzen Sie die Platzhalterwerte durch die Informationen Ihrer Umgebung. Die DID des Ausstellers ist der Autoritätswert.

Screenshot des Schnellstarts: Problem mit benutzerdefinierten Anmeldeinformationen

Nächste Schritte

Lesen Sie die Referenz zu Regel- und Anzeigedefinitionen.