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

La stringa di connessione.

restrictions
String

Restrizioni principali.

behavior
KeyRestrictionBehavior

Una delle KeyRestrictionBehavior enumerazioni.

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 un stringa di connessione specifico 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 stringa di connessione:

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

Avvertimento

Microsoft non consiglia di specificare 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 Managed Identities for Azure resources o 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)

Note

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 cercando di negare un'autorizzazione specifica, non è sicuro, perché esistono molti modi per esprimere la stessa stringa di connessione. Ad esempio, se inizialmente si concedono tutte le autorizzazioni e successivamente si tenta di negare l'uso della stringa di connessione "server=nomeserver", verrà comunque consentito l'uso della stringa "server=someserver.mycompany.com". Iniziando sempre col non concedere alcuna autorizzazione, si riduce la possibilità di avere lacune nel set di autorizzazioni.

Si applica a

Vedi anche