Что означает код HRESULT 0xC00D2713 (NS_E_DRM_SECURE_STORE_ERROR)?

 
Предыдущий Следующий
NS_E_DRM_LICENSE_STORE_ERROR NS_E_DRM_LICENSE_STORE_SAVE_ERROR

NS_E_DRM_SECURE_STORE_ERROR

Как классифицировать этот результат

Символьный результат NS_E_DRM_SECURE_STORE_ERROR сужает значение 0xC00D2713 к локальному хранилищу лицензий, защищённому хранилищу и привязке к компьютеру в инциденте «ошибка защищённого хранилища». На практике защищённое хранилище состояния не может завершить запрошенную операцию; формирующий слой — защищённые хранилища лицензий и состояния DRM вместе с аппаратными данными и контрольными точками, привязывающими это состояние к конкретной установке, для результата «ошибка защищённого хранилища».

Для NS_E_DRM_SECURE_STORE_ERROR, встроенное сообщение описывает видимый пользователю результат, а символьная фраза «ошибка защищённого хранилища» сохраняет точную границу WMDRM для диагностики. Для подтверждения этого кода выполните прямую проверку: сопоставьте события защищённого хранилища с аппаратной идентичностью, контрольной точкой и ошибками фиксации, при воспроизведении состояния «ошибка защищённого хранилища».

Как доказать условие

  1. Найдите самый ранний возврат API, обратный вызов или событие, содержащее NS_E_DRM_SECURE_STORE_ERROR и 0xC00D2713.
  2. Для NS_E_DRM_SECURE_STORE_ERROR, определите точное поколение объекта содержимого, лицензии, хранилища, устройства или миграции, участвующее в «ошибка защищённого хранилища».
  3. Для NS_E_DRM_SECURE_STORE_ERROR, определите, возникло ли «ошибка защищённого хранилища» до сетевого обмена, при проверке ответа, во время применения политики или при фиксации защищённого состояния.
  4. Выполните проверку, специфичную для этого кода: сопоставьте события защищённого хранилища с аппаратной идентичностью, контрольной точкой и ошибками фиксации в процессе «ошибка защищённого хранилища».
  5. Внесите одно точечное исправление — исправьте сбой защищённого состояния вместо слепого повторного получения содержимого — и повторите ту же операцию, сформировавшую ошибку, применительно к состоянию «ошибка защищённого хранилища».

Какой компонент владеет сбоем

Не сводите NS_E_DRM_SECURE_STORE_ERROR в общую ошибку DRM при трассировке состояния «ошибка защищённого хранилища». После получения лицензия сохраняется в защищённом локальном хранилище лицензий; поэтому ошибка хранилища отличается от отказа сервера выдать лицензию, на границе состояния «ошибка защищённого хранилища». Кроме того, состояние, привязанное к компьютеру, нельзя безопасно диагностировать копированием файлов хранилища между компьютерами или удалением оригинала до сохранения доказательств, при диагностике состояния «ошибка защищённого хранилища».

Диагностические данные, разделяющие причины

Зафиксируйте первое появление NS_E_DRM_SECURE_STORE_ERROR до того, как автоматический повтор, уничтожение Player, восстановление хранилища или повторное получение лицензии изменит состояние в инциденте ошибка защищённого хранилища. Минимальная полезная запись содержит:

  • Подтверждение для этого кода: сопоставьте события защищённого хранилища с аппаратной идентичностью, контрольной точкой и ошибками фиксации для результата «ошибка защищённого хранилища».
  • Защищённая идентичность: первый сбойный вызов API хранилища: открытие, перечисление, сохранение, закрытие или запрос, при диагностике состояния «ошибка защищённого хранилища».
  • Состояние операции: идентификатор лицензии и идентификатор ключа содержимого KID, в процессе обработки состояния «ошибка защищённого хранилища».
  • Хранилище или транспорт: путь хранилища, поколение файла, результат доступа и базовую системную ошибку, при диагностике состояния «ошибка защищённого хранилища».
  • Контекст безопасности: аппаратную идентичность и последнее изменение оборудования или операционной системы, при диагностике состояния «ошибка защищённого хранилища».
  • Точка корреляции: последовательность сохранения контрольной точки, защищённого хранилища и данных реестра, на границе состояния «ошибка защищённого хранилища».

При расследовании «ошибка защищённого хранилища» по возможности используйте KID, идентификаторы лицензий, хэши, отпечатки сертификатов, размеры и временные метки. Во время диагностики NS_E_DRM_SECURE_STORE_ERRORне записывайте в обычные журналы ключи содержимого, полные двоичные данные лицензий, пароли, cookie или расшифрованные мультимедиа, при диагностике состояния «ошибка защищённого хранилища».

Распространённые, но небезопасные действия для состояния «ошибка защищённого хранилища»

  • Не копируйте защищённое хранилище лицензий с другого компьютера как способ исправления в инциденте «ошибка защищённого хранилища». Это изменяет доказательства, не показывая, почему NS_E_DRM_SECURE_STORE_ERROR .
  • Не удаляйте и не сбрасывайте состояние DRM до сохранения хэшей, временных меток и первой ошибки хранилища для результата «ошибка защищённого хранилища». Для NS_E_DRM_SECURE_STORE_ERROR, такой подход может создать дополнительную проблему хранилища, идентификации или политики, при воспроизведении состояния «ошибка защищённого хранилища».
  • Не сводите NS_E_DRM_SECURE_STORE_ERROR до фразы «ошибка DRM» в телеметрии; сохраняйте HRESULT, символьное имя, операцию и идентификатор объекта, в процессе обработки состояния «ошибка защищённого хранилища».

Что должно изменить поддерживаемое исправление

Для NS_E_DRM_SECURE_STORE_ERROR, исправление должно устранять именно формирующую причину: исправьте сбой защищённого состояния вместо слепого повторного получения содержимого, в пути обработки состояния «ошибка защищённого хранилища». Сохраните исходный заголовок содержимого, хранилище или материалы миграции для NS_E_DRM_SECURE_STORE_ERROR до тех пор, пока операция «ошибка защищённого хранилища» не завершится успешно и результат не сохранится после создания нового объекта приложения или обязательного перезапуска.

Показательный случай: Клиент DRM может читать метаданные содержимого, но не может разблокировать защищённое состояние компьютера при трассировке состояния «ошибка защищённого хранилища».

Не объединяйте эти HRESULT

РезультатДругая граница
NS_E_DRM_LICENSE_STORE_ERRORЛокальное хранилище лицензий отказало до завершения конкретной операции с лицензией на границе состояния «ошибка защищённого хранилища».
NS_E_DRM_LICENSE_STORE_SAVE_ERRORПолученную или обновлённую лицензию не удалось зафиксировать в локальном хранилище лицензий при диагностике состояния «ошибка защищённого хранилища».
NS_E_DRM_SECURE_STORE_UNLOCK_ERRORКлиент не может разблокировать состояние защищённого хранилища, необходимое для обработки DRM, в инциденте «ошибка защищённого хранилища».

Одно условие «ошибка защищённого хранилища» может сопровождаться несколькими значениями. Упорядочьте цепочку событий NS_E_DRM_SECURE_STORE_ERROR по времени и отдайте приоритет первому коду, полученному на самой низкой конкретной границе, а не более позднему сводному сообщению Player, для результата «ошибка защищённого хранилища».

Как убедиться, что исправление действительно

После исправления пересоздайте объект WMDRM и выполните минимальный пример для NS_E_DRM_SECURE_STORE_ERROR. Убедитесь, что 0xC00D2713 больше не возникает, требуемое лицензионное действие завершается, а вместо него не появляется предупреждение хранилища, сертификата, часов или миграции, при воспроизведении состояния «ошибка защищённого хранилища».

Практическое примечание для этого кода

Символьная фраза «ошибка защищённого хранилища» является важным ключом поиска и телеметрии для NS_E_DRM_SECURE_STORE_ERROR. Храните её рядом с точным значением 0xC00D2713; официальное сообщение «Защищённое хранилище не работает, в процессе обработки состояния «ошибка защищённого хранилища». Обратитесь в службу поддержки Microsoft» полезно пользователю, но само по себе не определяет формирующий API, поколение объекта или защищённую идентичность при диагностике состояния «ошибка защищённого хранилища».

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.