Bagikan melalui


Mulai cepat: Inisialisasi aplikasi klien untuk SDK Perlindungan (C#)

Mulai cepat ini akan menunjukkan kepada Anda cara menerapkan pola inisialisasi klien, yang digunakan oleh pembungkus MIP SDK .NET saat runtime.

Catatan

Langkah-langkah yang diuraikan dalam mulai cepat ini diperlukan untuk aplikasi klien apa pun yang menggunakan SDK Perlindungan pembungkus MIP .NET. Mulai Cepat ini harus dilakukan secara serial setelah Inisialisasi Aplikasi dan implementasi delegasi Autentikasi dan kelas delegasi Persetujuan.

Prasyarat

Jika Anda belum melakukannya, pastikan untuk:

  • Selesaikan langkah-langkah dalam penyiapan dan konfigurasi SDK Microsoft Information Protection (MIP). Mulai Cepat "Profil Perlindungan dan Mesin yang disiapkan" ini bergantung pada penyiapan dan konfigurasi SDK yang tepat.
  • Opsional:
    • Tinjau Profil dan objek mesin. Objek profil dan mesin adalah konsep universal, yang diperlukan oleh klien yang menggunakan SDK File/Kebijakan/Perlindungan MIP.
    • Tinjau konsep Autentikasi untuk mempelajari bagaimana autentikasi dan persetujuan diterapkan oleh SDK dan aplikasi klien.

Membuat solusi dan proyek Visual Studio

Pertama, kita membuat dan mengonfigurasi solusi dan proyek Visual Studio awal, di mana Mulai Cepat lainnya akan dibuat.

  1. Buka Visual Studio 2017, pilih menu File , Baru, Proyek. Dalam dialog Proyek Baru:

    • Di panel kiri, di bawah Terinstal, Visual C#, pilih Windows Desktop.

    • Di panel tengah, pilih Aplikasi Konsol (.NET Framework)

    • Di panel bawah, perbarui nama proyek, Lokasi, dan nama Solusi yang berisi yang sesuai.

    • Setelah selesai, klik tombol OK di kanan bawah.

      Visual Studio solution creation

  2. Tambahkan paket Nuget untuk MIP File SDK ke proyek Anda:

    • Di Penjelajah Solusi, klik kanan pada simpul proyek (langsung di bawah node atas/solusi), dan pilih Kelola paket NuGet...:
    • Saat tab Pengelola Paket NuGet terbuka di area tab Grup Editor:
      • Pilih Telusur.
      • Masukkan "Microsoft.InformationProtection" di kotak pencarian.
      • Pilih paket "Microsoft.InformationProtection.File".
      • Klik "Instal", lalu klik "OK" saat dialog Konfirmasi perubahan pratinjau ditampilkan.
  3. Ulangi langkah-langkah di atas untuk menambahkan paket SDK Perlindungan MIP, tetapi tambahkan "Microsoft.IdentityModel.Clients.ActiveDirectory" ke aplikasi.

Jika belum diterapkan, ikuti langkah-langkah yang tercantum dalam inisialisasi aplikasi File SDK untuk menerapkan autentikasi dan delegasi persetujuan.

Menginisialisasi Pembungkus Terkelola MIP SDK

  1. Dari Penjelajah Solusi, buka file .cs dalam proyek Anda yang berisi implementasi Main() metode . Ini default ke nama yang sama dengan proyek yang berisinya, yang Anda tentukan selama pembuatan proyek.

  2. Hapus implementasi yang dihasilkan dari main().

  3. Pembungkus terkelola mencakup kelas statis, Microsoft.InformationProtection.MIP digunakan untuk inisialisasi, membuat MipContext, memuat profil, dan merilis sumber daya. Untuk menginisialisasi pembungkus untuk operasi File SDK, panggil MIP.Initialize(), teruskan MipComponent.Protection untuk memuat pustaka yang diperlukan untuk operasi perlindungan.

  4. Di Main() Program.cs tambahkan yang berikut ini, ganti <application-id> dengan ID Pendaftaran Aplikasi Microsoft Entra yang dibuat sebelumnya.

using System;
using System.Threading.Tasks;
using Microsoft.InformationProtection;
using Microsoft.InformationProtection.Exceptions;
using Microsoft.InformationProtection.Protection;

namespace mip_sdk_dotnet_quickstart
{
    class Program
    {
        private const string clientId = "<application-id>";
        private const string appName = "<friendly-name>";

        static void Main(string[] args)
        {
            //Initialize Wrapper for Protection SDK operations
            MIP.Initialize(MipComponent.Protection);
        }
    }
}

Membuat Profil dan Mesin Perlindungan

Seperti disebutkan, profil dan objek mesin diperlukan untuk klien SDK menggunakan API MIP. Lengkapi bagian pengkodean mulai cepat ini, dengan menambahkan kode untuk memuat DLL asli lalu membuat instans profil dan objek mesin.

using System;
using System.Threading.Tasks;
using Microsoft.InformationProtection;
using Microsoft.InformationProtection.Exceptions;
using Microsoft.InformationProtection.Protection;

namespace mip_sdk_dotnet_quickstart
{
     class Program
     {
          private const string clientId = "<application-id>";
          private const string appName = "<friendly-name>";

          static void Main(string[] args)
          {
               // Initialize Wrapper for Protection SDK operations.
               MIP.Initialize(MipComponent.Protection);

               // Create ApplicationInfo, setting the clientID from Azure AD App Registration as the ApplicationId.
               ApplicationInfo appInfo = new ApplicationInfo()
               {
                    ApplicationId = clientId,
                    ApplicationName = appName,
                    ApplicationVersion = "1.0.0"
               };

               // Instantiate the AuthDelegateImpl object, passing in AppInfo.
               AuthDelegateImplementation authDelegate = new AuthDelegateImplementation(appInfo);

               // Create MipConfiguration Object
               MipConfiguration mipConfiguration = new MipConfiguration(appInfo, "mip_data", LogLevel.Trace, false);

               // Create MipContext using Configuration
               mipContext = MIP.CreateMipContext(mipConfiguration);
                
               // Initialize and instantiate the ProtectionProfile.
               // Create the ProtectionProfileSettings object.
               // Initialize protection profile settings to create/use local state.
               var profileSettings = new ProtectionProfileSettings(mipContext,
                                        CacheStorageType.OnDiskEncrypted,                                        
                                        new ConsentDelegateImplementation());

               // Load the Profile async and wait for the result.
               var protectionProfile = Task.Run(async () => await MIP.LoadProtectionProfileAsync(profileSettings)).Result;

               // Create a ProtectionEngineSettings object, then use that to add an engine to the profile.
               var engineSettings = new ProtectionEngineSettings("user1@tenant.com", authDelegate, "", "en-US");
               engineSettings.Identity = new Identity("user1@tenant.com");
               var protectionEngine = Task.Run(async () => await protectionProfile.AddEngineAsync(engineSettings)).Result;

               // Application Shutdown
               // handler = null; // This will be used in later quick starts.
               protectionEngine = null;
               protectionProfile = null;
               mipContext = null;
          }
     }
}
  1. Ganti nilai tempat penampung dalam kode sumber yang Anda tempelkan, menggunakan nilai berikut:

    Placeholder Nilai Contoh
    <application-id> ID Aplikasi Microsoft Entra yang ditetapkan ke aplikasi yang terdaftar dalam "penyiapan dan konfigurasi MIP SDK" (2 instans). 0edbblll-8773-44de-b87c-b8c6276d41eb
    <nama ramah> Nama ramah yang ditentukan pengguna untuk aplikasi Anda. AppInitialization
  2. Sekarang lakukan build akhir aplikasi dan atasi kesalahan apa pun. Kode Anda harus berhasil dibuat.

Langkah berikutnya

Setelah kode inisialisasi selesai, Anda siap untuk mulai cepat berikutnya, tempat Anda akan mulai mengalami SDK Perlindungan MIP.