Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Profils
La MipContext classe stocke les paramètres spécifiques au Kit de développement logiciel (SDK). Le profil est la classe racine de toutes les opérations d’étiquetage et de protection MIP spécifiques au SDK MIP. Avant d’utiliser l’un des trois ensembles d’API, l’application cliente doit créer un profil. Le profil ou d’autres objets ajoutés au profil effectuent des opérations ultérieures. Utilisez un seul objet de profil par processus. La création de plusieurs peut entraîner un comportement inattendu.
Le Kit de développement logiciel (SDK) MIP a trois types de profil :
-
PolicyProfile: classe de profil pour le SDK de stratégie MIP. -
ProtectionProfile: classe de profil pour le SDK de protection MIP. -
FileProfile: classe de profil pour le SDK de fichier MIP.
L’API utilisée par l’application consommatrice détermine la classe de profil à utiliser.
Le profil lui-même offre la fonctionnalité suivante :
- Stockage d’état : définit s’il faut charger l’état en mémoire ou le conserver sur le disque, et s’il faut chiffrer l’état s’il est conservé sur le disque.
-
Délégué de consentement : définit l’utilisation
mip::ConsentDelegatepour les opérations de consentement. -
Observateur de profil de fichier : définit l’implémentation
mip::FileProfile::Observerà utiliser pour les rappels asynchrones pour les opérations de profil.
Paramètres de profil
-
MipContext: L’objetMipContextinitialisé pour stocker les informations de l’application, le chemin d’état, etc. -
CacheStorageType: Définit comment stocker l’état : en mémoire, sur le disque ou sur le disque et chiffré. -
consentDelegate: pointeur partagé de classemip::ConsentDelegate. -
observer: pointeur partagé vers l’implémentation du profilObserver(dansPolicyProfile,ProtectionProfileetFileProfile). -
applicationInfo: un objetmip::ApplicationInfo. Informations sur l’application qui consomme le Kit de développement logiciel (SDK) et correspond à votre ID et nom d’inscription d’application Microsoft Entra.
Moteurs
Les moteurs du Kit de développement logiciel (SDK) File, Policy et Protection fournissent une interface pour les opérations effectuées par une identité spécifique. Ajoutez un moteur à l’objet de profil pour chaque utilisateur ou principal de service qui se connecte à l’application. Vous pouvez effectuer des opérations déléguées à l’aide de mip::ProtectionSettings et du gestionnaire de fichiers ou du gestionnaire de protection. Pour plus d’informations, consultez la section des paramètres de protection dans les concepts de FileHandler.
Le Kit de développement logiciel (SDK) comporte trois classes de moteur, une pour chaque API. La liste suivante présente les classes de moteur et quelques-unes des fonctions associées à chacune d’elles :
mip::ProtectionEnginemip::PolicyEngine-
ListSensitivityLabels(): obtient la liste des étiquettes pour le moteur chargé. -
GetSensitivityLabel(): obtient le label à partir du contenu existant. -
ComputeActions(): fourni avec un ID d’étiquette et des métadonnées facultatives, retourne la liste des actions qui doivent se produire pour un élément spécifique.
-
mip::FileEngine-
ListSensitivityLabels(): obtient la liste des étiquettes pour le moteur chargé. -
CreateFileHandler(): crée unmip::FileHandlerpour un fichier ou un flux spécifique.
-
Pour créer un moteur, transmettez un objet de paramètres de moteur spécifique qui contient les paramètres du type de moteur à créer. L’objet paramètres permet au développeur de spécifier des détails sur l’identificateur du moteur, l’implémentation mip::AuthDelegate , les paramètres régionaux, les paramètres personnalisés et d’autres détails spécifiques à l’API.
États du moteur
Un moteur peut avoir l’un des deux états suivants :
-
CREATED: cet état indique que le SDK dispose de suffisamment de données d’état local après avoir appelé les services backend requis. -
LOADED: le kit de développement logiciel (SDK) a créé les structures de données requises pour que le moteur soit opérationnel.
Un moteur doit être créé et chargé pour effectuer toutes les opérations. La classe Profile expose quelques méthodes de gestion du moteur : AddEngineAsync, DeleteEngineAsync et UnloadEngineAsync.
Le tableau suivant décrit les états du moteur possibles et les méthodes qui peuvent changer cet état :
| État moteur | Aucune | CREATED | CHARGÉ |
|---|---|---|---|
| Aucune | AddEngineAsync | ||
| CREATED | DeleteEngineAsync | AddEngineAsync | |
| CHARGÉ | DeleteEngineAsync | UnloadEngineAsync |
ID du moteur
Chaque moteur a un identificateur unique, idutilisé dans toutes les opérations de gestion du moteur. L’application peut fournir un id. Si l’application n’en fournit pas, le Kit de développement logiciel (SDK) peut le générer. Toutes les autres propriétés du moteur, telles que l’adresse e-mail dans les informations d’identité, sont des charges utiles opaques pour le Kit de développement logiciel (SDK). Le Kit de développement logiciel (SDK) n’effectue pas de logique pour conserver d’autres propriétés uniques ou appliquer d’autres contraintes.
Importante
Utilisez un ID de moteur unique à l’utilisateur et utilisez cet ID de moteur chaque fois que l’utilisateur effectue une opération avec le Kit de développement logiciel (SDK). Si vous ne fournissez pas d’ID de moteur unique existant pour un utilisateur ou un service, le SDK effectue des allers-retours de service supplémentaires. Ces allers-retours de service peuvent entraîner une dégradation et une limitation des performances.
// Create the FileEngineSettings object
FileEngine::Settings engineSettings(mip::Identity(mUsername), // This will be the engine ID. UPN, email address, or other unique user identifiers are recommended.
mAuthDelegate, // authDelegate implementation
"", // ClientData
"en-US", // Client Locale
false); // Load Sensitive Information Types
Méthodes de gestion du moteur
Le Kit de développement logiciel (SDK) a trois méthodes de gestion du moteur : AddEngineAsync, DeleteEngineAsyncet UnloadEngineAsync.
AddEngineAsync
Cette méthode charge un moteur existant ou en crée un s’il n’existe pas déjà dans l’état local.
Si l’application ne fournit pas un id dans FileEngineSettings, AddEngineAsync génère un nouvel id. Il vérifie ensuite si un moteur avec ce id existe déjà dans le cache de stockage local. Si tel est le cas, il charge alors le moteur. Si le moteur n’existe pas dans le cache local, un nouveau moteur est créé en appelant les API et les services principaux nécessaires.
Dans les deux cas, si la méthode réussit, le moteur est chargé et prêt à être utilisé.
DeleteEngineAsync
Supprime le moteur avec le id donné. Toutes les traces du moteur sont supprimées du cache local.
UnloadEngineAsync
Décharge les structures de données en mémoire du moteur avec le id spécifié. L’état local de ce moteur reste intact et vous pouvez le recharger avec AddEngineAsync.
Cette méthode permet à l’application d’être judicieuse au sujet de l’utilisation de la mémoire, en déchargeant les moteurs qui ne sont pas censés être utilisés prochainement.
Étapes suivantes
- Concepts d’authentification et observateurs. MIP fournit un modèle d’authentification extensible, tandis que les observateurs fournissent des notifications d’événements pour les événements asynchrones. Les deux sont fondamentaux et s’appliquent à tous les kits SDK MIP.
- Concepts de profil et de moteur : découvrez les concepts de profil et de moteur pour les SDK File, Policy et Protection.