Microsoft Information Protection SDK - profil ve altyapı nesnesi kavramları

Profiller

MipContext sınıfı, SDK'ye özgü ayarları depolar. Profil, MIP SDK'sı içindeki tüm MIP etiketleme ve korumaya özgü işlemlerin kök sınıfıdır. Üç API kümesinden herhangi birini kullanmadan önce istemci uygulamasının bir profil oluşturması gerekir. Profil veya profile eklenen diğer nesneler gelecekteki işlemleri gerçekleştirir. İşlem başına yalnızca bir profil nesnesi kullanın. Birden fazla oluşturma beklenmeyen davranışlara neden olabilir.

MIP SDK'sının üç tür profili vardır:

Kullanan uygulamanın kullandığı API, hangi profil sınıfının kullanılacağını belirler.

Profilin kendisi aşağıdaki işlevleri sağlar:

  • Durum depolama: Bellekte durum yüklenip yüklenmeymeyeceğini veya diskte kalıcı hale getirip getirmek ve diskte kalıcı hale getirilirse durumun şifrelenip şifrelenmeyeceğini tanımlar.
  • Onay temsilcisi: Onay işlemleri için kullanılacak mip::ConsentDelegate öğesini tanımlar.
  • Dosya profili gözlemcisi: Profil işlemleri için zaman uyumsuz geri çağırmalar için kullanılacak uygulamayı tanımlar mip::FileProfile::Observer .

Profil ayarları

  • MipContext MipContext: Uygulama bilgilerini, durum yolunu vb. depolamak için başlatılan nesne.
  • CacheStorageType: Durumu nasıl depolayacağını tanımlar: Bellekte, diskte veya şifrelenmiş halde diskte.
  • consentDelegate: sınıfının mip::ConsentDelegatepaylaşılan işaretçisi.
  • observer: Profil Observer uygulamasının (PolicyProfile, ProtectionProfile ve FileProfile içinde) paylaşılan işaretçisi.
  • applicationInfo: Bir mip::ApplicationInfo nesne. SDK kullanan ve Microsoft Entra uygulama kayıt kimliğiniz ve adınız ile eşleşen uygulama hakkında bilgiler.

Motorlar

Dosya, İlke ve Koruma SDK'sı altyapıları, belirli bir kimlik tarafından gerçekleştirilen işlemler için bir arabirim sağlar. Uygulamada oturum açmış her kullanıcı veya hizmet sorumlusu için profil nesnesine bir altyapı ekleyin. mip::ProtectionSettings ile dosya veya koruma işleyicisini kullanarak temsilci işlemleri gerçekleştirebilirsiniz. Daha fazla bilgi için FileHandler kavramlarının koruma ayarları bölümüne bakın.

SDK'nın her API için bir tane olan üç altyapı sınıfı vardır. Aşağıdaki listede motor sınıfları ve bunlarla ilişkili birkaç işlev gösterilmektedir.

  • mip::ProtectionEngine
  • mip::PolicyEngine
    • ListSensitivityLabels(): Yüklenen motor için etiketlerin listesini alır.
    • GetSensitivityLabel(): Etiketi mevcut içerikten alır.
    • ComputeActions(): Etiket kimliği ve isteğe bağlı meta veriler ile birlikte sağlanan, belirli bir öğe için gerçekleşmesi gereken eylemlerin listesini döndürür.
  • mip::FileEngine
    • ListSensitivityLabels(): Yüklenen motor için etiketlerin listesini alır.
    • CreateFileHandler(): Belirli bir dosya veya akış için bir mip::FileHandler oluşturur.

Altyapı oluşturmak için, oluşturulacak altyapı türünün ayarlarını içeren belirli bir altyapı ayarları nesnesini geçirin. ayarlar nesnesi, geliştiricinin altyapı tanımlayıcısı, uygulama, mip::AuthDelegate yerel ayar, özel ayarlar ve API'ye özgü diğer ayrıntılarla ilgili ayrıntıları belirtmesine olanak tanır.

Motor durumları

Bir motor iki durumdan birinde olabilir:

  • CREATED: Oluşturuldu, gerekli arka uç hizmetleri çağrıldıktan sonra SDK'nın yeterli yerel durum bilgisi olduğunu gösterir.
  • LOADED: SDK, altyapının çalışır durumda olması için gerekli veri yapılarını oluşturms.

Motorun herhangi bir işlemi gerçekleştirmesi için hem oluşturulması hem de yüklenmesi gerekir. Profile sınıfı birkaç altyapı yönetim yöntemini kullanıma sunar: AddEngineAsync, DeleteEngineAsync, ve UnloadEngineAsync.

Aşağıdaki tabloda olası altyapı durumları ve bu durumu değiştirebilecek yöntemler açıklanmaktadır:

Motor durumu HİÇBİRİ OLUŞTURULDU YÜKLÜ
HİÇBİRİ AddEngineAsync
OLUŞTURULDU DeleteEngineAsync AddEngineAsync
YÜKLÜ DeleteEngineAsync UnloadEngineAsync

Motor Kimliği

Her motorun, tüm motor yönetimi işlemlerinde kullanılan benzersiz bir tanımlayıcısı, id, vardır. Uygulama bir id sağlayabilir. Uygulama sağlamazsa SDK bunu oluşturabilir. Kimlik bilgilerindeki e-posta adresi gibi diğer tüm altyapı özellikleri SDK'nın opak yükleridir. SDK, diğer özellikleri benzersiz tutmak veya diğer kısıtlamaları zorlamak için mantık gerçekleştirmez.

Önemli

Kullanıcıya özgü bir altyapı kimliği kullanın ve kullanıcı SDK ile her işlem gerçekleştirişinde bu altyapı kimliğini kullanın. Bir kullanıcı veya hizmet için mevcut, benzersiz bir altyapı kimliği sağlamazsanız SDK ek hizmet gidiş dönüşleri yapar. Hizmete yapılan bu gidiş-dönüşler, performans düşüşüne ve kısıtlamaya neden olabilir.

// 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

Motor yönetimi yöntemleri

SDK'nın üç altyapı yönetim yöntemi vardır: AddEngineAsync, DeleteEngineAsyncve UnloadEngineAsync.

AddEngineAsync

Bu yöntem mevcut bir motoru yükler veya yerel durumda zaten mevcut değilse bir motor oluşturur.

Uygulama id ve FileEngineSettings sağlamazsa, AddEngineAsync yeni bir id oluşturur. Ardından, yerel depolama önbelleğinde o id ile bir motorun zaten mevcut olup olmadığını denetler. Bunu yaparsa, o motoru yükler. Altyapı yerel önbellekte yoksa , gerekli API'ler ve arka uç hizmetleri çağrılarak yeni bir altyapı oluşturulur.

Her iki durumda da yöntem başarılı olursa motor yüklenir ve kullanıma hazır olur.

DeleteEngineAsync

Verilen id ile motoru siler. Motorun tüm izleri yerel önbellekten kaldırılır.

UnloadEngineAsync

Verilen id ile motor için bellek içi veri yapılarını kaldırır. Bu motorun yerel durumu bozulmadan korunur ve AddEngineAsync ile yeniden yükleyebilirsiniz.

Bu yöntem, yakın zamanda kullanılması beklenmeyen motorları kaldırarak uygulamanın bellek kullanımı konusunda dikkatli olmasını sağlar.

Sonraki Adımlar