Eu vou preceder tudo isso dizendo que estou assumindo que você está falando de um servidor Web interno na rede privada interna.
Vamos começar com a representação da máquina. Se a identidade do pool de aplicativos for Serviço de Rede e não houver representação no aplicativo .NET, sim, o aplicativo Web se conectará ao SQL Server de back-end usando a conta de computador da máquina. E isso significa que você concedeu acesso à conta da máquina. O CRM da Microsoft funciona dessa maneira.
No entanto, se você especificou uma identidade, essa conta de usuário precisará acessar o SQL Server. Embora você esteja certo de que, se um invasor comprometeu o servidor Web, ele efetivamente tem o mesmo acesso que a conta de identidade, a verdade é que o uso de um logon do SQL Server não altera nada aqui. Depois de ter acesso, posso modificar o aplicativo Web para fazer o que eu quero e o que ele fizer, no máximo que sua segurança permitir no SQL Server de back-end.
Agora, por que usar o SSPI. Em primeiro lugar, você não está usando um logon baseado no SQL Server. Isso significa que o Active Directory é a única fonte de segurança. Isso significa que você tem os meios normais de auditoria para determinar o acesso inválido. Segundo, significa que, a menos que haja outros aplicativos que exijam, você pode deixar o SQL Server no modo somente de autenticação do Windows. Isso significa que nenhum logon do SQL Server é permitido. Isso significa que qualquer ataque contra o sa é interrompido antes mesmo de começar. E, finalmente, facilita a recuperação. Se você usar um logon baseado no SQL Server, precisará extrair o logon com SID e senha criptografada. Se você estiver usando uma conta de usuário baseada no Windows como uma "conta de serviço", quando acessar um novo SQL Server, criando o logon,