zestaw SDK Microsoft Information Protection — koncepcje obiektu Profile i Engine
Profile
Gdzie jest klasa przechowywania ustawień specyficznych dla zestawu SDK, profil jest klasą główną dla wszystkich operacji z etykietami i ochroną miP w zestawie MipContext SDK miP. Przed użyciem dowolnego z trzech zestawów interfejsu API aplikacja klienckia musi utworzyć profil. Przyszłe operacje są wykonywane przez profil lub inne obiekty dodane do profilu. Zalecany jest tylko jeden obiekt profilu na proces. Utworzenie więcej niż jednego może spowodować nieoczekiwane zachowanie.
Zestaw SDK miP ma trzy typy profilów:
PolicyProfile: Klasa profilu zestawu SDK zasad MIP.ProtectionProfile: Klasa profilu zestawu SDK ochrony przed zabezpieczeniami MIP.FileProfile: Klasa profilu zestawu SDK plików MIP.
Interfejs API używany w aplikacji, która będzie używana, określa, która klasa profilu ma być używana.
Sam profil udostępnia następujące funkcje:
- Określa, czy stan ma być ładowany w pamięci, czy trwały na dysku, czy trwały na dysku, czy zaszyfrowany.
- Definiuje to,
mip::ConsentDelegatektóre mają być używane na podstawie operacji zgody. - Definiuje
mip::FileProfile::Observerimplementację, która będzie używana do asynchronicznych wywołań w przypadku operacji profilu.
Profil Ustawienia
MipContext:MipContextObiekt, który został zainicjowany w celu przechowywania informacji o aplikacji, ścieżka województwa itp.CacheStorageType: Definiuje sposób przechowywania stanu: W pamięci, na dysku lub na dysku i zaszyfrowany.consentDelegate: Udostępniony wskaźnik zajęćmip::ConsentDelegate.observer: Udostępniony wskaźnik implementacjiObserverprofilu (wPolicyProfile, iProtectionProfileFileProfile).applicationInfo:mip::ApplicationInfoobiekt. Informacje o aplikacji, która konsumuje zestaw SDK, który jest Azure Active Directory identyfikatora i nazwy rejestracji aplikacji.
Aparaty
Aparaty SDK Plik, Profil i Ochrona zapewniają interfejs dla operacji wykonywanych przez określoną tożsamość. Jeden aparat jest dodawany do obiektu Profile dla każdego użytkownika lub podmiotu zabezpieczeń usługi, który się insekwuje do aplikacji. Operacje delegowane można wykonywać za pośrednictwem programu obsługi plików mip::ProtectionSettings lub ochrony. Aby uzyskać więcej szczegółowych informacji, zobacz sekcję ustawień ochrony w pojęciach obsługi plików.
Zestaw SDK ma trzy klasy aparatów, po jednym dla każdego interfejsu API. Na poniższej liście przedstawiono klasy aparatów oraz kilka funkcji skojarzonych z każdą z nich:
mip::ProtectionEnginemip::PolicyEngineListSensitivityLabels(): pobiera listę etykiet dla załadowanego aparatu.GetSensitivityLabel(): pobiera etykietę z istniejącej zawartości.ComputeActions(): Razem z identyfikatorem etykiety i opcjonalnymi metadanymi zwraca listę akcji, które powinny wystąpić dla określonego elementu.
mip::FileEngineListSensitivityLabels(): pobiera listę etykiet dla załadowanego aparatu.CreateFileHandler(): tworzy określonymip::FileHandlerplik lub strumień.
Tworzenie aparatu wymaga podania określonego obiektu ustawień aparatu zawierającego ustawienia typu aparatu, który ma zostać utworzony. Obiekt settings umożliwia deweloperowi określenie szczegółów dotyczących identyfikatora aparatu, implementacji, ustawień regionalnych i niestandardowych, a także innych szczegółów specyficznych dla mip::AuthDelegate interfejsu API.
Stany aparatów
Aparat może mieć jeden z dwóch stanów:
CREATEDUtworzono wskazuje, że zestaw SDK zawiera wystarczającą ilość informacji o stanie lokalnym po wywołaniu wymaganych usług zaplecza.LOADED: Zestaw SDK sbudowył struktury danych wymagane do działania aparatu.
Aby wykonać wszystkie operacje, należy zarówno utworzyć aparat, jak i załadować go. Klasa Profile udostępnia kilka metod zarządzania AddEngineAsync aparatem: DeleteEngineAsync , i UnloadEngineAsync .
W poniższej tabeli opisano możliwe stany aparatów oraz metody, które mogą zmienić ten stan:
| Stan aparatu | NONE | UTWORZONO | ZAŁADOWANO |
|---|---|---|---|
| NONE | AddEngineAsync | ||
| UTWORZONO | DeleteEngineAsync | AddEngineAsync | |
| ZAŁADOWANO | DeleteEngineAsync | UnloadEngineAsync |
Identyfikator aparatu
Każdy aparat ma id identyfikator unikatowy, który jest używany we wszystkich operacjach zarządzania aparatem. Aplikacja może dostarczyć kod lub zestaw SDK może go wygenerować, jeśli nie jest on id dostarczony przez aplikację. Wszystkie pozostałe właściwości aparatu (na przykład adres e-mail w informacjach o tożsamości) są nieprzezroczystymi ładami dla zestawu SDK. Zestaw SDK NIE wykonuje żadnej logiki w celu zachowania unikatowości innych właściwości ani nie wymusza żadnych innych ograniczeń.
Ważne
**Najlepszym rozwiązaniem jest użycie unikatowego dla użytkownika identyfikatora aparatu i używanie go za każdym razem, gdy użytkownik wykonuje operację z zestawem SDK. W przypadku braku podania istniejącego, unikatowego identyfikatoru engineId dla użytkownika lub usługi spowoduje dodatkowe odjęcie rundy usługi. Te odejmowania usług mogą skutkować obniżeniem wydajności i ograniczeniem wydajnoś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 aparatami
Jak wspomniano wcześniej, zestaw SDK oferuje trzy metody zarządzania aparatami: AddEngineAsyncDeleteEngineAsync , 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ępni w id programie FileEngineSettings , AddEngineAsync wygeneruje nowy id . Następnie sprawdza, czy aparat, który już istnieje id w lokalnej pamięci podręcznej magazynu. Jeśli tak się stanie, ładowany jest ten aparat. Jeśli aparat nie istnieje w lokalnej pamięci podręcznej, nowy aparat jest tworzony przez wywoływanie niezbędnych interfejsów API i usług zaplecza.
W obu przypadkach, jeśli metoda się powiedzie, aparat zostanie załadowany i gotowy do użycia.
DeleteEngineAsync
Usuwa aparat z danym id . Wszystkie śledzenia aparatu są usuwane z lokalnej pamięci podręcznej.
UnloadEngineAsync
Zwalnia struktury danych w pamięci aparatu z podaną . id Stan lokalny tego aparatu pozostaje nienaruszony i można go ponownie załadować za pomocą AddEngineAsync .
Ta metoda pozwala aplikacji rozsyłać dane o użyciu pamięci przez aparaty zwalniania, które nie powinny być wkrótce używane.
Następne kroki
- Następnie dowiedz się więcej o pojęciach uwierzytelniania i obserwatorach. Program MIP zapewnia rozszerzalny model uwierzytelniania, natomiast obserwatorzy służą do powiadomień o zdarzeniach dla asynchronicznych zdarzeń. Oba są podstawowe i mają zastosowanie do wszystkich zestawów SDK MIP.
- Następnie należy przejść przez koncepcje profilu i aparatu dla zestawów SDK plików, zasad i ochrony.