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

Definição

Adiciona uma nova cadeia de conexão e um conjunto de palavras-chave restritas ao SqlClientPermission objeto.

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

A cadeia de conexão.

restrictions
String

As restrições de chave.

behavior
KeyRestrictionBehavior

Uma das KeyRestrictionBehavior enumerações.

Comentários

Use esse método para configurar quais cadeias de conexão são permitidas por um objeto de permissão específico. Por exemplo, use o seguinte fragmento de código se desejar permitir apenas um cadeia de conexão específico e nada mais:

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

O exemplo a seguir permite cadeias de conexão que usam qualquer banco de dados, mas somente no servidor chamado MyServer, com qualquer combinação de usuário e senha e sem outras palavras-chave cadeia de conexão:

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

Aviso

Microsoft não recomenda fornecer seu nome de usuário e senha diretamente, pois é um padrão inseguro. Sempre que possível, use fluxos de autenticação mais seguros, como identidades Managed para recursos Azure ou autenticação do Windows para SQL Server.

O exemplo a seguir usa o mesmo cenário que o anterior, mas permite um parceiro de failover que pode ser usado ao se conectar a servidores configurados para espelhamento:

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

Note

Ao usar permissões de segurança de acesso de código para ADO.NET, o padrão correto é começar com o caso mais restritivo (sem permissões) e, em seguida, adicionar as permissões específicas necessárias para a tarefa específica que o código precisa executar. O padrão oposto, começando com todas as permissões e tentando negar uma permissão específica, não é seguro, pois há muitas maneiras de expressar o mesmo cadeia de conexão. Por exemplo, se você iniciar com todas as permissões e depois tentar negar o uso da cadeia de conexão “server=someserver”, a cadeia de caracteres “server=someserver.mycompany.com” ainda será permitida. Ao iniciar sempre sem conceder absolutamente nenhuma permissão, você reduz as chances de haver brechas no conjunto de permissões.

Aplica-se a

Confira também