IUSR et IWAM remontent aux tout premiers jours d'IIS lorsque vous l'avez installé séparément (et non en tant que composant du système d'exploitation). Par défaut, si un site Web autorise l'authentification anonyme, le compte IUSR est utilisé en ce qui concerne les autorisations sur le système d'exploitation. Cela peut être modifié par défaut. Il existe certaines recommandations de sécurité pour renommer au moins le compte, il ne s'agit donc pas d'un compte "connu", tout comme il est recommandé de renommer le compte administrateur sur un serveur. Vous pouvez en savoir plus sur IUSR et l'authentification sur MSDN .
IWAM a été conçu pour toutes les applications hors processus et n'est utilisé dans IIS 6.0 que lorsque vous êtes en mode d'isolation IIS 5.0. Vous l'avez généralement vu avec des objets COM / DCOM.
En ce qui concerne les identités de pool d'applications, la valeur par défaut est de s'exécuter en tant que service réseau. Vous ne devez pas exécuter en tant que système local car ce compte a des droits supérieurs à ceux d'un administrateur. Donc, cela vous laisse essentiellement au service réseau, au service local ou à un compte local / domaine autre que ces deux.
Quant à savoir quoi faire, cela dépend. Un avantage de le laisser comme service réseau est qu'il s'agit d'un compte à privilèges limités sur le serveur. Cependant, lorsqu'il accède aux ressources sur le réseau, il apparaît sous le nom Domain \ ComputerName $, ce qui signifie que vous pouvez attribuer des autorisations qui permettent au compte Service réseau d'accéder à des ressources telles que SQL Server s'exécutant sur une autre zone. De plus, étant donné qu'il apparaît en tant que compte d'ordinateur, si vous activez l'authentification Kerberos, le SPN est déjà en place si vous accédez au site Web par le nom du serveur.
Un cas où vous envisagez de modifier le pool d'applications en un compte de domaine Windows particulier si vous souhaitez qu'un compte particulier accède aux ressources en réseau, tel qu'un compte de service accédant à SQL Server pour une application Web. Il y a d'autres options dans ASP.NET pour faire cela sans changer l'identité du pool d'applications, donc ce n'est plus strictement nécessaire. Une autre raison pour laquelle vous envisagez d'utiliser un compte d'utilisateur de domaine est que vous effectuez l'authentification Kerberos et que plusieurs serveurs Web assurent la maintenance d'une application Web. Un bon exemple est si vous aviez deux serveurs Web ou plus servant SQL Server Reporting Services. Le front-end serait probablement une URL générique telle que reports.mydomain.com ou reporting.mydomain.com. Dans ce cas, le SPN ne peut être appliqué qu'à un seul compte dans AD. Si vous avez les pools d'applications exécutés sous Service réseau sur chaque serveur, cela ne fonctionnera pas, car lorsqu'ils quittent les serveurs, ils apparaissent sous la forme Domain \ ComputerName $, ce qui signifie que vous auriez autant de comptes que vous aviez de serveurs servant la app. La solution consiste à créer un compte de domaine, à définir l'identité du pool d'applications sur tous les serveurs sur le même compte d'utilisateur de domaine et à créer le seul SPN, permettant ainsi l'authentification Kerberos. Dans le cas d'une application comme SSRS, où vous souhaiterez peut-être transmettre les informations d'identification de l'utilisateur au serveur de base de données principal, l'authentification Kerberos est un must car vous devrez alors configurer la délégation Kerberos. d avoir autant de comptes que vous aviez de serveurs servant l'application. La solution consiste à créer un compte de domaine, à définir l'identité du pool d'applications sur tous les serveurs sur le même compte d'utilisateur de domaine et à créer le seul SPN, permettant ainsi l'authentification Kerberos. Dans le cas d'une application comme SSRS, où vous souhaiterez peut-être transmettre les informations d'identification de l'utilisateur au serveur de base de données principal, l'authentification Kerberos est un must car vous devrez alors configurer la délégation Kerberos. d avoir autant de comptes que vous aviez de serveurs servant l'application. La solution consiste à créer un compte de domaine, à définir l'identité du pool d'applications sur tous les serveurs sur le même compte d'utilisateur de domaine et à créer le seul SPN, permettant ainsi l'authentification Kerberos. Dans le cas d'une application comme SSRS, où vous souhaiterez peut-être transmettre les informations d'identification de l'utilisateur au serveur de base de données principal, l'authentification Kerberos est un must car vous devrez alors configurer la délégation Kerberos.
Je sais que c'est beaucoup à prendre, mais la réponse courte est, sauf pour le système local, cela dépend.