SqlClientPermission.Add(String, String, KeyRestrictionBehavior) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Adiciona uma nova cadeia de conexão e um conjunto de palavras-chave restritas ao 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
A cadeia de conexão.
- restrictions
- String
As restrições de chave.
- behavior
- KeyRestrictionBehavior
Uma das enumerações KeyRestrictionBehavior.
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 uma cadeia de conexão específica 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 de cadeia de conexão:
permission.Add("server=MyServer;", "database=; user id=; password=;", KeyRestrictionBehavior.AllowOnly)
Aviso
A 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 Gerenciadas para recursos do Azureou de 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)
Nota
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 a mesma cadeia de conexão. Por exemplo, se você começar com todas as permissões e tentar negar o uso da cadeia de conexão "server=someserver", a cadeia de caracteres "server=someserver.mycompany.com" ainda será permitida. Ao sempre começar não concedendo nenhuma permissão, você reduz as chances de haver buracos no conjunto de permissões.
Aplica-se a
Confira também
- segurança e ADO.NET de acesso ao código
- visão geral ADO.NET