Rilasciare credenziali verificabili presentando attestazioni da credenziali verificabili esistenti
Una definizione di regole che usa il tipo di attestazione presentazioni produce un flusso di rilascio in cui si vuole che l'utente presenti un'altra credenziale verificabile nel portafoglio durante il rilascio e in cui i valori delle attestazioni per il rilascio delle nuove credenziali vengano ricavati dalle credenziali presentate. Un esempio può essere quando si presenta la credenziale VerifiedEmployee per ottenere credenziali passate dai visitatori.
Creare credenziali personalizzate con il tipo di attestazione delle presentazioni
Nella portale di Azure, quando si seleziona Aggiungi credenziali, si ottiene l'opzione per avviare due guide introduttive. Selezionare credenziali personalizzate e quindi avanti.
Nella pagina Crea una nuova credenziale immettere il codice JSON per la visualizzazione e le definizioni delle regole. Nella casella Nome credenziale assegnare un nome alla credenziale. Questo nome è solo un nome interno per le credenziali nel portale. Il nome del tipo della credenziale viene definito nel nome della vc.type
proprietà nella definizione delle regole. Per creare le credenziali, selezionare Crea.
Definizioni di visualizzazione JSON di esempio
La definizione di visualizzazione JSON è quasi identica, indipendentemente dal tipo di attestazione. È necessario modificare le etichette solo in base alle attestazioni presenti nelle credenziali verificabili. Il codice JSON previsto per le definizioni di visualizzazione è il contenuto interno della raccolta di visualizzazioni. JSON è una raccolta, quindi se si vogliono supportare più impostazioni locali, aggiungere più voci con una virgola come separatore.
{
"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"
}
]
}
Definizioni di regole JSON di esempio
La definizione di attestazione JSON deve contenere il nome delle presentazioni . La classe inputClaim nella sezione mapping definisce le attestazioni da acquisire nelle credenziali presentate dall'utente. Devono avere il prefisso $.vc.credentialSubject
. OutputClaim ha definito il nome delle attestazioni nella credenziale da rilasciare.
La definizione di regole seguente richiede all'utente di presentare le credenziali True Identity durante il rilascio. Queste credenziali provengono dall'applicazione demo pubblica.
{
"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"
]
}
}
Proprietà | Type | Descrizione |
---|---|---|
credentialType |
stringa | Tipo di credenziale richiesto durante il rilascio. TrueIdentity nell'esempio precedente. |
contracts |
string (matrice) | elenco di URL manifesto delle credenziali richieste. Nell'esempio precedente, l'URL del manifesto è il manifesto per True Identity |
trustedIssuers |
string (matrice) | elenco di ID autorità emittenti consentite per le credenziali richieste. Nell'esempio precedente, l'operazione DID è l'operazione DID dell'autorità True Identity emittente. |
Valori
Esperienza dell'autenticatore durante il rilascio
Durante il rilascio, Authenticator richiede all'utente di selezionare una credenziale corrispondente. Se l'utente dispone di più credenziali corrispondenti nel portafoglio, l'utente deve selezionare quello da presentare.
Configurare gli esempi per rilasciare 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à.
Passaggi successivi
Vedere le informazioni di riferimento sulle regole e sulla visualizzazione delle definizioni.