DTSProtectionLevel Enum

Definisi

Mengontrol penanganan informasi sensitif dalam paket.

public enum class DTSProtectionLevel
public enum DTSProtectionLevel
type DTSProtectionLevel = 
Public Enum DTSProtectionLevel
Warisan
DTSProtectionLevel

Bidang

DontSaveSensitive 0

Informasi sensitif tidak disimpan dalam paket. Informasi sensitif dihapus dan diganti dengan kosong.

EncryptAllWithPassword 3

Mengenkripsi seluruh paket dengan menggunakan kata sandi.

EncryptAllWithUserKey 4

Mengenkripsi seluruh paket dengan menggunakan kunci berdasarkan profil pengguna. Hanya pengguna yang sama yang menggunakan profil yang sama yang dapat memuat paket.

EncryptSensitiveWithPassword 2

Mengenkripsi hanya informasi sensitif yang terkandung dalam paket dengan menggunakan kata sandi. DPAPI digunakan untuk enkripsi ini.

EncryptSensitiveWithUserKey 1

Mengenkripsi properti sensitif hanya dengan menggunakan kunci berdasarkan pengguna saat ini. Hanya pengguna yang sama yang menggunakan profil yang sama yang dapat memuat paket. Jika pengguna lain membuka paket, informasi sensitif diganti dengan kosong. DPAPI digunakan untuk enkripsi ini.

ServerStorage 5

Mengenkripsi paket dalam database SQL Server msdb. Opsi ini hanya didukung saat paket disimpan ke SQL Server. Ini tidak didukung ketika paket disimpan ke Sistem File. Kontrol akses siapa yang dapat mendekripsi paket dikendalikan oleh peran database SQL Server. Untuk informasi selengkapnya, lihat Database-Level Peran dan sysssispackages (Transact-SQL).

Contoh

Contoh berikut memuat paket, lalu mengambil beberapa properti paket, termasuk yang ProtectionLevel ditetapkan ke paket.

Class PackageTest  
    {  
        static void Main(string[] args)  
        {  
            // The variable pkg points to the location of the  
            // ExecuteProcess package sample  
            // installed with the samples.  
            string pkg = @"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx";  

            Application app = new Application();  
            Package p = app.LoadPackage(pkg, null);  

            // Once the package is loaded, this sample can  
           // query on several properties  
            long cc = p.CertificateContext;  
            string cfn = p.CheckpointFileName;  
            DTSProtectionLevel pl = p.ProtectionLevel;  
            DTSPackageType dpt = p.PackageType;  

            Console.WriteLine("CertificateContext = " + cc);  
            Console.WriteLine("CheckpointFileName = " + cfn);  
            Console.WriteLine("ProtectionLevel = " + pl);  
            Console.WriteLine("PackageType = " + dpt);  
        }  
    }  
Class PackageTest  
    {  
        Shared  Sub Main(ByVal args() As String)  
            ' The variable pkg points to the location of the  
            ' ExecuteProcess package sample  
            ' installed with the samples.  
            Dim pkg As String =  "C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx"   

            Dim app As Application =  New Application()   
            Dim p As Package =  app.LoadPackage(pkg,Nothing)   

            ' Once the package is loaded, this sample can  
           ' query on several properties  
            Dim cc As Long =  p.CertificateContext   
            Dim cfn As String =  p.CheckpointFileName   
            Dim pl As DTSProtectionLevel =  p.ProtectionLevel   
            Dim dpt As DTSPackageType =  p.PackageType   

            Console.WriteLine("CertificateContext = " + cc)  
            Console.WriteLine("CheckpointFileName = " + cfn)  
            Console.WriteLine("ProtectionLevel = " + pl)  
            Console.WriteLine("PackageType = " + dpt)  
        End Sub  
    }  

Contoh Output:

CertificateContext = 0

CheckpointFileName =

ProtectionLevel = EncryptSensitiveWithUserKey

PackageType = Default

Keterangan

Saat menggunakan nilai DontSaveSensitive, jika informasi sensitif terkandung dalam paket, informasi sensitif ini tidak disimpan. Ini adalah nilai default.

Untuk semua nilai, informasi sensitif didefinisikan sebagai:

  • Bagian kata sandi dari string koneksi. Namun, jika Anda memilih opsi yang mengenkripsi semuanya, seluruh string koneksi akan dianggap sensitif.

  • Simpul XML yang dihasilkan tugas yang ditandai dengan Sensitive atribut .

  • Variabel apa pun yang ditandai dengan Sensitive atribut .

Jika Anda memiliki informasi sensitif dalam file konfigurasi, Anda harus menyimpannya ke Microsoft SQL Server, atau menggunakan daftar kontrol akses (ACL) untuk mengamankan lokasi atau folder. Untuk informasi selengkapnya, lihat Membuat Konfigurasi Paket.

Untuk informasi selengkapnya tentang pengaturan tingkat perlindungan paket, lihat Access Control untuk Data Sensitif dalam Paket.

Enkripsi dilakukan dengan menggunakan dua metode. Microsoft Data Protection API (DPAPI), yang merupakan bagian dari API Kriptografi (Crypto API), digunakan untuk tingkat EncryptAllWithUserKey perlindungan dan EncryptSensitiveWithUserKey. Kelas TripleDES ini digunakan untuk tingkat EncryptAllWithPassword perlindungan dan EncryptSensitiveWithPassword.

Untuk informasi selengkapnya, lihat Kelas TripleDES di Pustaka Kelas .NET Framework.

Berlaku untuk