Ich gehe vorab davon aus, dass es sich um einen internen Webserver im internen privaten Netzwerk handelt.
Beginnen wir mit dem Identitätswechsel der Maschine. Wenn die Identität des Anwendungspools Network Service ist und die .NET-Anwendung keinen Identitätswechsel aufweist, stellt die Webanwendung mithilfe des Computerkontos des Computers eine Verbindung zum Back-End-SQL-Server her. Und das würde bedeuten, dass Sie Zugriff auf dieses Computerkonto gewährt haben. Microsoft CRM funktioniert auf diese Weise.
Wenn Sie jedoch eine Identität angegeben haben, muss dieses Benutzerkonto auf den SQL Server zugreifen können. Sie haben zwar Recht, dass ein Angreifer, der den Webserver kompromittiert hat, tatsächlich denselben Zugriff wie das Identitätskonto hat, aber die Wahrheit ist, dass die Verwendung einer SQL Server-Anmeldung hier nichts ändert. Sobald ich Zugriff habe, kann ich die Webanwendung so ändern, dass sie das tut, was ich will, und zwar so weit, wie es Ihre Sicherheit auf dem Back-End-SQL-Server zulässt.
Jetzt erfahren Sie, warum Sie SSPI verwenden sollten. In erster Linie verwenden Sie keine SQL Server-basierte Anmeldung. Das heißt, Active Directory ist die einzige Quelle für Sicherheit. Das heißt, Sie haben die normalen Prüfmittel, um einen ungültigen Zugriff festzustellen. Zweitens bedeutet dies, dass Sie Ihren SQL Server nur im Windows-Authentifizierungsmodus lassen können, es sei denn, es gibt andere Apps, die dies erfordern. Das bedeutet, dass keine SQL Server-Anmeldungen zulässig sind. Das bedeutet, dass alle Angriffe gegen sa gestoppt werden, bevor sie überhaupt beginnen. Und schließlich erleichtert es die Genesung. Wenn Sie eine SQL Server-basierte Anmeldung verwenden, müssen Sie die Anmeldung mit SID und verschlüsseltem Kennwort extrahieren. Wenn Sie ein Windows-basiertes Benutzerkonto als "Dienstkonto" verwenden, erstellen Sie beim Wechseln zu einem neuen SQL Server die Anmeldung.