Bagikan melalui


SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Metode

Definisi

Menambahkan string koneksi baru dan sekumpulan kata kunci terbatas ke objek SqlClientPermission.

public:
 override void Add(System::String ^ connectionString, System::String ^ restrictions, System::Data::KeyRestrictionBehavior behavior);
public override void Add (string connectionString, string restrictions, System.Data.KeyRestrictionBehavior behavior);
override this.Add : string * string * System.Data.KeyRestrictionBehavior -> unit
Public Overrides Sub Add (connectionString As String, restrictions As String, behavior As KeyRestrictionBehavior)

Parameter

connectionString
String

String koneksi.

restrictions
String

Pembatasan kunci.

behavior
KeyRestrictionBehavior

Salah satu enumerasi KeyRestrictionBehavior.

Keterangan

Gunakan metode ini untuk mengonfigurasi string koneksi mana yang diizinkan oleh objek izin tertentu. Misalnya, gunakan fragmen kode berikut jika Anda hanya ingin mengizinkan string koneksi tertentu dan tidak ada yang lain:

permission.Add("server=MyServer; database=MyDatabase; Integrated Security=true", "", KeyRestrictionBehavior.AllowOnly)

Contoh berikut memungkinkan string koneksi yang menggunakan database apa pun, tetapi hanya di server bernama MyServer, dengan kombinasi pengguna dan kata sandi apa pun dan tidak berisi kata kunci string koneksi lainnya:

permission.Add("server=MyServer;", "database=; user id=; password=;", KeyRestrictionBehavior.AllowOnly)

Peringatan

Microsoft tidak menyarankan untuk memberikan nama pengguna dan kata sandi Anda secara langsung, karena ini adalah pola yang tidak aman. Jika memungkinkan, gunakan alur autentikasi yang lebih aman, seperti identitas terkelola untuk sumber daya Azure, atau autentikasi Windows untuk SQL Server.

Contoh berikut menggunakan skenario yang sama dengan yang sebelumnya, tetapi memungkinkan mitra failover yang dapat digunakan saat menyambungkan ke server yang dikonfigurasi untuk pencerminan:

permission.Add("server=MyServer; failover partner=MyMirrorServer", "database=; user id=; password=;", KeyRestrictionBehavior.AllowOnly)

Nota

Saat menggunakan izin keamanan akses kode untuk ADO.NET, pola yang benar adalah memulai dengan kasus yang paling ketat (tidak ada izin sama sekali) lalu menambahkan izin tertentu yang diperlukan untuk tugas tertentu yang perlu dilakukan kode. Pola yang berlawanan, dimulai dengan semua izin dan kemudian mencoba menolak izin tertentu, tidak aman, karena ada banyak cara untuk mengekspresikan string koneksi yang sama. Misalnya, jika Anda mulai dengan semua izin lalu mencoba menolak penggunaan string koneksi "server=someserver", string "server=someserver.mycompany.com" masih akan diizinkan. Dengan selalu memulai dengan tidak memberikan izin sama sekali, Anda mengurangi kemungkinan adanya lubang dalam set izin.

Berlaku untuk

Lihat juga