Sdílet prostřednictvím


SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Metoda

Definice

Přidá do objektu nový připojovací řetězec a sadu omezených klíčových slov 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)

Parametry

connectionString
String

Připojovací řetězec

restrictions
String

Omezení klíče.

behavior
KeyRestrictionBehavior

Jeden z KeyRestrictionBehavior výčtů.

Poznámky

Pomocí této metody můžete nakonfigurovat, které připojovací řetězce jsou povoleny konkrétním objektem oprávnění. Pokud chcete povolit jenom konkrétní připojovací řetězec a nic jiného, použijte například následující fragment kódu:

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

Následující příklad umožňuje připojovací řetězce, které používají libovolnou databázi, ale pouze na serveru s názvem MyServer, s libovolnou kombinací uživatele a hesla a neobsahující žádná další klíčová slova připojovacího řetězce:

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

Následující příklad používá stejný scénář jako výše, ale umožňuje partnera pro převzetí služeb při selhání, který lze použít při připojování k serverům nakonfigurovaným pro zrcadlení:

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

Poznámka

Při použití bezpečnostních oprávnění přístupu ke kódu pro ADO.NET je správným vzorem začít s nejvíce omezujícím případem (vůbec žádná oprávnění) a pak přidat konkrétní oprávnění, která jsou potřebná pro konkrétní úlohu, kterou má kód provést. Opačný model, počínaje všemi oprávněními a pokusem o odepření konkrétního oprávnění, není bezpečný, protože existuje mnoho způsobů vyjádření stejného připojovacího řetězce. Pokud například začnete se všemi oprávněními a pak se pokusíte odepřít použití připojovacího řetězce "server=someserver", řetězec "server=someserver.mycompany.com" bude stále povolený. Tím, že vždy začnete tím, že neudělíte vůbec žádná oprávnění, snížíte pravděpodobnost, že v sadě oprávnění budou díry.

Platí pro