Schnellstart: Ver-/Entschlüsseln von Text mit dem MIP SDK (C#)
In diesem Schnellstart erfahren Sie, wie Sie weitere MIP Protection SDKs verwenden. Bei Verwendung einer der Schutzvorlagen, die Sie im vorherigen Schnellstart aufgelistet haben, verwenden Sie einen Schutzhandler zum Verschlüsseln von Ad-hoc-Text. Die Schutzhandlerklasse macht verschiedene Vorgänge zum Anwenden/Entfernen von Schutz verfügbar.
Voraussetzungen
Stellen Sie vor dem Fortfahren sicher, dass die folgenden Voraussetzungen erfüllt sind:
- Schließen Sie zuerst den Schnellstart: Auflisten von Schutzvorlagen (C#) ab, in dem Sie eine Visual Studio-Starterprojektmappe erstellen, um die Schutzvorlagen aufzulisten, die für authentifizierte Benutzer*innen verfügbar sind. Dieser Schnellstart „Ver-/Entschlüsseln von Text“ baut auf dem vorherigen auf.
- Lesen Sie optional die Konzepte zu Schutzhandlern im MIP SDK.
Hinzufügen von Logik zum Festlegen und Abrufen einer Schutzvorlage
Fügen Sie mithilfe des Protection-Engine-Objekts Logik zum Verschlüsseln von Ad-hoc-Text hinzu.
Öffnen Sie mithilfe des Projektmappen-Explorers die CS-Datei in Ihrem Projekt, die die Implementierung der Main()-Methode enthält. Standardmäßig weist sie denselben Namen wie das Projekt auf, in dem sie enthalten ist. Diesen Namen haben Sie bei der Projekterstellung angegeben.
Fügen Sie am Ende des Methodenkörpers von
Main()
, an der Stelle, an der Sie im vorherigen Schnellstart aufgehört haben, den folgenden Code ein://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 licence var serializedPublishingLicense = publishingHandler.GetSerializedPublishingLicense(); PublishingLicenseInfo plInfo = PublishingLicenseInfo.GetPublishingLicenseInfo(serializedPublishingLicense); 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();
Suchen Sie am Ende von
Main()
den Block zum Herunterfahren der Anwendung, den Sie im ersten Schnellstart erstellt haben, und fügen Sie die folgenden Handlerzeile hinzu:// Application Shutdown publishingHandler = null; consumptionHandler = null; protectionEngine = null; protectionProfile = null; mipContext = null;
Ersetzen Sie die Platzhalterwerte im Quellcode durch die folgenden Werte:
Platzhalter Wert <sample-text> Der Beispieltext, den Sie verschlüsseln möchten, z. B. My secure text
.<template-id> Eine Vorlagen-ID, die Sie aus der Konsolenausgabe im vorherigen Schnellstart kopiert haben, z. B. bb7ed207-046a-4caf-9826-647cff56b990
.
Erstellen und Testen der Anwendung
Erstellen und testen Sie die Clientanwendung.
Drücken Sie STRG+UMSCHALT+B (Projektmappe erstellen), um Ihre Clientanwendung zu erstellen. Wenn keine Buildfehler auftreten, verwenden Sie F5 (Debuggen starten), um die Anwendung auszuführen.
Wenn das Projekt erfolgreich erstellt und ausgeführt wird, kann die Anwendung Sie jedes Mal zur Authentifizierung über die ADAL auffordern, wenn das SDK Ihre
AcquireToken()
-Methode aufruft. Wenn bereits zwischengespeicherte Anmeldeinformationen vorhanden sind, werden Sie nicht zur Anmeldung aufgefordert. Die Liste der Bezeichnungen mit den Informationen zur angewandten Bezeichnung und der geänderten Datei wird angezeigt.
Original content: My secure text
Encrypted content: c?_hp???Q??+<?
Decrypted content: My secure text
Press a key to quit.