A privacidade da oferta do SQL Server (ou seja, é criptografada) e é à prova de falsificação (ou seja, assinada), se configurada dessa forma. A proteção é feita de fato usando SSL (na verdade é TLS, detalhes ...). Consulte Criptografar conexões com o SQL Server e Como: Habilitar Conexões Criptografadas ao Mecanismo de Banco de Dados para detalhes, incluindo as etapas para aplicá-lo.
A questão sobre senhas é um tópico completamente diferente. Existem dois modos de autenticação suportados pelo SQL Server: Windows e Autenticação SQL. Se sua seqüência de conexão especificar Trusted Connection=True
ou Trusted connection=SSPI
, você usará a autenticação do Windows. Se você especificar um usuário e uma senha User ID=Carpenter;Password=secret
, use a Autenticação do SQL.
A autenticação do Windows usará NTLM ou Kerberos, nenhum dos quais exige que a senha seja enviada pela conexão. Mas se você usar a autenticação SQL, a senha será enviada pela conexão durante o handshake. Se a conexão não estiver protegida por um túnel SSL, a senha estará em texto não criptografado e poderá ser rastreada por qualquer pessoa.
Desde que você imponha o SSL (os artigos vinculados mostram passo-a-passo como fazê-lo), você está seguro.