Поделиться через


Справка по определению отображения и правил

Для определения учетных данных используются определения правил и отображения. Дополнительные сведения можно найти в разделе Настройка учетных данных.

Тип rulesModel

Свойство Type Описание
attestations idTokenAttestation и (или) idTokenHintAttestation и (или) verifiablePresentationAttestation и (или) selfIssuedAttestation определяет поток аттестации, используемый для сбора утверждений, которые будут выдаваться в проверяемых учетных данных.
validityInterval number Представляет время существования учетных данных в секундах.
vc vcType Проверяемые типы учетных данных для этого контракта.

Пример типа аттестации в ФОРМАТЕ JSON. Обратите внимание, что selfIssued один экземпляр является одним экземпляром, а другие — коллекциями. Примеры использования типа аттестации см . в примерах определений правил JSON в руководствах по использованию.

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

Тип idTokenAttestation

При входе пользователя из Authenticator в качестве входных данных можно использовать возвращенный маркер идентификатора от поставщика, совместимого с OpenID Connect.

Свойство Type Описание
mapping claimMapping (необязательно) правила сопоставления входных утверждений с выходными утверждениями в проверяемых удостоверений
configuration Строка (URL-адрес) расположение документа с конфигурацией поставщика удостоверений
clientId строка идентификатор клиента, используемый при получении маркера идентификатора
redirectUri строка URI перенаправления, используемый при получении маркера идентификатора. Обязательно использовать vcclient://openid/
scope строка список областей, используемых при получении маркера идентификатора, с пробелами в качестве разделителей
required логическое значение (по умолчанию false) указывает, является ли эта аттестация обязательной или нет
trustedIssuers необязательная строка (массив) список идентификаторов DID, которые могут выдавать проверяемые учетные данные для этого контракта. Это свойство используется только в определенных сценариях, в которых id_token_hint может поступать от другого издателя.

Тип idTokenHintAttestation

Этот поток использует указание токена идентификатора, которое предоставляется в качестве полезных данных через REST API запроса. Сопоставление совпадает с сопоставлением аттестации маркера идентификатора.

Свойство 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 Описание:
inputClaim строка имя утверждения, используемого из входных данных
outputClaim строка имя утверждения в проверяемых удостоверений
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 Описание:
locale строка языковая настройка данного отображения
credential displayCredential свойства отображения проверяемых удостоверений
consent displayConsent дополнительные данные при выдаче проверяемых удостоверений
claims Массив displayClaims метки для утверждений, включенных в проверяемые удостоверения

Тип displayCredential

Свойство Type Описание:
title строка название учетных данных
issuedBy строка имя издателя учетных данных
backgroundColor число (шестнадцатеричное значение) Цвет фона учетных данных в шестнадцатеричном формате, например #FFAABB
textColor число (шестнадцатеричное значение) цвет фона учетных данных в шестнадцатеричном формате, например #FFAABB
description строка дополнительный текст, отображаемый рядом с каждыми учетными данными
logo displayCredentialLogo логотип, используемый для учетных данных

Тип displayCredentialLogo

Свойство Type Описание
uri Строка (URL-адрес) URL-адрес логотипа.
description строка описание логотипа

Тип displayConsent

Свойство Type Описание:
title строка название согласия
instructions строка дополнительный текст, используемый при отображении согласия

Тип displayClaims

Свойство Type Описание:
label строка метка утверждения в отображении
claim строка имя утверждения, к которому применяется метка. Для формата JWT-VC значение должно иметь vc.credentialSubject. префикс.
type строка тип утверждения
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"
    }
  ]
}

Следующие шаги