Что означает код HRESULT 0xC00D2714 (NS_E_DRM_LICENSE_STORE_SAVE_ERROR)?

 
Предыдущий Следующий
NS_E_DRM_SECURE_STORE_ERROR NS_E_DRM_SECURE_STORE_UNLOCK_ERROR

NS_E_DRM_LICENSE_STORE_SAVE_ERROR

Смысл, стоящий за сообщением проигрывателя

Когда клиент возвращает NS_E_DRM_LICENSE_STORE_SAVE_ERROR (0xC00D2714), решающим условием является то, что полученную или обновлённую лицензию не удалось зафиксировать в локальном хранилище лицензий. Этот результат относится к локальному хранилищу лицензий, защищённому хранилищу и привязке к компьютеру — защищённым репозиториям лицензий и состояния DRM, а также данным оборудования и контрольной точки, связывающим это состояние с одной установкой, применительно к состоянию «ошибка сохранения лицензии».

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

Почему важен уровень, вернувший код

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

Первичная диагностика без уничтожения данных

  1. Сохраните NS_E_DRM_LICENSE_STORE_SAVE_ERROR, вызывающий интерфейс и первый статус нижнего уровня до его замены оболочкой, при воспроизведении состояния «ошибка сохранения лицензии».
  2. Сопоставьте NS_E_DRM_LICENSE_STORE_SAVE_ERROR с одним KID или идентификатором лицензии, хэшем содержимого, сертификатом устройства либо идентификатором операции миграции.
  3. Для NS_E_DRM_LICENSE_STORE_SAVE_ERROR, восстановите переход состояния непосредственно перед «ошибка сохранения лицензии», а не начинайте с последнего диалогового окна Player.
  4. Подтвердите границу, убедившись, что можете отделить успех сервера от последующей ошибки локального сохранения и зафиксировать свободное место и поколение хранилища в процессе «ошибка сохранения лицензии».
  5. После восстановления надёжной фиксации хранилища и повторного получения лицензии только после согласования предыдущего ответа проверьте и запрошенное право, и конечное состояние хранилища/устройства в пути «ошибка сохранения лицензии».

Минимальная запись об инциденте

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

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

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

Восстановление на правильном уровне

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

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

Почему важно символьное имя

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

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

Критерии завершения

Повторите операцию, первоначально вернувшую NS_E_DRM_LICENSE_STORE_SAVE_ERROR. Для NS_E_DRM_LICENSE_STORE_SAVE_ERROR, проверьте точный HRESULT в ответственном API на сбойном примере «ошибка сохранения лицензии»; затем измените только решающее предварительное условие и убедитесь, что исправленный запуск завершается без соседнего результата DRM. После исправления NS_E_DRM_LICENSE_STORE_SAVE_ERROR, проверьте запрошенное действие и конечное состояние хранилища лицензий, защищённых часов, устройства или миграции, относящееся к «ошибка сохранения лицензии».

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

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

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


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