ルールと表示の定義リファレンス
- [アーティクル]
-
-
ルールと表示の定義は、資格情報を定義するために使用されます。 詳細については、資格情報をカスタマイズする方法に関するページを参照してください。
rulesModel 型
JSON での構成証明の種類の例。 selfIssued
は 1 つのインスタンスであるのに対し、その他はコレクションであることに注意してください。 構成証明の種類を使用する方法の例については、攻略ガイドの「JSON ルール定義のサンプル」を参照してください。
"attestations": {
"idTokens": [],
"idTokenHints": [],
"presentations": [],
"selfIssued": {}
}
idTokenAttestation 型
Authenticator 内からユーザーをサインインさせる場合、OpenID Connect 互換プロバイダーから返された ID トークンを入力として使用できます。
プロパティ |
タイプ |
説明 |
mapping |
claimMapping (省略可能) |
入力要求を検証可能な資格情報の出力要求にマップする規則 |
configuration |
string (url) |
ID プロバイダーの構成ドキュメントの場所 |
clientId |
string |
ID トークンを取得するときに使用するクライアント ID |
redirectUri |
string |
ID トークンを取得するときに使用するリダイレクト URI。vcclient://openid/ にする必要があります |
scope |
string |
ID トークンを取得するときに使用するスコープのスペース区切りリスト |
required |
boolean (既定値は false) |
この構成証明が必要かどうかを示します |
trustedIssuers |
省略可能な文字列 (配列) |
このコントラクトの検証可能な資格情報を発行できる DID のリスト。 このプロパティは、id_token_hint が別の発行者から取得される可能性がある特定のシナリオでのみ使用されます |
idTokenHintAttestation 型
このフローでは、ID トークン ヒントを使用します。これは Request REST API を介してペイロードとして提供されます。 マッピングは、ID トークン構成証明の場合と同じです。
プロパティ |
タイプ |
説明 |
mapping |
claimMapping (省略可能) |
入力要求を検証可能な資格情報の出力要求にマップする規則 |
required |
boolean (既定値は false) |
この構成証明が必要かどうかを示します |
trustedIssuers |
省略可能な文字列 (配列) |
このコントラクトの検証可能な資格情報を発行できる DID のリスト。 このプロパティは、id_token_hint が別の発行者から取得される可能性がある特定のシナリオでのみ使用されます |
verifiablePresentationAttestation 型
新しく発行された検証可能な資格情報の入力として、別の検証可能な資格情報をユーザーに提示させたい場合。 ウォレットを使用すると、ユーザーが発行時に検証可能な資格情報を選べるようになります。
プロパティ |
タイプ |
説明 |
mapping |
claimMapping (省略可能) |
入力要求を検証可能な資格情報の出力要求にマップする規則 |
credentialType |
string (省略可能) |
入力に必要な資格情報の型 |
required |
boolean (既定値は false) |
この構成証明が必要かどうかを示します |
trustedIssuers |
string (配列) |
このコントラクトの検証可能な資格情報を発行できる DID のリスト。 サービスは内部的に既定で発行者に設定されるため、この値を自分で指定する必要はありません。 |
selfIssuedAttestation 型
ユーザー自身に情報を入力させたい場合。 この型は、自己証明入力とも呼ばれます。
プロパティ |
タイプ |
説明 |
mapping |
claimMapping (省略可能) |
入力要求を検証可能な資格情報の出力要求にマップする規則 |
required |
boolean (既定値は false) |
この構成証明が必要かどうかを示します |
claimMapping 型
プロパティ |
タイプ |
Description |
inputClaim |
string |
入力から使用する要求の名前 |
outputClaim |
string |
検証可能な資格情報の要求の名前 |
indexed |
boolean (既定値は false) |
この要求の値が検索に使用されるかどうかを示します。特定のコントラクトに対してインデックスを作成できる clientMapping オブジェクトは 1 つだけです |
required |
boolean (既定値は false) |
このマッピングが必要かどうかを示します |
type |
string (省略可能) |
要求の種類 |
vcType 型
プロパティ |
タイプ |
説明 |
type |
string (配列) |
このコントラクトで発行できる検証可能な資格情報の種類の一覧 |
ルール定義の例:
{
"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 型
プロパティ |
タイプ |
Description |
title |
string |
資格情報のタイトル |
issuedBy |
string |
資格情報の発行者の名前 |
backgroundColor |
number (16 進数) |
16 進数形式の資格情報の背景色 (例: #FFAABB) |
textColor |
number (16 進数) |
16 進数形式の資格情報のテキストの色 (例: #FFAABB) |
description |
string |
各資格情報の横に表示される補助テキスト |
logo |
displayCredentialLogo |
資格情報に使用するロゴ |
displayCredentialLogo 型
プロパティ |
タイプ |
説明 |
uri |
string (url) |
ロゴの URL。 |
description |
string |
ロゴの説明 |
displayConsent 型
プロパティ |
タイプ |
Description |
title |
string |
同意のタイトル |
instructions |
string |
同意を表示するときに使用する補足テキスト |
displayClaims 型
プロパティ |
タイプ |
Description |
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"
}
]
}
次の手順