Comment : activer le suivi et la révocation de documents

Important

Les versions du Kit de développement logiciel (SDK) du service Microsoft Rights Management publiées avant mars 2020 sont déconseillées; les applications utilisant des versions antérieures doivent être mises à jour pour utiliser la version de mars 2020. Pour plus d’informations, consultez l’avis de dépréciation.

Aucune amélioration supplémentaire n’est prévue pour le Kit de développement logiciel (SDK) du service Microsoft Rights Management. Nous vous recommandons vivement d’adopter le kit SDK Protection des données Microsoft pour la classification, l’étiquetage et les services de protection.

Cette rubrique décrit les instructions de base pour implémenter le suivi des documents pour le contenu ainsi que l’exemple de code pour les mises à jour de métadonnées et la création d’un bouton Suivre l'utilisation pour votre application.

Étapes pour implémenter le suivi des documents

Les étapes 1 et 2 permettent au document d’être suivi. L’étape 3 permet aux utilisateurs de votre application d’atteindre le site de suivi des documents pour suivre et révoquer vos documents protégés.

  1. Ajouter des métadonnées de suivi des documents
  2. Inscrire le document auprès du service RMS
  3. Ajouter un bouton Suivre l’utilisation à votre application

Les détails de l’implémentation de ces étapes suivent.

1. Ajouter des métadonnées de suivi de document

Le suivi de documents est une fonctionnalité du système Rights Management. En ajoutant des métadonnées spécifiques pendant le processus de protection d’un document, vous pouvez inscrire le document auprès d’un portail de services offrant différentes options de suivi.

Utilisez ces API pour ajouter/mettre à jour une licence de contenu avec les métadonnées de suivi des documents.

Du point de vue opérationnel, seules les propriétés nom du contenu et type de notification sont nécessaires pour le suivi des documents.

  • IpcCreateLicenseMetadataHandle

  • IpcSetLicenseMetadataProperty

    Vous définirez sans doute toutes les propriétés des métadonnées. Celles-ci, classées par type, sont répertoriées ci-dessous.

    Pour plus d’informations, consultez Types de propriétés des métadonnées de licence.

    • IPC_MD_CONTENT_PATH

      Permet d’identifier le document faisant l’objet d’un suivi. S’il est impossible de fournir un chemin complet, indiquez simplement le nom du fichier.

    • IPC_MD_CONTENT_NAME

      Permet d’identifier le nom du document faisant l’objet d’un suivi.

    • IPC_MD_NOTIFICATION_TYPE

      Permet d’indiquer quand la notification est envoyée. Pour plus d’informations, consultez Type de notification.

    • IPC_MD_NOTIFICATION_PREFERENCE

      Permet d’indiquer le type de notification. Pour plus d’informations, consultez Préférence de notification.

    • IPC_MD_DATE_MODIFIED

      Nous vous suggérons de définir cette date chaque fois que l’utilisateur clique sur Enregistrer.

    • IPC_MD_DATE_CREATED

      Permet de définir la date de création du fichier.

  • IpcSerializeLicenseWithMetadata

Utilisez l’API appropriée parmi celles-ci pour ajouter les métadonnées à votre fichier ou flux.

Enfin, utilisez cette API pour inscrire votre document faisant l’objet d’un suivi auprès du système de suivi.

2. Inscrire le document auprès du service RMS

Voici un exemple d’extrait de code illustrant la définition des métadonnées de suivi de document et l’appel utilisé pour inscrire le document auprès du système de suivi.

C++:

    HRESULT hr = S_OK;
    LPCWSTR wszOutputFile = NULL;
    wstring wszWorkingFile;
    IPC_LICENSE_METADATA md = {0};

    md.cbSize = sizeof(IPC_LICENSE_METADATA);
    md.dwNotificationType = IPCD_CT_NOTIFICATION_TYPE_ENABLED;
    md.dwNotificationPreference = IPCD_CT_NOTIFICATION_PREF_DIGEST;
    //file origination date, current time for this example
    md.ftDateCreated = GetCurrentTime();
    md.ftDateModified = GetCurrentTime();

    LOGSTATUS_EX(L"Encrypt file with official template...");

    hr =IpcfEncryptFileWithMetadata( wszWorkingFile.c_str(),
                             m_wszTestTemplateID.c_str(),
                             IPCF_EF_TEMPLATE_ID,
                             0,
                             NULL,
                             NULL,
                             &md,
                             &wszOutputFile);

   /* This will contain the serialized license */
   PIPC_BUFFER pSerializedLicense;

   /* the context to use for the call */
   PCIPC_PROMPT_CTX pContext;

   wstring wstrContentName("MyDocument.txt");
   bool sendLicenseRegistrationNotificationEmail = FALSE;

   hr = IpcRegisterLicense( pSerializedLicense,
                      0,
                      pContext,
                      wstrContentName.c_str(),
                      sendLicenseRegistrationNotificationEmail);

Ajouter un bouton Suivre l’utilisation à votre application

Ajouter un élément d’interface utilisateur Suivre l’utilisation à votre application est aussi simple qu’utiliser l’un des formats d’URL suivants :

  • Utilisation de l’ID de contenu

    • Obtenez l’ID de contenu à l’aide de IpcGetLicenseProperty ou IpcGetSerializedLicenseProperty si la licence est sérialisée et utilisez la propriété de licence IPC_LI_CONTENT_ID. Pour plus d’informations, consultez Types de propriété de licence.

    • Avec les métadonnées ContentId et Émetteur , utilisez le format suivant : https://track.azurerms.com/#/{ContentId}/{Issuer}

      Exemple : https://track.azurerms.com/#/summary/05405df5-8ad6-4905-9f15-fc2ecbd8d0f7/janedoe@microsoft.com

  • Si vous n’avez pas accès à ces métadonnées (c’est-à-dire que vous examinez la version non protégée du document), vous pouvez utiliser le Content_Name au format suivant : https://track.azurerms.com/#/?q={ContentName}

    Exemple - https://track.azurerms.com/#/?q=Secret!.txt

Le client doit simplement ouvrir un navigateur avec l’URL appropriée. Le portail de suivi des documents RMS gère l’authentification et toute redirection requise.