A autenticação do Windows é considerada mais segura. Aqui está o porquê:
- Você pode usar a autenticação do Kerberos. O protocolo Kerberos possui um timestamp que evita ataques de repetição. Ele também permite que o cliente verifique a identidade do servidor usando um terceiro confiável (na implementação do Active Directory, este é o DC).
- Permite uma única fonte de segurança: o Active Directory. Portanto, quando você encerra uma conta no Active Directory, ela é desabilitada em todos os lugares.
- Nas versões do SQL Server anteriores ao SQL Server 2005, o pacote de login não era criptografado automaticamente. A forma como a senha foi passada na rede foi facilmente descriptografada, já que estamos falando de inversão de bits de alta e baixa ordem e uma operação XOR.
- Existe o fato de que você não precisa colocar a senha na string de conexão, mas há outras maneiras de contornar isso. Por exemplo, criptografando o nome de usuário / senha e armazenando-o no registro e, em seguida, construindo a cadeia de conexão em tempo de execução.
- Os logons no SQL Server serão rastreados no log de eventos de segurança, juntamente com outros logins do Windows, se essas configurações de auditoria estiverem ativadas (e devem ser). Isso significa que, se você tiver software de análise / agregação de logs para seus servidores, não precisará analisar o log de eventos do aplicativo ou o arquivo de log do SQL Server necessariamente.
Com relação a onde você tem uma única conta de um serviço da web, ainda tem as mesmas vantagens listadas acima.