SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menambahkan string koneksi baru dan sekumpulan kata kunci terbatas ke SqlClientPermission objek.
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 tersebut.
- restrictions
- String
Pembatasan kunci.
- behavior
- KeyRestrictionBehavior
Salah KeyRestrictionBehavior satu enumerasi.
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)
Warning
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 Managed untuk sumber daya Azure, atau Windows authentication 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)
Note
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 memulai dengan semua izin, lalu mencoba menolak penggunaan string koneksi "server=someserver", string "server=someserver.mycompany.com" akan tetap diizinkan. Dengan selalu memulai dengan tidak memberikan izin sama sekali, Anda mengurangi kemungkinan ada lubang dalam kumpulan izin.