La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Windows Rights Management Services SDK

Présentations similaires


Présentation au sujet: "Windows Rights Management Services SDK"— Transcription de la présentation:

1 Windows Rights Management Services SDK
Jean-Yves Poublan Microsoft France

2 Agenda Notions de base RMS Publication de contenu protégé
Consommation de contenu protégé Spécificités applications « serveur » Sujets choisis Les informations de cette session concernent RMS SP1, disponible depuis mi 2005.

3 Windows Rights Management Services
L’application crée du contenu Le contenu est protégé Chiffrement Les droits sont appliqués Licence de publication Quels droits (lecture, copie, impression, transfert…) A qui …) Sous quelles conditions (expire le 31/05/2004, …) Le contenu est stocké, transféré L’application consomme le contenu Licence d’utilisation En respectant les droits et conditions de la licence L’application s’appuie sur RMS pour La protection de l’information (publication) La consommation de l’information protégée (utilisation)

4 Windows Rights Management Services Exemples d’applications
Programme de CAO (Conception Assistée par Ordinateur) Protection des plans Portail Web agence photo Tout le monde peut visualiser les images en basse résolution Les abonnés peuvent visualiser les images en haute résolution Portail Intranet ressources humaines ou dept. juridique Les utilisateurs ont accès à certaines informations, mais il ne peuvent copier ni transférer Passerelle de messagerie électronique Analyse et protège les messages selon des policies ou classification Un anti-virus basé sur le serveur Scanne les documents protégés Applications Microsoft Office 2003 Word, Excel, Powerpoint, Outlook Exchange OWA, Internet Explorer (RMA) Prochaines versions de Sharepoint… Application de la protection dynamiquement

5 Entités de confiance RMS met en œuvre le chiffrement…
RSA 1024 et AES 128 Mais doit aller plus loin Contrôle de l’usage après déchiffrement Nécessite le soutien d’entités de confiance La machine Activation lockbox - certificat L’application Manifeste

6 Templates RMS permet de définir des modèles de droits
Matérialise une politique de protection ou de classification Permet à l'utilisateur d'appliquer le modèle définit par l'administrateur, plutôt que de devoir définir les droits/conditions/utilisateurs individuellement à chaque protection Les templates sont déployées au sein de l’infrastructure (SMS, GPO, etc…) L’application peut utiliser les modèles de droits définis par l’administrateur lors la protection de l’information

7 XrML (eXtensible rights Markup Language)
Rights Language -> expression des droits avec XML (1999) XML est le méta-langage – le langage utilisé pour spécifier XrML Partie fournisseur de ressource numérique exprime: Tiers pouvant accéder à la ressource Droits de ces tiers sur la ressource Termes et conditions pour l’exercice de ces droits Standard, gouverné par ContentGuard, Inc. Reconnu W3C et MPEG Travaux PARC (Xerox Palo Alto Research Center) DPRL (Digital Property Rights Language basé sur LISP en tant que méta-langage – 1996) SDK XrML disponible Version courante 2.0 RMS utilise la version 1.2.1 XrML12.pdf

8 Rights Management Services
Système bâti sur XrML Tout est licence XrML <BODY type="LICENSE" version="3.0"> Certificat Machine <OBJECT type="Machine-Certificate"> Certificat Utilisateur <OBJECT type="Group-Identity-Credential"> Licence de publication <BODY type="Microsoft Rights Label" version="3.0"> <OBJECT> Licence d’utilisation <OBJECT type="Content-License"> Certificat client de licensor <OBJECT type="Client-Licensor-Certificate"> Certificat serveur de licensor <OBJECT type="Server-Licensor-Certificate"> Certificat CA <OBJECT type="DRM-CA-Certificate"> Tous les certificats et licences sont signés par leur "issuer" et contiennent la clé publique de l'issuer

9 Hiérarchie XrML Certification Licensing Machine RAC CLC Use Publishing
Microsoft DRM Production Root DRM-Certificate-Authority Clé 2048 Microsoft DRM Production CA DRM-CA-Certificate Clé 1024 Microsoft DRM Production Server Enrollment CA Microsoft DRM Production Machine Activation Server CA Microsoft DRM Server Enrollment Service MS DRM Production Machine Activation Desktop Security Processor CA Server-Licensor-Certifcate Clé 1024 Certification Microsoft DRM Production Desktop Security Processor Activation Certificate Licensing Machine RAC CLC Use Publishing Owner Clés 1024

10 Application RMS Application RMS Proxy MSDRM.DLL Proxy SECPROC.DLL
DRMCreateIssuanceLicense DRMAcquireLicense DRMEncrypt DRMDecrypt DRMCreateBoundLicense … Proxy Win32 RMS Server - SOAP AcquireLicense AcquireIssuanceLicense AcquirePreLicense EditIssuanceLicense GetLicensorCertificate MSDRM.DLL Proxy SECPROC.DLL CryptoAPI

11 Windows Rights Management Services Disponibilité
RMS SP1 Il s’agit du Service Pack 1 de RMS 1.0 Attention: assez différent de RMS 1.0 Binaires disponibles par téléchargement sur le site Web Microsoft • Windows RMS • Windows RMS Client • Windows RMS Toolkit • Rights Management Add-on for Internet Explorer • Rights Management Services SDK • Rights-Managed HTML SDK

12 Publication Créer une licence de publication non signée
DRMCreateIssuanceLicense() Droits spécifiés à l’aide d’un template Droits spécifiés individuellement Signer la licence de publication DRMGetSignedIssuanceLicense() Génération d’une clé de contenu DRM_AUTO_GENERATE_KEY Utilisation d’une clé de contenu existante Chiffrer le contenu Avec RMS (lockbox) DRMCreateBoundLicense DRMCreateEnablingBitsEncryptor DRMEncrypt Avec CryptoAPI Peut se faire n’importe quand puisqu’on contrôle la génération de la clé de contenu Utile pour une application « serveur » sans lockbox Attention: le déchiffrement se fait obligatoirement par la lockbox

13 Publication Il appartient à l’application de gérer (stockage/transport) la licence obtenue de DRMGetSignedIssuanceLicense PWSTR La licence de publication peut être stockée avec le contenu Office 2003 et RMA utilisent un stream dans un fichier Structured Storage (compound file) Recommandé… Si la licence de publication est conservée séparément, il faut un moyen de la lier au contenu L'attribut ContentID d'une licence de publication permet de faire cette liaison

14 Publication Création lors de la protection du fichier
Licence publication Clé de contenu Chiffré avec clé publique serveur RSA 1024 Droits et ayants droits (adresses ) Chiffré avec clé de contenu Contenu du fichier (Texte, Images, méta data, etc…) Chiffré avec clé de contenu AES128

15 Consommation Localiser une licence d’utilisation localement
DRMEnumerateLicense Si pas de licence d’utilisation dans le store local Retrouver la licence de publication - PWSTR Obtenir une licence d’utilisation du serveur RMS DRMAcquireLicense Fourniture de la licence de publication DRMCreateLicenseStorageSession (PWSTR) Authentification de l’utilisateur (crédentiels) Par défaut l’API utilise une RAC appropriée si présente sur le disque Sinon, fourniture d’une RAC utilisateur spécifique

16 Consommation Création lors de la protection du fichier a
Obtenue du serveur RMS Licence publication Licence utilisation Clé de contenu Droits pour l’utilisateur Chiffré avec clé publique serveur Chiffrés avec la clé de contenu Droits et ayants droits (adresses ) Clé de contenu Chiffré avec clé de contenu Contenu du fichier (Texte, Images, méta data, etc…) Chiffrée avec la clé publique de l’utilisateur Chiffré avec clé de contenu AES128

17 Consommation On a la licence d’utilisation
DRMEnumerateLicense Faire un bind de la licence d’utilisation DRMCreateBoundLicense On bind pour un principal On bind pour des droits spécifiques (e.g. « EDIT », « COPY ») Mais retourne tous les droits de l’utilisateurs On peut les mémoriser/activer/griser les menus Déchiffrer le contenu, l’exercice du droit DRMCreateEnablingBitsDecryptor Un seul décrypteur par droit à exercer Clé de contenu DRMDecrypt Obligatoirement avec la lockbox

18 Best practices Une fois déchiffré, il appartient à l’application de protéger le contenu contre un usage contraire au droit pour lequel le contenu a été déchiffré Se conformer au droit pour lequel le bind a été demandé On peut mémoriser les droits pour activer/griser les menus en fonction Mais refaire le bind au moment d’une action Conserver le contenu en clair le moins longtemps possible Déchiffrer, utiliser, détruire S’assurer que l’application est en mesure d’activer la machine et d’enrôler l’utilisateur, si nécessaire

19 Services RMS Services Web ASPNET Services
Protocole SOAP sur HTTP/HTTPS Répertoire virtuel _wmcs dans le Default Web Site (ports 80 et 443) https://servername/_wmcs/Certification https://servername/_wmcs/Licensing Services Certification utilisateur – liaison machine/utilisateur Une fois par utilisateur par machine Certification/Certification.asmx Licensing – licence d'utilisation Une fois par contenu par utilisateur Licensing/Publish.asmx Licensing/License.asmx Enrôlement de serveurs de licences subordonnés Certification/SubEnrollService.asmx

20 Application Serveur Doit pouvoir supporter la charge
Requêtes client Portail Web, Gestion de documents, Workflow… Taches à effectuer Anti-virus, Protection d’ , Archivage Lockbox spécifique multi-threaded DRMSetGlobalOptions permet de spécifier la lockbox serveur secproc_ssp.dll, secproc_ssp_isv.dll Peut publier et consommer Peut obtenir des licences d’utilisation pour ses clients N’a pas besoin d’être authentifiée Pas de manifeste Services Web spécifiques pour les applications serveurs Certification/ServerCertification.asmx Licensing/Server.asmx Licensing/EditIssuanceLicense.asmx

21 Application Serveur sans Lockbox
Pas de consommation Publication de contenu protégé seulement Publication en ligne C’est le serveur RMS qui signe la licence de publication Permet de déplacer la charge CPU vers RMS Les librairies clientes RM sont quand même utilisées Pour celles qui ne nécessitent pas la lockbox Web services GetLicensorCertificate, AcquireIssuanceLicense

22 Publication en ligne Génération d’une clé de chiffrement et chiffrement du contenu CryptoAPI, Classes .Net GetLicensorCertificate (SOAP) Obtention du certificat serveur DRMGetSignedIssuanceLicense (local) Flag DRM_SERVER_ISSUANCELICENSE Protection de la licence non signée Chiffrement des droits avec la clé de contenu Chiffrement de la clé de session avec la clé publique du serveur AcquireIssuanceLicense (SOAP) Envoi de la licence non signée au serveur Réception en retour de la licence signée

23 RMH Rights Managed HTML
Format (publié) pour la protection de contenu HTML avec RMS MHTML (MIME Encapsulation of Aggregate HTML) RMA – Rights Management Addon pour Internet Explorer Viewer de fichier RMH Une application crée du contenu protégé au format RMH L’utilisateur accède au contenu selon ses droits avec Internet Explorer Après avoir installé le module RMA Avantage Simplifie la problématique de l’accès au contenu protégé et sa consommation On peut protéger son contenu en ne développant que la partie « publication » de l’application

24 RMH Fichier extension .rmh OLE Structured Storage (Compound File)
Peut être n’importe quelle autre extension, mais .rmh fait partie des extensions contrôlées par RMA OLE Structured Storage (Compound File) Stream \0x09DataSpaces Contient les licences (publication et –optionnel- utilisation) Stream \0x09DRMViewerContent Contenu au format MHTML (rendition HTML) Chiffré avec RMS Tant que RMA trouve ces deux streams, il peut traiter le fichier Rights-Managed HTML SDK Pour créer ces streams à partir d’une rendition MHTML MHTML peut contenir des messages RFC822

25 RMH Applications génèrent du RMH Office 2003 Outlook 2003
additional settings/allow users with earlier versions… Option par défaut Outlook 2003 Systématique RMH est le format natif pour un message protégé avec RM MHTML peut contenir des messages RFC822 Consommation IE/OWA

26 Application Serveur du SDK
Application Web ASPNET - rmhstore SOAP GetLicensorCertificate AcquireIssuanceLicense Post (MHT) Serveur RMS Get RMH EditIssuanceLicense AcquirereLicense Publication avec mapping des ACLs NTFS sur les droits RMS Poste Client IE/RMA Client RMS Signature licences de publication Emission licences d’utilisation SecProc Admin ACLs //server/rep RAC Déchiffrement Fichiers RMH Serveur de fichiers (repository)

27 Document Library Sample
Démo Document Library Sample

28 Activation Obtention d’un certificat machine
Généré localement par le Security Processor RSA 1024 Ne nécessite pas les droits d’administrateur L’activation de la machine spécifique à chaque utilisateur (CryptoAPI – profil de l’utilisateur) DRMIsActivated(DRM_ACTIVATE_MACHINE) DRMActivate(DRM_ACTIVATE_MACHINE) Clé de registre indique la hiérarchie DRMSetGlobalOptions positionne la lockbox (client ou serveur) Si non activée, API telles que DRMGetSecurityProvider ou DRMInitEnvironment échouent E_DRM_NEEDS_MACHINE_ACTIVATION

29 Certification de l’utilisateur
Obtention d’une RAC (Rights Account Certificate) Contient la clé privée et la clé publique de l’utilisateur (RSA 1024) La clé privée est chiffrée avec la clé publique de la machine Liée à une machine Logique identique à l’activation de la machine DRMIsActivated(DRM_ACTIVATE_GROUPIDENTITY) DRMGetServiceLocation(<service type> = Certification) DRMActivate(DRM_ACTIVATE_GROUPIDENTITY) Si l’utilisateur n’a pas de certificat, DRMInitEnvironment échoue E_DRM_NEEDS_GROUPIDENTITY_ACTIVATION

30 Client Licensor Certificate
Nécessaire pour signer des licences de publication sans avoir à contacter le serveur Publication hors ligne Utilisé par les applications clientes DRMAcquireLicense

31 Manifeste Licence XrML
Contient les condensés (SHA-1) de chaque module <MODULE type="required"> <OBJECT> <ID type="filename">InitILFromILTemplate.exe</ID> </OBJECT> <DIGEST> <ALGORITHM>SHA1</ALGORITHM> <VALUE encoding="base64" size="160">5ry9HovLxkUcwP/tlVL7CuQopIw=</VALUE> </DIGEST> </MODULE> Signée avec clé privée du développeur Clé publique développeur doit être certifiée dans une hiérarchie RMS App-Signing CA DRMInitEnvironment Prend en entrée le manifeste Procède à la vérification

32 Hiérarchies Il faut obtenir… … dans la même hiérarchie!
Un certificat (certificate chain) pour signer le manifeste Une lockbox et certificat machine Un certificat utilisateur … dans la même hiérarchie! Microsoft opère deux hiérarchies Pré-production Production Savoir dans quelle hiérarchie on est Certificat machine - Issuer <NAME>Machine Activation Server</NAME> « ISV »

33 Découverte des services
Client RMS – DRMGetServiceLocation Distribution point dans la licence URL intranet URL extranet Clé registre Certification HKLM\SOFTWARE\Microsoft\MSDRM\ServiceLocation\Activation Publication, Client Licensor HKLM\SOFTWARE\Microsoft\MSDRM\ServiceLocation\EnterprisePublishing Recherche AD (serviceConnectionPoint) Recherche UDDI Office 2003 Une application RMS peut avoir sa propre logique Office 2003 comporte des clés de registre qui ont précédence sur le client RMS HKLM\Software\Microsoft\Office\11.0\Common\DRM\CorpCertificationserver

34 Découverte des services
Inscription dans AD Page d'administration Outil ADSCPRegister (toolkit) Global Catalog Partition de configuration Services\Rights Management Services Objet SCP (serviceConnectionPoint) MSRMRootCluster, MSDRMS2.0? serviceBindingInformation

35 Services RMS sur l’Internet (MSN)
UDDI Business Registry (UBR) Enrôlement serveur https://activation.drm.microsoft.com/enrollment/enrollservice.asmx Activation/certification production https://certification.drm.microsoft.com/certification/certification.asmx Activation/certification pré-production https://certification.isv.drm.microsoft.com/certification Licensing https://licensing.drm.microsoft.com/licensing

36 Questions?

37 Client – où sont les clés?
En principe toutes les bi-clés RSA sont 1024, y compris celles de la machine Profil utilisateur la clé privée machine: machine_priv Protection DPAPI pour l’utilisateur Entropie supplémentaire issue des caractéristiques de la machine Certificat machine contient la clé publique machine_pub RAC contient clé publique user_pub clé privée user_priv chiffrée pour la machine user_privmachine_pub CLC contient publishing_pub et publishing_privuser_pub Licence publication contient Content_Keyserver_pub Licence utilisation contient Content_Keyuser_pub

38 Serveur – où sont les clés?
Clé privée serveur (2 possibilités) Base SQL de configuration (si protection logicielle) Chiffrement avec mot de passe (saisie pages admin) Mot de passe chiffré avec mot de passe du compte de service Stockage dans base SQL de configuration Best practice -> mot de passe pour le compte de service CSP Boîtier HSM ou CSP logiciel Planifier utilisation en cluster Clé publique serveur: dans Server Licensor Certificate (SLC) Paire de clé des RAC Base SQL de configuration Chiffrement avec la clé publique du serveur RMS Trusts RM Serveurs de certification (SLC) Serveurs de licence (clé privée) Chiffrement avec clé publique du serveur RMS

39

40 Slides de référence RMS SP1

41 Nouveautés RMS SP1 Pas d’activation de la machine client auprès d’un serveur d’activation – le client RMS s’auto-active Bi-clé RSA 1024 pour le certificat machine Enrôlement hors ligne du serveur racine possible Utilisation de CryptoAPI par les lockbox Lockbox disponible coté serveur Applications serveur peuvent consommer du contenu protégé (anti-virus, etc…)

42 Trusts RMS Deux sortes de trusts Trusted User Domain
Scénarios d'interopérabilité Entre organisations Entre forêts Avec Passport Ressemble à une CTL en PKI On truste une clé publique C'est un vrai trust Trusted Publishing Domain Scénario de migration ou de fusion Rachat de société Consolidation de serveurs Pas vraiment un trust Pas trivial Comment les comptes utilisateurs sont-ils transférés? Comment les templates sont-elles migrées?

43 Trusts RMS Trusted User Domain
Un domaine utilisateurs RMS = un serveur racine d'entreprise, les RACs qu'il délivre (ses utilisateurs), et les serveurs licence qui lui sont subordonnés Par défaut un serveur de licence n'octroie de licence d'utilisation qu'à des RACs de son domaine Permet aux utilisateurs du domaine trusté (A) de consommer du contenu du domaine trustant (B) Permet aux utilisateurs du domaine trustant (B) de publier du contenu a destination d'utilisateurs du domaine trusté (A), sachant qu'il sera consommable S'établit au niveau de chaque cluster (serveur) de licence On importe la clé publique du domaine trusté (serveur de certification racine d'entreprise A) Entreprise B Entreprise A Certification racine d'entreprise (User domain A) Certification racine d'entreprise User domain B Trusts Licensing Utilisateurs (RAC) entreprise Licensing Utilisateurs (RAC) entreprise

44 Domaine de publication B Domaine de publication A
Trusts RMS Trusted Publishing Domain Un domaine de publication RMS = un serveur de licence et les licences qu'il émet Par défaut un cluster (serveur) de licence ne peut octroyer de licence d'utilisation que pour du contenu dont les licences de publications sont les siennes Clé de contenu chiffrée avec sa clé publique Permet à un serveur de licence (domaine de publication) d'émettre des licences d'utilisation pour du contenu qui a été publié sur un autre serveur de licence Permet aux utilisateurs de contenu d'un serveur de licence (A) d'utiliser un autre serveur de licence (B) pour accéder à ce contenu S'établit au niveau de chaque cluster (serveur) de licence On importe la clé privée du domaine trusté (serveur de licence A) N'a de sens que pour des fusions ou des consolidations, ou legacy suite à un decommissioning Il faut rediriger l'URL du serveur décommissionné vers le nouveau serveur Domaine de publication B Domaine de publication A Serveur de licence A Serveur de licence B Clé privée Licences utilisation Licences utilisation Contenu domaine A Contenu domaine B

45 Trusts RMS Trust Passport C'est un trust de type User Domain
Désactivé par défaut Si activé, les utilisateurs Passport peuvent consommer du contenu publiés par les utilisateurs de l'organisation Mais en principe pas l’inverse car le service de licence gratuit hosté par MSN ne truste pas les divers déploiements d’entreprise Attention: quand on truste Passport, il faut toujours exclure les domaines d'adresses de l'entreprise Sinon, un utilisateur externe avec une adresse prétendue peut consommer du contenu de l'entreprise qui ne lui était pas destiné E.g. OTG en interne exclut *.microsoft.com

46 Trusts RMS Autres remarques Les trusts sont établis out of band
Les trusts ne requièrent aucune connexion Pas de réplication ou validation en ligne L'administrateur établit, détruit, et met à jour les trusts manuellement Les utilisateurs ont besoin d'accéder au serveur de licence RMS trustant (sur lequel l'administrateur a établit un trust)

47 Principes authentification
Serveur de certification Windows Integrated – Kerberos (Entreprise) Cas d’obtention d’une RAC depuis Intranet – Valide 1 an (configurable) Basic sur HTTPS (Entreprise) Cas d’obtention d’une TRAC depuis Extranet – Valide 15 mn Passport (Particulier) Serveur de licensing Authentification à base de XrML (RAC) Service Web peut être accessible en anonyme Pour l’accès Intranet, une authentification Windows Integrated apporte un plus Sécurité en profondeur Meilleure pratique: protéger les échanges de certification et de licensing via SSL/TLS Note: Avec RMS, l’identité est couramment matérialisée par l’adresse . Cependant l’utilisation de SID est possible, à la discrétion des applications RMS. Dans tous les cas l’authentification est faite par AD ou Passeport. On délivre une RAC à un compte utilisateur Active Directory ou Passport dûment authentifié.

48 Principes Chaque serveur peut être un cluster NLB
Cluster = serveur logique ou service Composé de deux (ou plus?) serveurs physiques Le cluster comporte une base SQL Base SQL Server peut aussi être en cluster C'est toujours le cluster (serveur) qui a émis la licence de publication qui émet la licence d'utilisation L'utilisateur doit accéder au serveur de licensing Sauf migration (Trusted Publishing Domain) Cluster RMS NLB Serveur SQL

49 Client – où sont les clés?
En principe toutes les bi-clés RSA sont 1024, y compris celles de la machine Profile utilisateur la clé privée machine: machine_priv Protection DPAPI pour l’utilisateur Entropie supplémentaire issue des caractéristiques de la machine Certificat machine contient la clé publique machine_pub RAC contient clé publique user_pub clé privée user_priv chiffrée pour la machine user_privmachine_pub CLC contient publishing_pub et publishing_privuser_pub Licence publication contient Content_Keyserver_pub Licence utilisation contient Content_Keyuser_pub

50 Serveur – où sont les clés?
Clé privée serveur (2 possibilités) Base SQL de configuration (si protection logicielle) Chiffrement avec mot de passe (saisie pages admin) Mot de passe chiffré avec mot de passe du compte de service Stockage dans base SQL de configuration Best practice -> mot de passe pour le compte de service CSP Boîtier HSM ou CSP logiciel Planifier utilisation en cluster Clé publique serveur: dans Server Licensor Certificate (SLC) Paire de clé des RAC Base SQL de configuration Chiffrement avec la clé publique du serveur RMS Trusts RM Serveurs de certification (SLC) Serveurs de licence (clé privée) Chiffrement avec clé publique du serveur RMS

51 Sécurité des pipelines
SSL/TLS (authentification serveur seulement) recommandé sur les pipelines RMS Protection supplémentaire de l'authentification "Windows Integrated" Protection supplémentaire des RAC lors des requêtes SOAP Confidentialité des identifiants d'utilisateurs (RAC) et des identifiants de contenu (licence publication) Attention: SSL/TLS => impact performance Cartes accélératrices Configuration des permissions sur chaque pipeline Par défaut - Authenticated Users Best Practice: garder l'authentification Windows sur le pipeline License.asmx pour une utilisation intranet Cependant l'accès anonyme peut être requis lors de trusts RM (dont Passport)

52 Emplacement des licences
RMS SP1 Client RMS lockbox WindowsDrive\Documents and Settings\UserId\Local Settings\Application Data\Microsoft\DRM Server RMS lockbox WindowsDrive\Documents and Settings\All Users\Application Data\Microsoft\DRM\Server\UserSid

53 Manifeste Applications doivent avoir leurs DLL et EXE signées par la clé privée du développeur La signature réside dans le manifeste de l'application: licence XrML <BODY type=“LICENSE" version="3.0"> <OBJECT type="Manifest"> Signée clé privée du dévelopeur Doit être distribuée avec l'application Contient les hash (SHA-1) de chaque module <MODULE type="required"> <OBJECT> <ID type="filename">InitILFromILTemplate.exe</ID> </OBJECT> <DIGEST> <ALGORITHM>SHA1</ALGORITHM> <VALUE encoding="base64" size="160">5ry9HovLxkUcwP/tlVL7CuQopIw=</VALUE> </DIGEST> </MODULE> Genmanifest.exe Fichier de configuration .mcf "Manifest chain" contient la clé publique certifiée par MS, et sa chaîne -chain <source chain path> Sans cette option, le manifeste est XrML et non valide (pas de chaîne) Avec cette option, le manifeste est XrML en base64 avec une chaîne complète et valide Générer et signer le manifeste à chaque build

54 Best practice Placer dans un corps MIME dans un fichier MHTLM avec deux body parts Première body part détecte si RMA est installé Si oui, invoque RMA pour afficher la deuxième body part Si non, affiche un message indiquant que le contenu est protégé et nécessite le viewer RMA Deuxième body part comprend le contenu RMH

55 Composants clients RMS
Librairies clientes RMS Msdrm.dll - Redistributable par les applications API « C » (win32) Security Processor – lockbox secproc.dll, secproc_ssp.dll, secproc_isv.dll, secproc_ssp_isv.dll Applications RMS utilisent ces API Chiffrement du contenu Génération de licence de publication Obtention de licence d’utilisation Accès au contenu et respect des droits Gestion des licences et certificats sur le disque Activation de la machine Localisation des services RMS Librairies clientes appellent la lockbox pour les opérations sensibles


Télécharger ppt "Windows Rights Management Services SDK"

Présentations similaires


Annonces Google