Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Ao usar Trusted_Connection=true e autenticação do SQL Server, isso afetará o desempenho?


Não tenho 100% de certeza do que você quer dizer:
Trusted_Connection=True;

É usando credenciais do Windows e é 100% equivalente a:
Integrated Security=SSPI;

ou
Integrated Security=true;

Se você não quiser usar segurança integrada / conexão confiável, você precisa especificar o ID de usuário e a senha explicitamente na string de conexão (e deixar de fora qualquer referência a Trusted_Connection ou Integrated Security )
server=yourservername;database=yourdatabase;user id=YourUser;pwd=TopSecret

Somente neste caso, o modo de autenticação do SQL Server é usado.

Se alguma dessas duas configurações estiver presente (Trusted_Connection=true ou Integrated Security=true/SSPI ), então as credenciais do Windows do usuário atual são usados ​​para autenticar no SQL Server e em qualquer user iD= configuração será ignorada e não usado.

Para referência, consulte o site de cadeias de conexão para SQL Server 2005 com muitos exemplos e explicações.

Usar a autenticação do Windows é a maneira preferida e recomendada de fazer as coisas, mas pode ocorrer um pequeno atraso, pois o SQL Server teria que autenticar suas credenciais no Active Directory (normalmente). Não tenho ideia de quanto pode ser esse pequeno atraso, e não encontrei nenhuma referência para isso.

Resumindo:

Se você especificar Trusted_Connection=True; ou Integrated Security=SSPI; ou Integrated Security=true; na sua cadeia de conexão

==> ENTÃO (e só então) você tem Autenticação do Windows acontecendo. Qualquer user id= configuração na string de conexão será ignorada .

Se você NÃO especificar qualquer uma dessas configurações,

==> então você NÃO tem a autenticação do Windows acontecendo (o modo de autenticação SQL será usado)