Condividi tramite


Creare credenziali verificabili con più attestazioni

Una definizione di regole che usa più tipi di attestazioni produce un flusso di rilascio in cui le attestazioni provengono da più di un'origine. Ad esempio, potrebbe essere necessario presentare una credenziale esistente e immettere manualmente i valori per le attestazioni in Microsoft Authenticator.

In questa guida pratica verrà esteso l'esempio di attestazione dell'hint del token ID aggiungendo un'attestazione autocertificata che l'utente deve immettere nell'autenticatore durante il rilascio. La richiesta di rilascio all'ID verificato conterrà un hint per il token ID con i valori dell'attestazione per given_name e family_name un tipo di attestazione autocertificato per l'attestazione displayName immessa dall'utente.

Creare credenziali personalizzate con più tipi di attestazione

Nella portale di Azure, quando si seleziona Aggiungi credenziali, si ottiene l'opzione per avviare due guide introduttive. Selezionare credenziali personalizzate e quindi avanti.

Screenshot della guida introduttiva Rilasciare le credenziali per la creazione di credenziali personalizzate.

Nella pagina Crea una nuova credenziale immettere il codice JSON per la visualizzazione e le definizioni delle regole. Nella casella Nome credenziali assegnare alla credenziale un nome di tipo. Per creare le credenziali, selezionare Crea.

Screenshot della pagina Crea una nuova credenziale, che mostra esempi JSON per i file di visualizzazione e regole.

Definizioni di visualizzazione JSON di esempio

La definizione di visualizzazione JSON ha un'attestazione aggiuntiva denominata displayName rispetto alla definizione di visualizzazione dell'hint del token 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"
      }
    ]
}

Definizioni di regole JSON di esempio

La definizione delle regole JSON contiene due attestazioni diverse che indicano all'Authenticator di ottenere valori attestazioni da due origini diverse. La richiesta di rilascio all'API del servizio di richiesta fornisce i valori per le attestazioni given_name e family_name per soddisfare l'attestazione idTokenHints . All'utente verrà richiesto di immettere il valore dell'attestazione per displayName nell'autenticatore durante il rilascio.

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

Input delle attestazioni durante il rilascio

Durante il rilascio, Authenticator richiede all'utente di immettere i valori per le attestazioni specificate. L'input dell'utente non viene convalidato.

Screenshot dell'input delle attestazioni selfIssued.

Attestazioni nelle credenziali rilasciate

Le credenziali rilasciate avranno tre attestazioni in totale, dove First e provengono dall'attestazione dell'hint del token ID e provengono Name dall'attestazione autocertificataLast name.

Screenshot delle attestazioni nelle credenziali rilasciate.

Configurare gli esempi per eseguire il problema e verificare le credenziali personalizzate

Per configurare il codice di esempio per eseguire il problema e verificare le credenziali personalizzate, è necessario:

  • Identificatore decentralizzato dell'autorità emittente del tenant (DID)
  • Tipo di credenziale
  • URL del manifesto per le credenziali

Il modo più semplice per trovare queste informazioni per le credenziali personalizzate consiste nell'accedere alle credenziali nella portale di Azure. Selezionare Rilascia credenziali. È quindi possibile accedere a una casella di testo con un payload JSON per l'API del servizio di richiesta. Sostituire i valori segnaposto con le informazioni dell'ambiente. Il did dell'autorità emittente è il valore dell'autorità.

Screenshot del problema di credenziali personalizzate di avvio rapido.

Passaggi successivi

Vedere le informazioni di riferimento sulle regole e sulla visualizzazione delle definizioni.