SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dodaje nowe parametry połączenia i zestaw ograniczonych słów kluczowych do obiektu 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
Parametry połączenia.
- restrictions
- String
Ograniczenia klucza.
- 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)
Poniższy przykład umożliwia używanie dowolnych parametrów połączenia, ale tylko na serwerze o nazwie MyServer z dowolną kombinacją użytkownika i hasła oraz bez innych słów kluczowych parametrów połączenia:
permission.Add("server=MyServer;", "database=; user id=; password=;", KeyRestrictionBehavior.AllowOnly)
Ostrzeżenie
Firma Microsoft nie zaleca bezpośredniego podawania nazwy użytkownika i hasła, ponieważ jest to niezabezpieczony wzorzec. Jeśli to możliwe, należy użyć bezpieczniejszych przepływów uwierzytelniania, takich jak tożsamości zarządzane dla zasobów platformy Azurelub uwierzytelniania systemu Windows dla programu SQL Server.
Poniższy przykład używa tego samego scenariusza co poprzedni, ale umożliwia partnerowi 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)
Nuta
W przypadku używania uprawnień zabezpieczeń dostępu do kodu dla ADO.NET prawidłowym wzorcem jest rozpoczęcie od najbardziej restrykcyjnego przypadku (bez uprawnień w ogóle), 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 tych samych parametrów połączenia. Jeśli na przykład zaczniesz od wszystkich uprawnień, a następnie spróbujesz odrzucić użycie parametrów połączenia "server=someserver", parametry "server=someserver.mycompany.com" będą nadal dozwolone. Zawsze zaczynając od przyznania żadnych uprawnień, można zmniejszyć prawdopodobieństwo, że w zestawie uprawnień znajdują się otwory.
Dotyczy
Zobacz też
- Zabezpieczenia dostępu kodu i ADO.NET
- ADO.NET — omówienie