規則和顯示定義參考
規則和顯示定義可用來定義認證。 您可以在如何自訂認證 中 深入瞭解。
rulesModel 類型
JSON 中的證明類型範例。 請注意, selfIssued
是單一實例,而其他實例則是集合。 如需如何使用證明類型的範例,請參閱 操作指南中的範例 JSON 規則定義 。
"attestations": {
"idTokens": [],
"idTokenHints": [],
"presentations": [],
"selfIssued": {}
}
idTokenAttestation 類型
當您從 Authenticator 內登入使用者時,可以使用 OpenID 連線相容提供者傳回的識別碼權杖作為輸入。
屬性 |
類型 |
描述 |
mapping |
claimMapping (選擇性) |
規則,將輸入宣告對應至可驗證認證中的輸出宣告 |
configuration |
string (url) |
識別提供者設定檔的位置 |
clientId |
string |
取得識別碼權杖時要使用的用戶端識別碼 |
redirectUri |
string |
重新導向 URI 以在取得識別碼權杖時使用;必須是 vcclient://openid/ |
scope |
string |
取得識別碼權杖時要使用的範圍空格分隔清單 |
required |
布林值 (預設值 false) |
指出是否需要此證明 |
trustedIssuers |
選擇性字串 (array) |
允許發行此合約可驗證認證的 DID 清單。 這個屬性僅適用于特定案例, id_token_hint 其中 可以來自另一個簽發者 |
idTokenHintAttestation 類型
此流程會使用識別碼權杖提示,此提示是透過要求 REST API 提供作為承載。 對應與識別碼權杖證明相同。
verifiablePresentationAttestation 類型
當您想要讓使用者將另一個可驗證的認證呈現為新發行可驗證認證的輸入時。 錢包可讓使用者在發行期間選取可驗證的認證。
屬性 |
類型 |
描述 |
mapping |
claimMapping (選擇性) |
規則,將輸入宣告對應至可驗證認證中的輸出宣告 |
credentialType |
string (選擇性) |
輸入的必要認證類型 |
required |
布林值 (預設值 false) |
指出是否需要此證明 |
trustedIssuers |
string (array) |
允許發行此合約可驗證認證的 DID 清單。 服務會預設為您的簽發者,因此不需要自行提供此值。 |
selfIssuedAttestation 類型
當您想要使用者自行輸入資訊時。 此類型也稱為自我證明輸入。
屬性 |
類型 |
描述 |
mapping |
claimMapping (選擇性) |
規則,將輸入宣告對應至可驗證認證中的輸出宣告 |
required |
布林值 (預設值 false) |
指出是否需要此證明 |
claimMapping 類型
屬性 |
類型 |
描述 |
inputClaim |
string |
要從輸入使用的宣告名稱 |
outputClaim |
string |
可驗證認證中的宣告名稱 |
indexed |
布林值 (預設值 false) |
指出這個宣告的值是否用於搜尋;只有一個 clientMapping 物件可針對指定的合約編制索引 |
required |
布林值 (預設值 false) |
指出是否需要此對應 |
type |
string (選擇性) |
宣告類型 |
vcType 類型
屬性 |
類型 |
描述 |
type |
string (array) |
此合約可驗證的認證類型清單可能會發出 |
範例規則定義:
{
"attestations": {
"idTokenHints": [
{
"mapping": [
{
"outputClaim": "givenName",
"required": false,
"inputClaim": "given_name",
"indexed": false
},
{
"outputClaim": "familyName",
"required": false,
"inputClaim": "family_name",
"indexed": false
}
],
"required": false
}
]
},
"validityInterval": 2592000,
"vc": {
"type": [
"VerifiedCredentialExpert"
]
}
}
displayModel 類型
displayCredential 類型
屬性 |
類型 |
描述 |
title |
string |
認證的標題 |
issuedBy |
string |
認證簽發者的名稱 |
backgroundColor |
數位 (十六進位) |
以十六進位格式顯示認證的背景色彩,例如,#FFAABB |
textColor |
數位 (十六進位) |
以十六進位格式的認證文字色彩,例如,#FFAABB |
description |
string |
與每個認證一起顯示的補充文字 |
logo |
displayCredentialLogo |
要用於認證的標誌 |
displayCredentialLogo 類型
屬性 |
類型 |
描述 |
uri |
string (url) |
標誌的 URL。 |
description |
string |
標誌的描述 |
displayConsent 類型
屬性 |
類型 |
描述 |
title |
string |
同意的標題 |
instructions |
string |
顯示同意時要使用的補充文字 |
displayClaims 類型
屬性 |
類型 |
描述 |
label |
string |
顯示中宣告的標籤 |
claim |
string |
套用標籤之宣告的名稱。 若為 JWT-VC 格式,值必須具有 vc.credentialSubject. 前置詞。 |
type |
string |
宣告的類型 |
description |
string (選擇性) |
宣告的描述 |
範例顯示定義:
{
"locale": "en-US",
"card": {
"backgroundColor": "#FFA500",
"description": "This is your Verifiable Credential",
"issuedBy": "Contoso",
"textColor": "#FFFF00",
"title": "Verifiable Credential Expert",
"logo": {
"description": "Default VC logo",
"uri": "https://didcustomerplayground.blob.core.windows.net/public/VerifiedCredentialExpert_icon.png"
}
},
"consent": {
"instructions": "Please click accept to add this credentials",
"title": "Do you want to accept the verified credential expert dentity?"
},
"claims": [
{
"claim": "vc.credentialSubject.givenName",
"label": "Name",
"type": "String"
},
{
"claim": "vc.credentialSubject.familyName",
"label": "Surname",
"type": "String"
}
]
}
下一步