SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Metoda

Definicja

Dodaje nowy parametry połączenia i zestaw ograniczonych słów kluczowych do SqlClientPermission obiektu.

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

Parametry połączenia.

restrictions
String

Kluczowe ograniczenia.

behavior
KeyRestrictionBehavior

Jeden z KeyRestrictionBehavior wyliczeń.

Uwagi

Ta metoda służy do konfigurowania parametrów połączenia dozwolonych przez określony obiekt uprawnień. Na przykład użyj następującego fragmentu kodu, jeśli chcesz zezwolić tylko na określone parametry połączenia i nic innego:

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

W poniższym przykładzie można używać parametrów połączenia, które używają dowolnej bazy danych, ale tylko na serwerze o nazwie MyServer z dowolną kombinacją użytkownika i hasła i nie zawierają żadnych innych parametry połączenia słów kluczowych:

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

W poniższym przykładzie użyto tego samego scenariusza co powyżej, ale można użyć partnera trybu failover, który może być używany podczas nawiązywania połączenia z serwerami skonfigurowanymi do dublowania:

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

Uwaga

W przypadku używania uprawnień zabezpieczeń dostępu kodu dla ADO.NET prawidłowym wzorcem jest rozpoczęcie od najbardziej restrykcyjnego przypadku (w ogóle bez uprawnień), a następnie dodanie określonych uprawnień wymaganych do określonego zadania, które musi wykonać kod. Odwrotny wzorzec, zaczynając od wszystkich uprawnień, a następnie próbując odmówić określonego uprawnienia, nie jest bezpieczny, ponieważ istnieje wiele sposobów wyrażania tego samego parametry połączenia. Jeśli na przykład rozpoczniesz od wszystkich uprawnień, a następnie spróbujesz odmówić użycia parametry połączenia "server=someserver", ciąg "server=someserver.mycompany.com" będzie nadal dozwolony. Zawsze zaczynając od przyznania żadnych uprawnień, można zmniejszyć prawdopodobieństwo, że w zestawie uprawnień znajdują się otwory.

Dotyczy

Zobacz też