Compartir a través de


Creación de credenciales verificables con varias atestaciones

Cualquier definición de reglas que use varios tipos de atestaciones genera un flujo de emisión en el que las notificaciones proceden de más de un origen. Por ejemplo, es posible que tenga que presentar una credencial existente y también especificar manualmente los valores de las notificaciones en Microsoft Authenticator.

En esta guía paso a paso, ampliaremos el ejemplo de atestación de sugerencia de token de identificador mediante la incorporación de una notificación auto atestiguada que el usuario tiene que escribir en Authenticator durante la emisión. La solicitud de emisión al identificador comprobado contendrá una sugerencia de token de identificador con los valores de notificación de given_name y family_name un tipo de atestación auto emitido para la notificación displayName que es el usuario quien lo escribe.

Creación de una credencial personalizada con varios tipos de atestación

En Azure Portal, si hace clic en Agregar credencial, podrá empezar dos inicios rápidos. Seleccione Credencial personalizada y, a continuación, seleccione Siguiente.

Captura de pantalla del inicio rápido Emitir credenciales para crear una credencial personalizada.

En la página Crear una credencial, escriba el código JSON para la presentación y las definiciones de reglas. En el cuadro Nombre de credencial, asigne un nombre de tipo a la credencial. Para crear la credencial, seleccione Crear.

Captura de pantalla de la página de creación de credenciales, en la que se muestran ejemplos de JSON para los archivos de visualización y reglas.

Ejemplo de definiciones de visualización en formato JSON

La definición de pantalla JSON tiene una notificación adicional denominada displayName, en comparación con la definición de visualización de la sugerencia de token de identificador.

{
    "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"
      }
    ]
}

Ejemplo de definiciones de reglas JSON

La definición de reglas JSON contiene dos atestaciones diferentes que indican a Microsoft Authenticator que obtenga valores de notificación de dos orígenes diferentes. La solicitud de emisión a Request Service API proporciona los valores de las notificaciones given_name y family_name para satisfacer la atestación idTokenHints. Se solicitará al usuario que escriba el valor de notificación de displayName en Authenticator durante la emisión.

{
  "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"
    ]
  }
}

Entrada de notificaciones durante la emisión

Durante la emisión, Authenticator solicita al usuario que escriba los valores de las notificaciones especificadas. No se valida la entrada del usuario.

Captura de pantalla de la entrada de las notificaciones emitidas automáticamente.

Notificaciones en credenciales emitidas

La credencial emitida tendrá tres notificaciones en total, donde First y Last name proceden de la atestación de la sugerencia de token de identificador y Name procede de la atestación auto emitida.

Captura de pantalla de las notificaciones en una credencial emitida.

Configuración de los ejemplos para emitir y comprobar la credencial personalizada

Para configurar el código de ejemplo para emitir y comprobar la credencial personalizada, necesita:

  • El identificador descentralizado (DID) del emisor del inquilino
  • Tipo de credencial
  • La dirección URL del manifiesto de la credencial

La manera más fácil de encontrar esta información para una credencial personalizada es ir a la credencial en Azure Portal. Seleccione Emitir credencial. Allí podrá acceder a un cuadro de texto con una carga JSON para la API de servicio de solicitud. Reemplace los valores de marcador de posición por la información de su entorno. El DID del emisor es el valor de autoridad.

Captura de pantalla del inicio rápido de emisión de credenciales personalizadas.

Pasos siguientes

Consulte las Referencia a las definiciones de reglas y visualización.