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


Отзыв проверяемых учетных данных

В рамках процесса работы с проверяемыми учетными данными вы выдаете учетные данные, а иногда и отменяете их. В этой статье мы рассмотрим Status часть свойства спецификации проверяемых учетных данных. Мы также внимательно рассмотрим процесс отзыва, почему мы хотим отозвать учетные данные, а также некоторые данные и последствия конфиденциальности.

Зачем отменять проверяемые учетные данные?

У каждого клиента есть свои уникальные причины для отмены проверяемых учетных данных. Далее приведены некоторые распространенные сценарии.

  • Идентификатор учащегося: студент больше не является активным студентом в университете.
  • Идентификатор сотрудника: сотрудник больше не является активным сотрудником.
  • Лицензия государственного водителя: водитель больше не живет в этом состоянии.

Как работает отзыв удостоверений?

Проверенные учетные данные Microsoft Entra реализуют стандарт W3C StatusList2021. Когда выполняется презентация API службы запросов, API проверяет состояние отзыва. Проверка отзыва происходит через анонимный вызов API в Центр удостоверений и не содержит никаких данных о том, кто проверяет, является ли проверяемый учетный данные действительным или отменен. С помощью statusList2021Проверенные учетные данные Microsoft Entra сохраняет флаг по хэшированного значения индексированного утверждения для отслеживания состояния отзыва.

Данные проверяемых удостоверений

В каждом проверяемом учетных данных, выданных корпорацией Майкрософт, вызывается утверждение credentialStatus. Эти данные — это навигационная карта, в которой в блоке данных этот проверяемый учетный данные имеет свой флаг отзыва.

Примечание.

Если проверяемые учетные данные устарели и были выданы в течение предварительного периода, это утверждение не существует. Отзыв не работает для этого удостоверения, и его необходимо переиздать.


...
"credentialStatus": { 
    "id": "urn:uuid:00aa00aa-bb11-cc22-dd33-44ee44ee44ee?bit-index=31", 
    "type": "RevocationList2021Status", 
    "statusListIndex": 31, 
    "statusListCredential": "did:web:verifiedid.contoso.com?service=IdentityHub&queries=...data..." 
...

Конечная точка API Центра удостоверений издателя

В децентрализованном документе идентификатора поставщика конечная точка Центра удостоверений доступна в service разделе.

didDocument": {
    "id": "did:web:verifiedid.contoso.com",
    "@context": [
        "https://www.w3.org/ns/did/v1",
        {
            "@base": "did:web:verifiedid.contoso.com"
        }
     ],
     "service": [
         {
             "id": "#linkeddomains",
             "type": "LinkedDomains",
             "serviceEndpoint": {
             "origins": [
                "https://verifiedid.contoso.com/"
                ]
             }
         },
         {
             "id": "#hub",
             "type": "IdentityHub",
             "serviceEndpoint": {
                "instances": [
                   "https://verifiedid.hub.msidentity.com/v1.0/00aa00aa-bb11-cc22-dd33-44ee44ee44ee"
                ],
                "origins": [ ]
             }
         }
    ],

Создание проверяемых учетных данных с возможностью отзыва

Проверенные учетные данные Microsoft Entra не хранит проверяемые данные учетных данных. Издателю необходимо проиндексировать одно утверждение, чтобы выполнить поиск учетных данных. Только одно утверждение можно индексировать, и если нет, вы не можете отозвать учетные данные. Выбранное для индексирования утверждение дополняется значением соли и хэшируется, то есть никогда не хранится в виде исходного значения.

Примечание.

Хэширование — это односторонняя криптографическая операция, которая преобразует входные данные, называемые a preimage, и создает выходные данные, называемые хэшом с фиксированной длиной. В настоящее время это не возможно, чтобы отменить хэш-операцию.

Пример. В следующем примере displayName — это утверждение индекса. Вы можете искать только полное имя пользователя и ничего другого.

{
  "attestations": {
    "idTokens": [
      {
        "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
        "configuration": "https://didplayground.b2clogin.com/didplayground.onmicrosoft.com/B2C_1_sisu/v2.0/.well-known/openid-configuration",
        "redirectUri": "vcclient://openid",
        "scope": "openid profile email",
        "mapping": [
          {
            "outputClaim": "displayName",
            "required": true,
            "inputClaim": "$.name",
            "indexed": true
          },
          {
            "outputClaim": "firstName",
            "required": true,
            "inputClaim": "$.given_name",
            "indexed": false
          },
          {
            "outputClaim": "lastName",
            "required": true,
            "inputClaim": "$.family_name",
            "indexed": false
          }
        ],
        "required": false
      }
    ]
  },
  "validityInterval": 2592000,
  "vc": {
    "type": [
      "VerifiedCredentialExpert"
    ]
  }
}

Внимание

Можно индексировать только одно утверждение из сопоставления утверждений правил. Если по ошибке в определении ваших правил отсутствует индексированное утверждение, а затем вы исправляете этот недосмотр, все проверяемые учетные данные, выданные до изменения, недоступны для поиска, так как они были выданы в период отсутствия индекса.

Разделы справки отозвать проверяемые учетные данные?

Индексированные утверждения можно использовать в проверяемых учетных данных для поиска выданных проверяемых учетных данных и отзыва их.

  1. Перейдите в область проверенного идентификатора в портал Azure в качестве пользователя администратора с разрешением на ключ входа в Azure Key Vault.

  2. Выберите проверяемый тип учетных данных.

  3. В левом меню выберите "Отозвать учетные данные".

    Снимок экрана: отзыв учетных данных.

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

    Снимок экрана: учетные данные для отзыва.

    Внимание

    Мы сохраняем только хэшированную версию индексированного утверждения. Это означает, что только точные совпадения значения, хранящегося в индексированных утверждениях. При вводе сведений в текстовое поле хэшируется с помощью того же алгоритма. Затем это хэшированное значение используется для поиска совпадения с сохраненным хэш-утверждением. Если вы не нашли совпадение, возможно, вы ввели неправильные сведения или утверждение может не индексироваться.

  5. После обнаружения совпадения выберите параметр Отозвать справа от удостоверения, которое требуется отозвать.

    Пользователь администратора, выполняющий операцию отзыва, должен иметь разрешение на ключ подписи для Key Vault или сообщение об ошибке "Не удается получить доступ к ресурсу Key Vault с заданными учетными данными".

    Снимок экрана: предупреждение о том, что после отзыва у пользователя по-прежнему есть учетные данные.

  6. После успешного отзыва вы увидите обновление состояния и зеленый баннер появится в верхней части страницы.

    Снимок экрана: сообщение об успешно отозванных проверяемых учетных данных.

API службы запросов указывает отозванные учетные данные в обратном вызове presentation_verified как .REVOKED В зависимости от того, указан ли запрос презентации, который позволяет представить отозванные учетные данные, презентация отозванных учетных данных завершается успешно или завершается сбоем.

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