SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt dem Objekt eine neue Verbindungszeichenfolge und eine Reihe eingeschränkter Schlüsselwörter hinzu 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
Die Verbindungszeichenfolge.
- restrictions
- String
Die wichtigsten Einschränkungen.
- behavior
- KeyRestrictionBehavior
Eine der KeyRestrictionBehavior Enumerationen.
Hinweise
Verwenden Sie diese Methode, um zu konfigurieren, welche Verbindungszeichenfolgen von einem bestimmten Berechtigungsobjekt zulässig sind. Verwenden Sie beispielsweise das folgende Codefragment, wenn Sie nur eine bestimmte Verbindungszeichenfolge und nichts anderes zulassen möchten:
permission.Add("server=MyServer; database=MyDatabase; Integrated Security=true", "", KeyRestrictionBehavior.AllowOnly)
Das folgende Beispiel ermöglicht Verbindungszeichenfolgen, die eine beliebige Datenbank verwenden, jedoch nur auf dem Server mit dem Namen "MyServer", mit einer beliebigen Benutzer- und Kennwortkombination und mit keinem anderen Verbindungszeichenfolge Schlüsselwörtern:
permission.Add("server=MyServer;", "database=; user id=; password=;", KeyRestrictionBehavior.AllowOnly)
Warning
Microsoft wird nicht empfohlen, Ihren Benutzernamen und Ihr Kennwort direkt anzugeben, da es sich um ein unsicheres Muster handelt. Verwenden Sie nach Möglichkeit sicherere Authentifizierungsflüsse, z. B. Managed Identities für Azure Ressourcen oder Windows-Authentifizierung für SQL Server.
Im folgenden Beispiel wird dasselbe Szenario wie der vorherige verwendet, ermöglicht jedoch einen Failoverpartner, der beim Herstellen einer Verbindung mit servern verwendet werden kann, die für die Spiegelung konfiguriert sind:
permission.Add("server=MyServer; failover partner=MyMirrorServer", "database=; user id=; password=;", KeyRestrictionBehavior.AllowOnly)
Note
Wenn Sie Codezugriffssicherheitsberechtigungen für ADO.NET verwenden, besteht das richtige Muster darin, mit dem restriktivsten Fall (überhaupt keine Berechtigungen) zu beginnen und dann die spezifischen Berechtigungen hinzuzufügen, die für die bestimmte Aufgabe erforderlich sind, die der Code ausführen muss. Das gegenteilige Muster, das mit allen Berechtigungen beginnt und dann versucht, eine bestimmte Berechtigung zu verweigern, ist nicht sicher, da es viele Möglichkeiten gibt, dasselbe Verbindungszeichenfolge auszudrücken. Wenn Sie z. B. alle Berechtigungen zulassen und dann die Verwendung der Verbindungszeichenfolge "server=someserver" zu verweigern versuchen, wäre die Zeichenfolge "server=someserver.mycompany.com" nach wie vor zulässig. Indem Sie damit beginnen, keine Berechtigungen zu erteilen, sinkt die Gefahr, dass der Berechtigungssatz Lücken enthält.