Melindungi Kekayaan Intelektual SQL Server Anda

Berlaku untuk:SQL Server

Pengembang perangkat lunak sering bertanya cara mendistribusikan aplikasi data SQL Server mereka kepada pelanggan, namun mencegah pelanggan menganalisis dan mendekonstrasikan aplikasi mereka. Prinsip utama utama di sini, adalah bahwa melindungi kekayaan intelektual Anda, adalah masalah hukum, dan perlindungan berada dalam perjanjian lisensi Anda. Ketika SQL Server diinstal pada komputer yang dikelola orang lain, Anda secara inheren kehilangan beberapa aspek kontrol.

Sifat Masalah

Pemilik/administrator komputer selalu dapat mengakses instans SQL Server yang diinstal pada komputer tersebut. Jika Anda menyebarkan aplikasi Anda ke komputer pelanggan, karena mereka adalah administrator, mereka dapat terhubung ke SQL Server sebagai anggota peran server tetap sysadmin . Ini termasuk kemampuan untuk memberikan izin, mengelola cadangan (termasuk memulihkan cadangan ke komputer lain), mendekripsi dan memindahkan file data, dll. Untuk informasi selengkapnya, lihat Menyambungkan ke SQL Server Saat Administrator Sistem Dikunci.

Prosedur dan data tersimpan dapat dienkripsi, tetapi struktur data tidak dapat disembunyikan dan pengguna yang dapat melampirkan debugger ke proses server dapat mengambil prosedur dan data yang didekripsi dari memori saat runtime.

Jika klien bukan administrator di komputer, Anda dapat mencegah akses oleh klien. Anda dapat menggunakan Enkripsi Data Transparan untuk mengenkripsi file data, Anda dapat mengenkripsi cadangan, dan Anda dapat mengaudit tindakan semua pengguna. Tetapi administrator SQL Server dan admin komputer SQL Server dapat membalikkan tindakan ini.

Solusi

Ada berbagai cara untuk mengonfigurasi akses data klien tanpa menginstal SQL Server di komputer klien Anda. Yang paling mudah mungkin menggunakan Azure SQL Database sehingga klien bukan admin, mungkin dalam kombinasi dengan Always Encrypted. Untuk informasi selengkapnya tentang mulai menggunakan SQL Database, lihat Apa itu SQL Database? Pengantar SQL Database.

Anda juga dapat menghosting SQL Server di jaringan Anda sendiri, dan memungkinkan klien mengakses data melalui jaringan Anda, baik secara langsung atau melalui aplikasi web.

Lihat Juga

Security Center untuk Mesin Database SQL Server dan Azure SQL Database
Mengamankan SQL Server