Share via


Anonyme Authentifizierung <anonymousAuthentication>

Übersicht

Das <anonymousAuthentication>-Element steuert, wie Internetinformationsdienste (IIS) 7 Anforderungen von anonymen Benutzern verarbeitet. Sie können das <anonymousAuthentication>-Element ändern, um die anonyme Authentifizierung zu deaktivieren, oder Sie können Internetinformationsdienste (IIS) so konfigurieren, dass ein benutzerdefiniertes Benutzerkonto zum Verarbeiten anonymer Anforderungen verwendet wird.

Die anonyme Authentifizierung ermöglicht Benutzern den Zugriff auf öffentliche Bereiche der Web- oder FTP-Site, ohne sie nach einem Benutzernamen oder einem Kennwort zu fragen. Standardmäßig wird das in IIS 7.0 eingeführte IUSR-Konto verwendet und das IIS 6.0-IUSR_computername-Konto ersetzt, um anonymen Zugriff zu ermöglichen. Eine Anwendung ist eine Gruppierung von Dateien, die Inhalte liefert oder Dienste über Protokolle bereitstellt, z. B. HTTP. Wenn Sie eine Anwendung in IIS erstellen, wird der Pfad der Anwendung Teil der Site-URL.

Standardmäßig verwendet IIS 7 die anonyme Authentifizierung. Sie müssen die anonyme Authentifizierung für alle Websites, Webanwendungen oder Webdienste deaktivieren, für die Sie andere Authentifizierungsmethoden wie die Standard- oder Windows-Authentifizierung aktivieren möchten.

Kompatibilität

Version Hinweise
IIS 10.0 Das <anonymousAuthentication>-Element wurde in IIS 10.0 nicht geändert.
IIS 8.5 Das <anonymousAuthentication>-Element wurde in IIS 8.5 nicht geändert.
IIS 8.0 Das <anonymousAuthentication>-Element wurde in IIS 8.0 nicht geändert.
IIS 7.5 Das <anonymousAuthentication>-Element wurde in IIS 7.5 nicht geändert.
IIS 7.0 Das <anonymousAuthentication>-Element wurde in IIS 7.0 eingeführt.
IIS 6.0 Das <anonymousAuthentication>-Element ersetzt die IIS 6.0 AuthFlags-, AnonymousUserName- und AnonymousUserPassword-Metabasiseigenschaften.

Setup

Das <anonymousAuthentication>-Element ist in der Standardinstallation von IIS 7 enthalten.

Gewusst wie

Anonyme Authentifizierung deaktivieren

  1. Öffnen Sie den Internet Information Services (IIS) Manager:

    • Wenn Sie Windows Server 2012 oder Windows Server 2012 R2 verwenden:

      • Klicken Sie in der Taskleiste auf Server-Manager, dann auf Tools und dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows 8 oder Windows 8.1 verwenden:

      • Halten Sie die Windows-Taste gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf "Systemsteuerung".
      • Klicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Server 2008 oder Windows Server 2008 R2 verwenden:

      • Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung und dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Vista oder Windows 7 verwenden:

      • Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
      • Doppelklicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
  2. Erweitern Sie im Bereich Verbindungen den Servernamen, erweitern Sie Sites, wechseln Sie zu der Ebene im Hierarchiebereich, die Sie konfigurieren möchten, und klicken Sie dann auf die Website oder Webanwendung.

  3. Scrollen Sie zum Abschnitt Sicherheit im Bereich Start, und doppelklicken Sie dann auf Authentifizierung.

  4. Wählen Sie im Bereich Authentifizierung die Option Anonyme Authentifizierung, und klicken Sie dann auf Deaktivieren im Bereich Aktionen.
    Screenshot of the Authentication pane with Anonymous Authentication selected.

So ändern Sie anonyme Authentifizierungsanmeldeinformationen aus dem IUSR-Konto

  1. Öffnen Sie den Internet Information Services (IIS) Manager:

    • Wenn Sie Windows Server 2012 oder Windows Server 2012 R2 verwenden:

      • Klicken Sie in der Taskleiste auf Server-Manager, dann auf Tools und dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows 8 oder Windows 8.1 verwenden:

      • Halten Sie die Windows-Taste gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf "Systemsteuerung".
      • Klicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Server 2008 oder Windows Server 2008 R2 verwenden:

      • Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung und dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Vista oder Windows 7 verwenden:

      • Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
      • Doppelklicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
  2. Erweitern Sie im Bereich Verbindungen den Servernamen, erweitern Sie Sites, navigieren Sie zu der Ebene im Hierarchiebereich, den Sie konfigurieren möchten, und klicken Sie dann auf die Website oder Webanwendung.

  3. Scrollen Sie zum Abschnitt Sicherheit im Bereich Start, und doppelklicken Sie dann auf Authentifizierung.

  4. Wählen Sie im Bereich Authentifizierung die Option Anonyme Authentifizierung, und klicken Sie dann Bearbeiten... im Bereich Aktionen.

  5. Führen Sie im Dialogfeld Anonyme Authentifizierungsinformationen bearbeiten eine der folgenden Optionen aus:

    • Wählen Sie Anwendungspoolidentität aus, um den Identitätsgruppe für den Anwendungspool zu verwenden, und klicken Sie dann auf OK.
      Screenshot of setting Anonymous user identity to Application pool identity.

    • Klicken Sie auf Festlegen..., und geben Sie dann im Dialogfeld Anmeldeinformationen festlegen den Benutzernamen für das Konto im Feld Benutzername ein, geben Sie das Kennwort für das Konto in den Feldern Kennwort und Kennwort bestätigen ein, klicken Sie auf OK, und klicken Sie dann erneut auf OK.
      Screenshot of a blank Set Credentials dialog.

      Hinweis

      Wenn Sie dieses Verfahren verwenden, gewähren Sie nur dem neuen Konto minimale Berechtigungen auf dem IIS-Servercomputer.

Konfiguration

Das <anonymousAuthentication>-Element kann auf Site- und Anwendungsebene in der Datei „Web.config“ konfiguriert werden.

Attribute

Attribut Beschreibung
enabled Optionales boolesches Attribut.

Gibt an, ob die anonyme Authentifizierung aktiviert ist.

Der Standardwert ist true.
logonMethod Optionales Enumerationsattribut.

Das logonMethod-Attribut kann einer der folgenden möglichen Werte sein. Der Standardwert ist ClearText.
Wert Beschreibung
Batch Dieser Anmeldetyp ist für Batchserver vorgesehen, bei denen Prozesse im Auftrag eines Benutzers ohne direkten Eingriff durch den Benutzer ausgeführt werden können.

Der numerische Wert ist 1.
ClearText Dieser Anmeldetyp behält den Namen und das Kennwort im Authentifizierungspaket bei, wodurch der Server Verbindungen zu anderen Netzwerkservern herstellen kann, während er die Identität des Clients vorgibt.

Der numerische Wert ist 3.
Interactive Dieser Anmeldetyp ist für Benutzer vorgesehen, die den Computer interaktiv verwenden.

Der numerische Wert ist 0.
Network Dieser Anmeldetyp ist für Hochleistungsserver zur Authentifizierung von Klartext-Kennwörtern vorgesehen. Anmeldeinformationen werden für diesen Anmeldetyp nicht zwischengespeichert.

Der numerische Wert ist 2.
password Optionales String -Attribut.

Gibt die Passwort für die anonyme Authentifizierung an.

Hinweis: Um nicht verschlüsselte Kennwortzeichenfolgen in Konfigurationsdateien zu speichern, verwenden Sie immer AppCmd.exe oder den IIS-Manager, um Kennwörter einzugeben. Wenn Sie diese Verwaltungstools verwenden, werden die Kennwortzeichenfolgen automatisch verschlüsselt, bevor sie in die XML-Konfigurationsdateien geschrieben werden. Dies bietet eine bessere Kennwortsicherheit als das Speichern unverschlüsselter Kennwörter.
username Optionales String -Attribut.

Gibt den Benutzernamen für die anonyme Authentifizierung an. Wenn Sie diesen Wert leer lassen (d. h. username=""), verwendet die anonyme Authentifizierung die Anwendungspoolidentität, um anonyme Benutzer zu authentifizieren.

Der Standardwert ist IUSR.

Untergeordnete Elemente

Keine.

Konfigurationsbeispiel

Im folgenden Konfigurationsbeispiel wird die anonyme Authentifizierung für eine IIS 7-Website oder Webanwendung für die Verwendung eines lokalen Kontos auf dem Webserver konfiguriert. (IIS 7 verwendet automatisch die AES-Verschlüsselung, um das Kennwort zu verschlüsseln.)

<security> <authentication>
   <anonymousAuthentication
      userName="User1"
      password="[enc:AesProvider:57686f6120447564652c2049495320526f636b73:enc]" />
   </authentication>
</security>

Beispielcode

In den folgenden Beispielen wird die anonyme Authentifizierung aktiviert und der Standardbenutzername und das Standardkennwort für die anonyme Authentifizierung in ein Konto namens IUSR mit dem Kennwort P@ssw0rd geändert.

AppCmd.exe

appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/anonymousAuthentication /enabled:"True" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/anonymousAuthentication /userName:"IUSR" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/anonymousAuthentication /password:"P@ssw0rd" /commit:apphost

Hinweis

Sie müssen unbedingt den Commitparameterapphost festlegen, wenn Sie AppCmd.exe verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei ApplicationHost.config festgelegt.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample { 
   private static void Main() { 
      using (ServerManager serverManager = new ServerManager()) {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection anonymousAuthenticationSection = config.GetSection("system.webServer/security/authentication/anonymousAuthentication", "Contoso");
         anonymousAuthenticationSection["enabled"] = true;
         anonymousAuthenticationSection["userName"] = @"IUSR";
         anonymousAuthenticationSection["password"] = @"P@ssw0rd";
         serverManager.CommitChanges();
      } 
   } 
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim anonymousAuthenticationSection As ConfigurationSection = config.GetSection("system.webServer/security/authentication/anonymousAuthentication", "Contoso")
      anonymousAuthenticationSection("enabled") = True
      anonymousAuthenticationSection("userName") = "IUSR"
      anonymousAuthenticationSection("password") = "P@ssw0rd"
      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var anonymousAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/anonymousAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso");
anonymousAuthenticationSection.Properties.Item("enabled").Value = true;
anonymousAuthenticationSection.Properties.Item("userName").Value = "IUSR";
anonymousAuthenticationSection.Properties.Item("password").Value = "P@ssw0rd";

adminManager.CommitChanges();

VBScript

Set adminManager = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set anonymousAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/anonymousAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso")
anonymousAuthenticationSection.Properties.Item("enabled").Value = True
anonymousAuthenticationSection.Properties.Item("userName").Value = "IUSR"
anonymousAuthenticationSection.Properties.Item("password").Value = "P@ssw0rd"

adminManager.CommitChanges()