Compartir a través de


SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Método

Definición

Agrega una nueva cadena de conexión y un conjunto de palabras clave restringidas al objeto 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)

Parámetros

connectionString
String

La cadena de conexión.

restrictions
String

Restricciones clave.

behavior
KeyRestrictionBehavior

Una de las enumeraciones KeyRestrictionBehavior.

Comentarios

Use este método para configurar las cadenas de conexión permitidas por un objeto de permiso determinado. Por ejemplo, use el siguiente fragmento de código si solo desea permitir una cadena de conexión específica y nada más:

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

En el ejemplo siguiente se permiten cadenas de conexión que usan cualquier base de datos, pero solo en el servidor denominado MyServer, con cualquier combinación de usuario y contraseña y sin otras palabras clave de cadena de conexión:

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

En el ejemplo siguiente se usa el mismo escenario que anteriormente, pero permite un asociado de conmutación por error que se puede usar al conectarse a los servidores configurados para la creación de reflejo:

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

Nota:

Al usar permisos de seguridad de acceso de código para ADO.NET, el patrón correcto consiste en comenzar con el caso más restrictivo (sin permisos) y, a continuación, agregar los permisos específicos necesarios para la tarea concreta que el código necesita para realizar. El patrón opuesto, empezando por todos los permisos y, a continuación, intentando denegar un permiso específico, no es seguro, porque hay muchas maneras de expresar la misma cadena de conexión. Por ejemplo, si comienza con todos los permisos y después intenta denegar el uso de la cadena de conexión "servidor=unServidor", la cadena "servidor=unServidor.miEmpresa.com" seguirá obteniendo permiso. Al comenzar siempre por no conceder ningún permiso, se reduce la posibilidad de que haya lagunas en el conjunto de permisos.

Se aplica a