Microsoft Information Protection SDK — pojęcia dotyczące obiektów profilów i aparatu
Profile
MipContext
Gdzie jest klasą do przechowywania ustawień specyficznych dla zestawu SDK, profil jest klasą główną dla wszystkich operacji etykietowania i ochrony specyficznych dla ochrony w zestawie MIP SDK. Przed użyciem dowolnego z trzech zestawów interfejsów API aplikacja kliencka musi utworzyć profil. Przyszłe operacje są wykonywane przez profil lub przez inne obiekty dodane do profilu. Zalecany jest tylko pojedynczy obiekt profilu na proces. Utworzenie więcej niż jednego może spowodować nieoczekiwane zachowanie.
Istnieją trzy typy profilów w zestawie MIP SDK:
PolicyProfile
: klasa profilu zestawu MIP Policy SDK.ProtectionProfile
: klasa profilu zestawu MIP Protection SDK.FileProfile
: klasa profilu zestawu MIP File SDK.
Interfejs API używany w aplikacji korzystającej określa, która klasa profilu powinna być używana.
Sam profil zapewnia następujące funkcje:
- Określa, czy stan powinien być załadowany w pamięci, czy utrwalone na dysku, a jeśli jest on utrwalone na dysku, powinien być zaszyfrowany.
- Definiuje element
mip::ConsentDelegate
, który ma być używany do operacji wyrażania zgody. - Definiuje implementację
mip::FileProfile::Observer
, która będzie używana na potrzeby asynchronicznych wywołań zwrotnych dla operacji profilu.
Ustawienia profilu
MipContext
MipContext
: obiekt, który został zainicjowany do przechowywania informacji o aplikacji, ścieżki stanu itp.CacheStorageType
: definiuje sposób przechowywania stanu: w pamięci, na dysku lub na dysku i zaszyfrowane.consentDelegate
: współużytkowany wskaźnik klasymip::ConsentDelegate
.observer
: wskaźnik udostępniony do implementacji profiluObserver
(wPolicyProfile
systemach ,ProtectionProfile
iFileProfile
).applicationInfo
mip::ApplicationInfo
: obiekt. Informacje o aplikacji korzystającej z zestawu SDK zgodnego z identyfikatorem rejestracji i nazwą aplikacji Firmy Microsoft Entra.
Silniki
Aparaty zestawu SDK plików, profilu i ochrony udostępniają interfejs dla operacji wykonywanych przez określoną tożsamość. Jeden aparat jest dodawany do obiektu Profile dla każdego użytkownika lub jednostki usługi, który loguje się do aplikacji. Można wykonywać delegowane operacje za pośrednictwem programu mip::ProtectionSettings
i programu obsługi plików lub ochrony. Aby uzyskać więcej informacji, zobacz sekcję Ustawienia ochrony w temacie FileHandler concepts (Pojęcia dotyczące programu FileHandler).
Istnieją trzy klasy aparatu w zestawie SDK, po jednym dla każdego interfejsu API. Na poniższej liście przedstawiono klasy aparatu i kilka funkcji skojarzonych z poszczególnymi funkcjami:
mip::ProtectionEngine
mip::PolicyEngine
ListSensitivityLabels()
: Pobiera listę etykiet dla załadowanego aparatu.GetSensitivityLabel()
: pobiera etykietę z istniejącej zawartości.ComputeActions()
: Podany z identyfikatorem etykiety i opcjonalnymi metadanymi zwraca listę akcji, które powinny wystąpić dla określonego elementu.
mip::FileEngine
ListSensitivityLabels()
: Pobiera listę etykiet dla załadowanego aparatu.CreateFileHandler()
: tworzymip::FileHandler
element dla określonego pliku lub strumienia.
Utworzenie aparatu wymaga przekazania określonego obiektu ustawień aparatu zawierającego ustawienia typu aparatu, który ma zostać utworzony. Obiekt ustawień umożliwia deweloperowi określenie szczegółów dotyczących identyfikatora aparatu, mip::AuthDelegate
implementacji, ustawień regionalnych i ustawień niestandardowych, a także innych szczegółów specyficznych dla interfejsu API.
Stany aparatu
Aparat może mieć jeden z dwóch stanów:
CREATED
: Utworzono wskazuje, że zestaw SDK ma wystarczającą ilość informacji o stanie lokalnym po wywołaniu wymaganych usług zaplecza.LOADED
: Zestaw SDK utworzył wymagane struktury danych, aby aparat działał.
Aparat musi zostać utworzony i załadowany, aby wykonać dowolne operacje. Klasa Profile
udostępnia kilka metod zarządzania aparatami: AddEngineAsync
, DeleteEngineAsync
i UnloadEngineAsync
.
W poniższej tabeli opisano możliwe stany aparatu i metody, które mogą zmienić ten stan:
Stan aparatu | BRAK | UTWORZONO | ZAŁADOWANY |
---|---|---|---|
BRAK | AddEngineAsync | ||
UTWORZONO | DeleteEngineAsync | AddEngineAsync | |
ZAŁADOWANY | DeleteEngineAsync | UnloadEngineAsync |
Identyfikator aparatu
Każdy aparat ma unikatowy identyfikator , id
który jest używany we wszystkich operacjach zarządzania aparatem. Aplikacja może dostarczyć element id
lub zestaw SDK może go wygenerować, jeśli nie jest on dostarczany przez aplikację. Wszystkie inne właściwości aparatu (na przykład adres e-mail w informacjach o tożsamości) są nieprzezroczyste ładunki dla zestawu SDK. Zestaw SDK nie wykonuje żadnej logiki, aby zachować unikatowe żadne inne właściwości ani wymuszać żadnych innych ograniczeń.
Ważne
**Najlepszym rozwiązaniem jest użycie identyfikatora aparatu unikatowego dla użytkownika i użycie go za każdym razem, gdy użytkownik wykonuje operację z zestawem SDK. Nie można podać istniejącego, unikatowego identyfikatora aparatu dla użytkownika lub usługi spowoduje dodatkowe rundy usług. Te rundy usług mogą spowodować obniżenie wydajności i ograniczenie przepustowości. **
// 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
Metody zarządzania aparatem
Jak wspomniano wcześniej, w zestawie SDK istnieją trzy metody zarządzania aparatami: AddEngineAsync
, DeleteEngineAsync
i UnloadEngineAsync
.
AddEngineAsync
Ta metoda ładuje istniejący aparat lub tworzy go, jeśli jeszcze nie istnieje w stanie lokalnym.
Jeśli aplikacja nie udostępnia elementu id
in FileEngineSettings
, AddEngineAsync
generuje nowy id
element . Następnie sprawdza, czy aparat z tym id
już istnieje w lokalnej pamięci podręcznej magazynu. Jeśli tak, ładuje ten silnik. Jeśli aparat nie istnieje w lokalnej pamięci podręcznej, zostanie utworzony nowy aparat przez wywołanie niezbędnych interfejsów API i usług zaplecza.
W obu przypadkach, jeśli metoda powiedzie się, aparat jest ładowany i gotowy do użycia.
DeleteEngineAsync
Usuwa aparat z danym id
elementem . Wszystkie ślady aparatu są usuwane z lokalnej pamięci podręcznej.
UnloadEngineAsync
Zwalnia struktury danych w pamięci dla aparatu przy użyciu danego id
elementu . Stan lokalny tego aparatu jest nadal nienaruszony i można go ponownie załadować za pomocą polecenia AddEngineAsync
.
Ta metoda pozwala aplikacji być rozsądnie na temat użycia pamięci, zwalniając aparaty, które nie powinny być używane wkrótce.
Następne kroki
- Następnie dowiedz się więcej na temat pojęć związanych z uwierzytelnianiem i obserwatorów. Program MIP udostępnia rozszerzalny model uwierzytelniania, podczas gdy obserwatorzy są używane do dostarczania powiadomień o zdarzeniach asynchronicznych. Oba są podstawowe i mają zastosowanie do wszystkich zestawów SDK usługi MIP.
- Następnie zapoznaj się z pojęciami dotyczącymi profilu i aparatu zestawów SDK plików, zasad i ochrony