Condividi tramite


SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Metodo

Definizione

Aggiunge una nuova stringa di connessione e un set di parole chiave con restrizioni all'oggetto 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)

Parametri

connectionString
String

Stringa di connessione.

restrictions
String

Restrizioni principali.

behavior
KeyRestrictionBehavior

Una delle enumerazioni KeyRestrictionBehavior.

Commenti

Utilizzare questo metodo per configurare le stringhe di connessione consentite da un oggetto autorizzazione specifico. Ad esempio, usare il frammento di codice seguente se si vuole consentire solo una stringa di connessione specifica e nient'altro:

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

L'esempio seguente consente stringhe di connessione che usano qualsiasi database, ma solo nel server denominato MyServer, con qualsiasi combinazione di utente e password e che non contiene altre parole chiave della stringa di connessione:

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

Avvertimento

Microsoft non consiglia di fornire direttamente il nome utente e la password, perché si tratta di un modello non sicuro. Se possibile, usare flussi di autenticazione più sicuri, ad esempio identità gestite per le risorse di Azureo l'autenticazione di Windows per SQL Server.

L'esempio seguente usa lo stesso scenario di quello precedente, ma consente un partner di failover che può essere usato per la connessione ai server configurati per il mirroring:

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

Nota

Quando si usano autorizzazioni di sicurezza per l'accesso al codice per ADO.NET, il modello corretto consiste nell'iniziare con il caso più restrittivo (nessuna autorizzazione) e quindi aggiungere le autorizzazioni specifiche necessarie per l'attività specifica che il codice deve eseguire. Il modello opposto, a partire da tutte le autorizzazioni e quindi il tentativo di negare un'autorizzazione specifica, non è sicuro, perché esistono molti modi per esprimere la stessa stringa di connessione. Ad esempio, se si inizia con tutte le autorizzazioni e si tenta di negare l'uso della stringa di connessione "server=someserver", la stringa "server=someserver.mycompany.com" sarebbe comunque consentita. A partire sempre concedendo nessuna autorizzazione, si riducono le probabilità che nel set di autorizzazioni siano presenti fori.

Si applica a

Vedi anche