Réponses:
Il donne à votre application un compte particulier grâce auquel vous pouvez définir la sécurité. Normalement, le processus s'exécute en tant que compte d'utilisateur IIS et dispose donc de tous les privilèges associés à ce compte. En créant un compte uniquement pour cette application, vous pouvez attribuer des droits à ce compte de service uniquement pour les ressources dont il a besoin. Il réduit considérablement les chances de toute personne exploitant votre application et réduit les risques que votre application ait un effet négatif sur une partie du système à laquelle elle ne devrait pas accéder de toute façon.
Un compte de service est utilisé pour deux choses: l'isolement et l'audit.
L'isolement vous permet d'accorder les droits minimaux nécessaires pour le service au compte de service, garantissant que même si un attaquant devait exploiter le service et accéder au système local, sa capacité à causer des dommages supplémentaires est limitée. Même dans le cas où un attaquant n'est pas une préoccupation, l'isolement empêche un service de bogue d'effectuer d'autres services.
L'audit peut être facilité par les comptes de service, car chaque action entreprise par un service différent sera consignée comme provenant d'un utilisateur différent, ce qui rendra plus facile la différenciation d'un service défectueux par d'autres qui fonctionnent correctement.
Bien qu'il s'agisse des principales utilisations des comptes de service, il en existe d'autres, telles que le réglage des performances. L'exécution de chaque service en tant qu'utilisateur différent vous permet d'utiliser l'allocation de ressources par utilisateur existante pour contrôler les ressources disponibles pour un service.
Je considère que la politique des comptes de service par service est obligatoire pour tout système qui espère être sécurisé.
Fondamentalement: si l'application tombe en panne, les dommages qu'elle peut causer sont limités uniquement aux fichiers détenus ou accessibles en écriture par cet utilisateur. De plus, si l'application est compromise, la même restriction s'applique aux données accessibles via celle-ci.
En principe, chaque logiciel ne devrait pouvoir accéder qu'aux ressources dont il a besoin et à rien d'autre. Naturellement, il y a toujours des simplifications et des compromis, mais l'exécution d'une application Web sous son propre compte est l'une des principales mesures d'application.