Implementando a revogação de licença
[O recurso associado a esta página, Windows Media Format 11 SDK, é um recurso herdado. Ele foi substituído por Leitor de Origem e Gravador de Coletor. O Leitor de Origem e o Gravador de Coletor foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use o Leitor de Origem e o Gravador de Coletor em vez do SDK do Windows Media Format 11, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
O SDK do Windows Media Rights Manager 10 inclui um recurso chamado revogação de licença. Esse recurso permite que os servidores de licença solicitem que as licenças sejam removidas do computador cliente. O SDK de Formato de Mídia do Windows fornece métodos que processam mensagens de revogação e removem as licenças do repositório de licenças local.
O processo de revogação de licença é iniciado por um serviço fornecido pelo emissor da licença. Seu aplicativo pode hospedar esse serviço ou pode ser um aplicativo Web. Em ambos os casos, seu aplicativo deve ser capaz de receber um desafio de licença criado pelo serviço.
Para remover licenças do repositório de licenças, execute as seguintes etapas:
- Ao receber um desafio de licença do emissor da licença, chame a função WMCreateLicenseRevocationAgent para criar um objeto de agente de revogação de licença e obter um ponteiro para a interface IWMLicenseRevocationAgent .
- Chame o método IWMLicenseRevocationAgent::GetLRBChallenge para gerar a resposta do desafio.
- Envie a resposta do desafio de volta para o componente de serviço de licença do qual você recebeu o desafio.
- O componente de serviço de licença envia um LRB (blob de revogação de licença) assinado para seu aplicativo. Ao recebê-lo, chame o método IWMLicenseRevocationAgent::P rocessLRB . O ProcessLRB cria uma mensagem de confirmação que você deve enviar de volta ao serviço de licença para verificar se as licenças foram removidas.
Observação
O DRM não é compatível com a versão baseada em x64 deste SDK.
Tópicos relacionados