IUSR und IWAM stammen aus den Anfängen von IIS, als Sie es separat installiert haben (nicht als Betriebssystemkomponente). Wenn eine Website eine anonyme Authentifizierung zulässt, wird das IUSR-Konto standardmäßig in Bezug auf die Berechtigungen auf dem Betriebssystem verwendet. Dies kann von der Standardeinstellung geändert werden. Es gibt einige Sicherheitsempfehlungen, um das Konto mindestens umzubenennen, daher handelt es sich nicht um ein "bekanntes" Konto, so wie es eine Empfehlung gibt, das Administratorkonto auf einem Server umzubenennen. Weitere Informationen zu IUSR und Authentifizierung finden Sie bei MSDN .
IWAM wurde für nicht prozessbasierte Anwendungen entwickelt und wird nur in IIS 6.0 verwendet, wenn Sie sich im IIS 5.0-Isolationsmodus befinden. Sie haben es normalerweise mit COM / DCOM-Objekten gesehen.
In Bezug auf Anwendungspoolidentitäten wird standardmäßig der Netzwerkdienst ausgeführt. Sie sollten nicht als lokales System ausgeführt werden, da dieses Konto über höhere Rechte als das eines Administrators verfügt. Damit bleiben Sie im Grunde genommen beim Netzwerkdienst, beim lokalen Dienst oder einem anderen lokalen / Domänenkonto als diesen beiden.
Was zu tun ist, hängt davon ab. Ein Vorteil, wenn Sie es als Netzwerkdienst belassen, ist, dass es sich um ein Konto mit eingeschränkten Berechtigungen auf dem Server handelt. Wenn es jedoch über das Netzwerk auf Ressourcen zugreift, wird es als Domäne \ Computername $ angezeigt. Dies bedeutet, dass Sie Berechtigungen zuweisen können, mit denen das Netzwerkdienstkonto auf Ressourcen wie SQL Server zugreifen kann, die in einem anderen Feld ausgeführt werden. Da es als Computerkonto angezeigt wird und Sie die Kerberos-Authentifizierung aktivieren, ist der SPN bereits vorhanden, wenn Sie über den Servernamen auf die Website zugreifen.
Ein Fall, in dem Sie in Betracht ziehen würden, den Anwendungspool in ein bestimmtes Windows-Domänenkonto zu ändern, wenn ein bestimmtes Konto auf Netzwerkressourcen zugreifen soll, z. B. ein Dienstkonto, das für eine webbasierte Anwendung auf SQL Server zugreift. Es gibt andere Optionen in ASP.NET, um dies zu tun, ohne die Anwendungspoolidentität zu ändern, sodass dies nicht mehr unbedingt erforderlich ist. Ein weiterer Grund für die Verwendung eines Domänenbenutzerkontos ist die Kerberos-Authentifizierung, bei der mehrere Webserver eine Webanwendung bedienen. Ein gutes Beispiel ist, wenn Sie zwei oder mehr Webserver hatten, die SQL Server Reporting Services bereitstellen. Das Frontend würde wahrscheinlich auf eine generische URL wie reports.mydomain.com oder reporting.mydomain.com verweisen. In diesem Fall kann der SPN nur auf ein Konto innerhalb von AD angewendet werden. Wenn die App-Pools unter "Netzwerkdienst" auf den einzelnen Servern ausgeführt werden, funktioniert dies nicht, da sie beim Verlassen der Server als "Domäne \ Computername $" angezeigt werden. Dies bedeutet, dass Sie über so viele Konten verfügen, wie Server die Server bereitstellen App. Die Lösung besteht darin, ein Domänenkonto zu erstellen, die App-Pool-Identität auf allen Servern auf dasselbe Domänenbenutzerkonto festzulegen und den einen SPN zu erstellen, wodurch die Kerberos-Authentifizierung ermöglicht wird. Bei einer App wie SSRS, bei der Sie möglicherweise die Benutzeranmeldeinformationen an den Back-End-Datenbankserver weitergeben möchten, ist die Kerberos-Authentifizierung ein Muss, da Sie dann die Kerberos-Delegierung konfigurieren müssen. d Sie haben so viele Konten wie Server, auf denen die App ausgeführt wird. Die Lösung besteht darin, ein Domänenkonto zu erstellen, die App-Pool-Identität auf allen Servern auf dasselbe Domänenbenutzerkonto festzulegen und den einen SPN zu erstellen, wodurch die Kerberos-Authentifizierung ermöglicht wird. Bei einer App wie SSRS, bei der Sie möglicherweise die Benutzeranmeldeinformationen an den Back-End-Datenbankserver weitergeben möchten, ist die Kerberos-Authentifizierung ein Muss, da Sie dann die Kerberos-Delegierung konfigurieren müssen. d Sie haben so viele Konten wie Server, auf denen die App ausgeführt wird. Die Lösung besteht darin, ein Domänenkonto zu erstellen, die App-Pool-Identität auf allen Servern auf dasselbe Domänenbenutzerkonto festzulegen und den einen SPN zu erstellen, wodurch die Kerberos-Authentifizierung ermöglicht wird. Bei einer App wie SSRS, bei der Sie möglicherweise die Benutzeranmeldeinformationen an den Back-End-Datenbankserver weitergeben möchten, ist die Kerberos-Authentifizierung ein Muss, da Sie dann die Kerberos-Delegierung konfigurieren müssen.
Ich weiß, dass das eine Menge ist, aber die kurze Antwort ist, abgesehen vom lokalen System, es kommt darauf an.