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


Автоматический отзыв и продление компонентов

Программные приложения или компоненты, которые считаются скомпрометируемыми, могут быть отозваны корпорацией Майкрософт. Расширенный API клиента формата Windows Media предоставляет механизм автоматического отзыва и обновления компонентов.

Отозванные компоненты перечислены в списке отзыва сертификатов, который публикуется корпорацией Майкрософт. При отзыве компонента его сертификат добавляется в список отзыва сертификатов, а большой двоичный объект сведений об отзыве (REV_INFO) обновляется на серверах Майкрософт.

Для автоматического отзыва и продления, когда пользователь пытается обработать защищенное содержимое DRM Windows Media, приложение должно сделать следующее:

  1. Извлеките версию REV_INFO из лицензии. Номер версии REV_INFO находится в следующем расположении в лицензии XMR:

    <LICENSE version="2.0.0.0">
        <LICENSORINFO/>
        <DATA>
            <LID>...</LID>
            <KID>...</KID>
            <RevInfoVersion>42</RevInfoVersion>
            ...
         </DATA>
    ....
    </LICENSE>
    
  2. Сравните номер версии REV_INFO лицензии с номером версии REV_INFO в локальном хранилище, вызвав метод IWMDRMSecurity::GetRevocationDataVersion .

  3. Если версия REV_INFO не обновлена, вызовите метод IWMDRMSecurity::P erformSecurityUpdate , передав флаг WMDRM_SECURITY_PERFORM_REVOCATION_REFRESH в параметре dwFlags .

  4. Получите список отзыва сертификатов из локального хранилища, вызвав метод IWMDRMSecurity::GetRevocationData .

  5. Проанализируете список отзыва и проверка для отзыва DRM Windows Media. Дополнительные сведения см. в разделе Проверка отзыва сертификата.

  6. Если есть какие-либо отзыва DRM Windows Media:

    1. Создайте средство включения содержимого для обновления отозванных компонентов, вызвав метод IWMDRMSecurity::GetContentEnablersForRevocations .

    2. Вызовите IMFContentEnabler::AutomaticEnable , который направляет пользователя на URL-адрес, содержащий сведения о продлении компонентов. Этот метод описан в пакете SDK Media Foundation (https://msdn.microsoft.com/library/ms694197(VS.85).aspx).

      Примечание

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

       

    3. Если это возможно, пользователь будет обновлять компонент по URL-адресу автоматически или с помощью определенных инструкций. В некоторых ситуациях невозможно обновить компонент.

    4. Попробуйте получить доступ к содержимому еще раз, пока не будет больше отзывов или процесс не будет остановлен по какой-либо причине.

Руководство по программированию