Udostępnij za pośrednictwem


Często zadawane pytania i problemy dotyczące zestawu SDK usługi Microsoft Information Protection (MIP)

Ten artykuł zawiera odpowiedzi na często zadawane pytania oraz wskazówki dotyczące rozwiązywania problemów ze znanymi problemami i typowymi błędami.

Często zadawane pytania

pytanie: ile etykiet jest obsługiwanych przez zestaw MIP SDK?

  • Zestaw MIP SDK może obsługiwać maksymalnie 500 etykiet ochrony i nie ma limitu dla etykiet bez ochrony.

Pytanie: Czy zestaw MIP SDK obsługuje przetwarzanie typów .pfile z etykietami klasyfikacji?

  • Nie, jest to zgodnie z projektem, ponieważ pliki pfile są chronionymi typami plików. Odszyfruj za pomocą programu MPIP File Labeler przed klasyfikacją.

pytanie: Dlaczego pliki chronione pobierane z usługi Microsoft Teams nie mogą odszyfrować?

  • Jest to znany problem w nieobsługiwanych wersjach zestawu MIP SDK. Uaktualnij zestaw MIP SDK do najnowszej wersji.

pytanie: Jak sprawdzić, które etykiety są stosowane, gdy do pliku zastosowano wiele etykiet z różnych dzierżawców?

  • Wykonaj zapytanie GetLabel w kontekście użytkownika dla każdego najemcy.

Pytanie: Dlaczego moja aplikacja webowa nie może się zainicjować z powodu błędu "InternalError: 'KeyStoreWin32::OpenKey failure: NCryptOpenKey:-2147024894'"?

  • Zestaw SDK zasad może nie załadować profilu podczas inicjowania aplikacji. Ustaw WEBSITE_LOAD_USER_PROFILE=1 w ustawieniu zmiennej środowiskowej aplikacji internetowej i uruchom ponownie aplikację.
    • Nazwa : WEBSITE_LOAD_USER_PROFILE
    • wartość: 1

pytanie: dlaczego moja aplikacja kończy się niepowodzeniem z błędem "KeyStoreWin32::OpenKey: NCryptOpenKey:-2146893788" podczas konfigurowania buforowania OnDiskEncrypted?

  • System Windows może tworzyć profile tymczasowe, gdy profil logowania jest niedostępny. Odczyt z rejestru systemu Windows dla buforowania OnDiskEncrypted Link z tym profilem tymczasowym powoduje błąd OpenKey w dzienniku MIP SDK, co jest rejestrowane przez logi zdarzeń systemu operacyjnego Windows z ID zdarzenia 1511 & 1515. Aby rozwiązać ten problem, skontaktuj się z administratorem, aby rozwiązać problem z tworzeniem profilów tymczasowych.

Zmiany magazynu metadanych

Ogłosiliśmy, że wprowadzamy zmianę w lokalizacji przechowywania metadanych etykiet dla plików pakietu Office (Word, Excel, PowerPoint) w celu obsługi nowych funkcji w usłudze Office 365, SharePoint Online i innych usługach.

Metadane — często zadawane pytania

Pytanie: Czy mają wpływ inne formaty, takie jak PDF?

  • Nie, tylko pliki pakietu Office, w szczególności pliki programów Word, Excel i PowerPoint.

Pytanie: Czy jest wymagana określona wersja zestawu MIP SDK?

  • Zestaw MIP SDK 1.7 lub nowszy jest w pełni zgodny.

Pytanie: Czy istnieje określona wersja klienta pakietu Office, która jest wymagana do korzystania z tej lokalizacji magazynu?

  • Wszyscy klienci Aplikacje Microsoft 365 wydane po wrześniu 2021 r. obsługują tę nową lokalizację metadanych. Nowa lokalizacja magazynu nie jest używana, dopóki administratorzy dzierżawy nie włączą chronionej funkcji współtworzenia.

Pytanie: Czy istniejące metadane są przechowywane jako właściwość niestandardowa w custom.xml być aktualne?

  • L.p. Przy pierwszym zapisaniu dokumentu po włączeniu nowej lokalizacji magazynu metadane etykiet są przenoszone do nowej lokalizacji. Metadane zapisywane za pośrednictwem funkcji LabelingOptions.ExtendedProperties pozostają w custom.xml.

Pytanie: Czy można odczytać metadane etykiety bez zestawu MIP SDK?

  • Tak, ale musisz zaimplementować własny kod, aby przeanalizować plik i wyodrębnić informacje.

Pytanie: Obecnie można łatwo odczytać etykietę, wyodrębniając ciągi par klucz/wartość z pliku. Czy metadane mogą być nadal odczytywane w ten sposób?

  • Tak, metadane są nadal dostępne w pliku XML pliku pakietu Office do odczytu. Aplikacja musi odczytać ustawienie współtworzenia z pliku zasad, aby wiedzieć, że nowy zestaw funkcji jest włączony. To ustawienie definiuje, gdzie odczytywać/zapisywać dane etykiety (custom.xml a labelinfo.xml). Przejrzyj ms-OFFCRYPTO: LabelInfo a niestandardowe właściwości dokumentu | Microsoft Docs. szczegóły implementacji.

Pytanie: Jak mogę określić, czy współtworzenie jest włączone w zasadach etykiet? Stan ustawienia współtworzenia jest zwracany z aparatu zasad. Aplikacja może odczytać nieprzetworzone bajty z aparatu zasad, aby określić stan współtworzenia.

Pytanie: W jaki sposób etykiety są migrowane do nowej lokalizacji?

  • Poniższa logika służy do określania, która sekcja jest odczytywana i używana do odczytu lub zapisu danych etykiet.
Akcja Funkcja nie jest włączona Włączono funkcję
Przeczytaj Etykieta w custom.xml (niechroniona) lub Dokument SummaryInfo (chroniona). Jeśli etykieta istnieje w labelinfo.xml, jest to efektywna etykieta.
Jeśli w labelinfo.xml nie ma etykiety, etykieta w custom.xml lub Doc SummaryInfo jest obowiązującą etykietą.
Write Wszystkie nowe etykiety są zapisywane w custom.xml (niechronione) lub Doc SummaryInfo (chronione). Wszystkie nowe etykiety są zapisywane w labelinfo.xml.

Analizowanie plików

Pytanie: Czy mogę zapisać w tym samym pliku, który jest obecnie odczytywany za pomocą zestawu SDK plików?

Zestaw MIP SDK nie obsługuje równoczesnego odczytywania i zapisywania tego samego pliku. Wszystkie oznaczone etykietami pliki powodują skopiowanie pliku wejściowego z zastosowanymi akcjami etykiet. Aplikacja musi zastąpić oryginalny plik z etykietą.

Obsługa ciągów zestawu SDK

Pytanie: Jak zestaw SDK obsługuje ciągi i jakiego typu ciąg powinienem używać w kodzie?

Zestaw SDK ma być używany międzyplatformowo i używa formatu UTF-8 (Unicode Transformation Format — 8-bitowy) do obsługi ciągów. Konkretne wskazówki zależą od używanej platformy:

Platforma Wskazówki
Natywna dla systemu Windows W przypadku klientów zestawu SDK języka C++ typ std::string standardowej biblioteki języka C++ jest używany do przekazywania ciągów do/z funkcji interfejsu API. Zestaw MIP SDK wewnętrznie zarządza konwersją do/z utF-8. Gdy element std::string jest zwracany z interfejsu API, należy oczekiwać kodowania UTF-8 i odpowiednio zarządzać w przypadku konwertowania ciągu. W niektórych przypadkach ciąg jest zwracany jako część uint8_t wektora (na przykład licencja publikowania (PL)), ale powinien być traktowany jako nieprzezroczystym obiektem blob.

Aby uzyskać więcej informacji i przykładów, zobacz:
  • Funkcja WideCharToMultiByte w celu uzyskania pomocy w konwertowaniu ciągów znaków szerokich na wiele bajtów, takich jak UTF-8.
  • Następujące przykładowe pliki zawarte w pobraniu zestawu SDK:
    • Przykładowe funkcje narzędzia ciągów w programie file\samples\common\string_utils.cppdo konwertowania na/z szerokich ciągów UTF-8.
    • Implementacja w wmain(int argc, wchar_t *argv[])programie file\samples\file\main.cpp , która używa poprzednich funkcji konwersji ciągów.
.NET W przypadku klientów zestawu .NET SDK wszystkie ciągi używają domyślnego kodowania UTF-16 i nie jest wymagana żadna specjalna konwersja. Zestaw MIP SDK wewnętrznie zarządza konwersją do/z utF-16.
Inne platformy Wszystkie inne platformy obsługiwane przez zestaw MIP SDK mają natywną obsługę protokołu UTF-8.

Oznaczanie zawartości

Pytanie: Czy zestaw MIP SDK obsługuje oznaczanie zawartości?

Zestaw MIP SDK nie obsługuje bezpośredniego stosowania oznaczania zawartości, w tym nagłówka, stopki ani znaku wodnego, w żadnych plikach. Gdy metadane etykiety są zapisywane w pliku, zestaw SDK plików zapisuje właściwość metadanych contentBits , aby wskazać, że ochrona została zastosowana (jeśli została skonfigurowana). Nie zapisuje właściwości wskazujących, że zastosowano nagłówek, stopkę lub znak wodny. Po otwarciu pliku w aplikacji konfiguracja oznaczania zawartości powinna być oceniana przez aplikację i zapisywana w pliku podczas zapisywania.

Zestaw SDK ochrony i zasad w systemie Android

Pytanie: Której biblioteki udostępnionej należy używać do integrowania zestawu MIP SDK z aplikacją systemu Android?

Pliki binarne zestawu MIP SDK systemu Android obejmują libmip_core.sopliki , libmip_protection_sdk.solibmip_upe_sdk.so i lipmip_unified.so. libmip_unified.so jest zalecaną biblioteką zawierającą podstawowe, ochrony i biblioteki udostępnione zasad.

Zgodność

Pytanie: Czy zestaw Microsoft Information Protection SDK Federal Information Processing Standard (FIPS) 140-2 jest zgodny?

Zobacz Sprawdzanie poprawności ze standardem FIPS 140-2.

Dokumentacja problemów i błędów

Błąd: "Format pliku nie jest obsługiwany"

Pytanie: Dlaczego podczas próby ochrony lub etykietowania pliku PDF występuje następujący błąd?

Format pliku nie jest obsługiwany

Ten wyjątek wynika z próby ochrony lub etykietowania pliku PDF, który jest podpisany cyfrowo lub chroniony hasłem. Aby uzyskać więcej informacji na temat ochrony i etykietowania plików PDF, zobacz Nowa obsługa szyfrowania plików PDF za pomocą usługi Microsoft Information Protection .

Błąd: "NoPolicyException: zasady etykiet nie zawierały danych"

Pytanie: Dlaczego podczas próby odczytania etykiety lub etykiet listy za pomocą zestawu MIP SDK występuje następujący błąd?

NoPolicyException: zasady etykiet nie zawierały danych, CorrelationId=GUID, CorrelationId.Description=PolicyProfile, NoPolicyError.Category=SyncFile, NoPolicyError.Category=SyncFile=SyncFile

Ten błąd wskazuje, że zasady etykiet nie są publikowane w portal zgodności Microsoft Purview. Postępuj zgodnie z instrukcjami Tworzenie i konfigurowanie etykiet poufności i ich zasad , aby skonfigurować zasady etykietowania.

Jeśli opublikowano zasady etykietowania, upewnij się, że konto użytkownika znajduje się w dowolnych grupach, które są częścią sekcji opublikowanej w konfiguracji zasad etykiet. Aby uzyskać więcej informacji, zobacz Tworzenie i publikowanie etykiet poufności.

Użytkownicy zewnętrzni, w tym użytkownicy-goście, nie mogą uzyskać dostępu do zasad etykiet innej organizacji. Aby uwzględnić tych użytkowników, zaimplementuj mechanizm ponawiania prób. NoPolicyException Jeśli element jest zgłaszany, ustaw FileEngineSettings właściwość ProtectionOnlyEngine na wartość true i ponów próbę żądania. Operacje etykietowania nie będą dostępne dla tego IFileEngine wystąpienia, ale operacje ochrony będą dostępne.

Błąd: "System.ComponentModel.Win32Exception: LoadLibrary failed"

Pytanie: Dlaczego podczas korzystania z otoki zestawu MIP SDK platformy .NET występuje następujący błąd?

System.ComponentModel.Win32Exception: LoadLibrary nie powiodło się dla: [sdk_wrapper_dotnet.dll] podczas wywoływania protokołu MIP. Inicjowanie().

Aplikacja nie ma wymaganego środowiska uruchomieniowego lub nie została skompilowana jako wersja. Aby uzyskać więcej informacji, zobacz Zapewnianie, że aplikacja ma wymagane środowisko uruchomieniowe .

Błąd: "Wyjątek proxyAuthError"

Pytanie: Dlaczego podczas korzystania z zestawu MIP SDK występuje następujący błąd?

"ProxyAuthenticatonError: uwierzytelnianie serwera proxy jest nieobsługiwane"

Zestaw MIP SDK nie obsługuje używania uwierzytelnionych serwerów proxy. Aby rozwiązać ten problem, administratorzy serwera proxy powinni ustawić punkty końcowe usługi Microsoft Purview Information Protection w celu obejścia serwera proxy. Lista tych punktów końcowych jest dostępna na stronie Adresy URL i zakresy adresów IP usługi Office 365. Zestaw MIP SDK wymaga, aby *.protection.outlook.com (wiersz 9) i punkty końcowe usługi Azure Information Protection (wiersz 73) pomijały uwierzytelnianie serwera proxy.

Błąd: "Nieznany błąd" podczas etykietowania pliku obrazu przy użyciu danych wyjściowych strumienia

Pytanie: Dlaczego otrzymuję "nieznany błąd" podczas próby dodania lub usunięcia etykiety lub ochrony z typu pliku obrazu przy użyciu strumienia dla danych wyjściowych?

W przypadku korzystania ze strumienia dla danych wyjściowych strumień musi mieć zarówno dostęp do odczytu, jak i zapisu, aby zmodyfikować etykietę lub ochronę pliku obrazu.

Pytanie: Czy istnieją limity ograniczania oparte na usłudze podczas korzystania z zestawu MIP SDK?

Usługa ochrony używana przez zestaw SDK ochrony lub operacje ochrony w zestawie FILE SDK ma limit 7500 żądań na 10 sekund dla całej organizacji. Oznacza to, że jeśli aplikacja A generuje 4000 żądań na 10 sekund, a aplikacja B w tej samej organizacji generuje 4000 żądań na 10 sekund, obie aplikacje mogą zacząć odbierać HTTP 429 Too Many Requests odpowiedzi. Deweloperzy muszą zaimplementować okres wycofywania po odebraniu tych wyjątków.