Skapa verifierbara autentiseringsuppgifter med flera attesteringar
En regeldefinition som använder flera attesteringstyper skapar ett utfärdandeflöde där anspråk kommer från mer än en källa. Du kan till exempel behöva presentera en befintlig autentiseringsuppgift och även ange värden manuellt för anspråk i Microsoft Authenticator.
I den här guiden utökar vi exemplet med ID-tokentipsattestering genom att lägga till ett självbestyrt anspråk som användaren måste ange i Authenticator under utfärdandet. Utfärdandebegäran till Verifierat ID innehåller ett ID-tokentips med anspråksvärdena för given_name
och family_name
en självutfärdad attesteringstyp för anspråk displayName
som användaren anger själva.
Skapa en anpassad autentiseringsuppgift med flera attesteringstyper
I Azure Portal får du alternativet att starta två snabbstarter när du väljer Lägg till autentiseringsuppgifter. Välj anpassade autentiseringsuppgifter och välj sedan Nästa.
På sidan Skapa en ny autentiseringsuppgift anger du JSON-koden för visningen och regeldefinitionerna. I rutan Namn på autentiseringsuppgifter ger du autentiseringsuppgifterna ett typnamn. Om du vill skapa autentiseringsuppgifterna väljer du Skapa.
Exempel på JSON-visningsdefinitioner
JSON-visningsdefinitionen har ett extra anspråk med namnet displayName jämfört med visningsdefinitionen för ID-tokentips.
{
"locale": "en-US",
"card": {
"title": "Verified Credential Expert",
"issuedBy": "Microsoft",
"backgroundColor": "#507090",
"textColor": "#ffffff",
"logo": {
"uri": "https://didcustomerplayground.z13.web.core.windows.net/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"
}
]
}
Exempel på JSON-regeldefinitioner
JSON-regeldefinitionen innehåller två olika attesteringar som instruerar Authenticator att hämta anspråksvärden från två olika källor. Utfärdandebegäran till API:et för begärandetjänsten innehåller värdena för anspråken given_name och family_name för att uppfylla idTokenHints-attesteringen . Användaren uppmanas att ange anspråksvärdet för displayName i Authenticator under utfärdandet.
{
"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"
]
}
}
Anspråksindata under utfärdandet
Under utfärdandet uppmanar Authenticator användaren att ange värden för de angivna anspråken. Användarindata verifieras inte.
Anspråk i utfärdade autentiseringsuppgifter
De utfärdade autentiseringsuppgifterna har totalt tre anspråk, där First
och Last name
kom från id-token tipsattestering och kom Name
från den själv utfärdade attesteringen.
Konfigurera exemplen för att utfärda och verifiera dina anpassade autentiseringsuppgifter
Om du vill konfigurera exempelkoden för att utfärda och verifiera dina anpassade autentiseringsuppgifter behöver du:
- Klientorganisationens decentraliserade identifierare (DID)
- Typ av autentiseringsuppgifter
- Manifest-URL:en till dina autentiseringsuppgifter
Det enklaste sättet att hitta den här informationen för en anpassad autentiseringsuppgift är att gå till dina autentiseringsuppgifter i Azure Portal. Välj Problemautentiseringsuppgifter. Sedan har du åtkomst till en textruta med en JSON-nyttolast för API:et för begärandetjänsten. Ersätt platshållarvärdena med din miljöinformation. Utfärdarens DID är utfärdarvärdet.