Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przewodniku Szybki start pokazano, jak używać większej liczby zestawów SDK usługi MIP Protection. Korzystając z jednego z szablonów ochrony wymienionych w poprzednim przewodniku Szybki start, używasz programu obsługi ochrony do szyfrowania tekstu doraźnego. Klasa programu obsługi ochrony uwidacznia różne operacje dotyczące stosowania i usuwania ochrony.
Wymagania wstępne
Jeśli jeszcze tego nie zrobiono, przed kontynuowaniem upewnij się, że zostały spełnione następujące wymagania wstępne:
- Najpierw ukończ Szybki start: wyświetlanie szablonów ochrony (C#), który tworzy początkowe rozwiązanie programu Visual Studio służące do wyświetlania listy szablonów ochrony dostępnych dla uwierzytelnionego użytkownika. Ten przewodnik Szybki start "Szyfrowanie i odszyfrowywanie tekstu" jest oparty na poprzednim przewodniku Szybki start.
- Opcjonalnie: Zapoznaj się z programami obsługi ochrony w koncepcjach SDK MIP.
Dodaj logikę do ustawienia i pobrania szablonu ochrony
Dodaj logikę szyfrowania tekstu tworzonego ad hoc przy użyciu obiektu mechanizmu Protection.
W Eksplorator rozwiązań otwórz plik .cs w projekcie zawierający implementację
Main()metody . Domyślnie ma taką samą nazwę jak projekt zawierający go, który został określony podczas tworzenia projektu.Pod koniec treści elementu
Main()body, w miejscu, w którym zakończono poprzedni przewodnik Szybki start, wstaw następujący kod://Set text to encrypt and template ID string inputText = "<Sample-text>"; string templateId = "<template-id>"; //Create a template based publishing descriptor ProtectionDescriptor protectionDescriptor = new ProtectionDescriptor(templateId); //Create publishing settings using protection descriptor PublishingSettings publishingSettings = new PublishingSettings(protectionDescriptor); //Generate Protection Handler for publishing var publishingHandler = Task.Run(async() => await protectionEngine.CreateProtectionHandlerForPublishingAsync(publishingSettings)).Result; //Encrypt text using Publishing handler long bufferSize = publishingHandler.GetProtectedContentLength(inputText.Length, true); byte[] inputTextBuffer = Encoding.ASCII.GetBytes(inputText); byte[] encryptedTextBuffer = new byte[bufferSize]; publishingHandler.EncryptBuffer(0, inputTextBuffer, encryptedTextBuffer, true); Console.WriteLine("Original text: {0}", inputText); Console.WriteLine("Encrypted text: {0}", Encoding.UTF8.GetString(encryptedTextBuffer)); //Create a Protection handler for consumption using the same publishing license var serializedPublishingLicense = publishingHandler.GetSerializedPublishingLicense(); PublishingLicenseInfo plInfo = PublishingLicenseInfo.GetPublishingLicenseInfo(serializedPublishingLicense, mipContext); ConsumptionSettings consumptionSettings = new ConsumptionSettings(plInfo); var consumptionHandler = protectionEngine.CreateProtectionHandlerForConsumption(consumptionSettings); //Use the handler to decrypt the encrypted text long buffersize = encryptedTextBuffer.Length; byte[] decryptedBuffer = new byte[bufferSize]; var bytesDecrypted = consumptionHandler.DecryptBuffer(0, encryptedTextBuffer, decryptedBuffer, true); byte[] OutputBuffer = new byte[bytesDecrypted]; for (int i = 0; i < bytesDecrypted; i++){ OutputBuffer[i] = decryptedBuffer[i]; } Console.WriteLine("Decrypted content: {0}", Encoding.UTF8.GetString(OutputBuffer)); Console.WriteLine("Press a key to quit."); Console.ReadKey();Na końcu
Main()znajdź blok zamykania aplikacji utworzony przez pierwszy przewodnik Szybki start i dodaj wiersze procedury obsługi:// Application Shutdown publishingHandler = null; consumptionHandler = null; protectionEngine = null; protectionProfile = null; mipContext = null;Zastąp wartości symboli zastępczych w kodzie źródłowym przy użyciu następujących wartości:
Element zastępczy Wartość <przykładowy tekst> Przykładowy tekst, który chcesz zaszyfrować, na przykład: My secure text.<identyfikator szablonu> Identyfikator szablonu skopiowany z danych wyjściowych w konsoli w poprzednim przewodniku wprowadzającym, na przykład: bb7ed207-046a-4caf-9826-647cff56b990.
Kompilowanie i testowanie aplikacji
Skompiluj i przetestuj aplikację kliencą.
Użyj klawiszy Ctrl+Shift+B (rozwiązanie kompilacji), aby skompilować aplikację kliencą. Jeśli nie masz błędów kompilacji, użyj klawisza F5 (Rozpocznij debugowanie), aby uruchomić aplikację.
Jeśli projekt kompiluje się i uruchamia pomyślnie, aplikacja może monitować użytkownika o uwierzytelnienie przez MSAL za każdym razem, gdy SDK wywołuje metodę
AcquireToken(). Jeśli buforowane poświadczenia już istnieją, MSAL nie monituje o zalogowanie, a aplikacja wyświetla listę etykiet, a następnie informacje o zastosowanej etykiecie i zmodyfikowanym pliku.
Original content: My secure text
Encrypted content: c?_hp???Q??+<?
Decrypted content: My secure text
Press a key to quit.
Następne kroki
- Zapoznaj się z przykładem zestawu MIP Protection SDK .NET w GitHub.