규칙 및 디스플레이 정의 참조

규칙 및 디스플레이 정의는 자격 증명을 정의하는 데 사용됩니다. 자격 증명을 사용자 지정하는 방법에서 자세한 내용을 확인할 수 있습니다.

rulesModel 형식

속성 Type 설명
attestations idTokenAttestation 및/또는 idTokenHintAttestation 및/또는 verifiablePresentationAttestation 및/또는 selfIssuedAttestation 확인 가능한 자격 증명에서 발급할 클레임을 수집하는 데 사용할 증명 흐름을 정의합니다.
validityInterval 번호 자격 증명의 수명을 초 단위로 나타냅니다.
vc vcType 이 계약에 대해 확인 가능한 자격 증명 형식

JSON의 증명 유형 예제입니다. selfIssued는 단일 인스턴스인 반면 다른 것은 컬렉션입니다. 증명 유형을 사용하는 방법의 예제는 방법 가이드의 샘플 JSON 규칙 정의를 참조하세요.

"attestations": {
  "idTokens": [],
  "idTokenHints": [],
  "presentations": [],
  "selfIssued": {}
}

idTokenAttestation 형식

Authenticator 내에서 사용자를 로그인할 때 OpenID Connect 호환 공급자로부터 반환된 ID 토큰을 입력으로 사용할 수 있습니다.

속성 Type 설명
mapping claimMapping(선택 사항) 확인 가능한 자격 증명의 출력 클레임에 입력 클레임을 매핑하는 규칙
configuration 문자열(URL) ID 공급자의 구성 문서 위치
clientId string ID 토큰을 가져올 때 사용할 클라이언트 ID
redirectUri string ID 토큰을 가져올 때 사용할 리디렉션 URI는 vcclient://openid/여야 함
scope string ID 토큰을 가져올 때 사용할 공백으로 구분된 범위 목록
required 부울(기본값 false) 이 증명이 필요한지 여부 표시
trustedIssuers 선택적 속성(배열) 이 계약에 대해 확인 가능한 자격 증명을 발급할 수 있도록 허용된 DID 목록입니다. 이 속성은 id_token_hint가 다른 발급자로부터 올 수 있는 특정 시나리오에만 사용됩니다.

idTokenHintAttestation 형식

이 흐름은 요청 REST API를 통해 페이로드로 제공되는 ID 토큰 힌트를 사용합니다. 매핑은 ID 토큰 증명과 동일합니다.

속성 Type 설명
mapping claimMapping(선택 사항) 확인 가능한 자격 증명의 출력 클레임에 입력 클레임을 매핑하는 규칙
required 부울(기본값 false) 이 증명이 필요한지 여부를 나타냅니다. 요청 서비스 API 는 createPresentationRequest 페이로드에 필요한 클레임이 설정되지 않은 경우 호출에 실패합니다.
trustedIssuers 선택적 속성(배열) 이 계약에 대해 확인 가능한 자격 증명을 발급할 수 있도록 허용된 DID 목록입니다. 이 속성은 id_token_hint가 다른 발급자로부터 올 수 있는 특정 시나리오에만 사용됩니다.

verifiablePresentationAttestation 형식

사용자가 다른 확인 가능한 자격 증명을 발급된 새 확인 가능한 자격 증명에 대한 입력으로 표시하도록 하려는 경우입니다. 지갑을 사용하면 사용자는 발급 중에 확인 가능한 자격 증명을 선택할 수 있습니다.

속성 Type 설명
mapping claimMapping(선택 사항) 확인 가능한 자격 증명의 출력 클레임에 입력 클레임을 매핑하는 규칙
credentialType 문자열(선택 사항) 입력의 필수 자격 증명 형식
required 부울(기본값 false) 이 증명이 필요한지 여부 표시
trustedIssuers 문자열(배열) 이 계약에 대해 확인 가능한 자격 증명을 발급할 수 있도록 허용된 DID 목록입니다. 서비스는 기본적으로 커버 아래의 발급자이므로 이 값을 직접 제공할 필요가 없습니다.

selfIssuedAttestation 형식

사용자가 정보를 직접 입력하도록 하려는 경우 이 형식을 자체 증명된 입력이라고도 합니다.

속성 Type 설명
mapping claimMapping(선택 사항) 확인 가능한 자격 증명의 출력 클레임에 입력 클레임을 매핑하는 규칙
required 부울(기본값 false) 이 증명이 필요한지 여부 표시

claimMapping 형식

속성 Type Description
inputClaim string 입력에서 사용할 클레임의 이름
outputClaim string 확인 가능한 자격 증명의 클레임 이름
indexed 부울(기본값 false) 이 클레임의 값이 검색에 사용되는지 여부를 나타냅니다. 지정된 계약에 대해 하나의 clientMapping 개체만 인덱싱할 수 있습니다.
required 부울(기본값 false) 이 매핑이 필요한지 여부 표시
type 문자열(선택 사항) 클레임 형식

vcType 형식

속성 Type 설명
type 문자열(배열) 이 계약이 발급할 수 있는 확인 가능한 자격 증명 형식 목록

규칙 정의 예제:

{
  "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 형식

속성 Type Description
locale string 이 디스플레이의 로캘
credential displayCredential 확인 가능한 자격 증명의 표시 속성
consent displayConsent 확인 가능한 자격 증명이 발급될 때의 추가 데이터
claims displayClaims 배열 확인 가능한 자격 증명에 포함된 클레임에 대한 레이블

displayCredential 형식

속성 Type Description
title string 자격 증명의 제목
issuedBy string 자격 증명 발급자의 이름
backgroundColor 수(16진수) 16진수 형식의 자격 증명 배경색(예: #FFAABB)
textColor 수(16진수) 16진수 형식의 자격 증명 텍스트 색(예: #FFAABB)
description string 각 자격 증명과 함께 표시되는 추가 텍스트
logo displayCredentialLogo 자격 증명에 사용할 로고

displayCredentialLogo 형식

속성 Type 설명
uri 문자열(URL) 로고의 URL입니다.
description string 로고에 대한 설명

displayConsent 형식

속성 Type Description
title string 동의의 제목
instructions string 동의를 표시할 때 사용할 추가 텍스트

displayClaims 형식

속성 Type Description
label string 표시되는 클레임의 레이블
claim string 레이블이 적용되는 클레임의 이름입니다. JWT-VC 형식의 경우 값에 vc.credentialSubject. 접두사가 있어야 합니다.
type string 클레임의 형식
description 문자열(선택 사항) 클레임에 대한 설명

표시 정의 예제:

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

다음 단계