<configuration> 
<configuration>
</configuration>
 
 

Das Stammelement für alle Konfigurationsdateien. Dieses Element ist erforderlich.

 
Einsatzbereich

Alle

 
Attribute
Keine
 
<appSettings> 
<appSettings>
</appSettings>
 
 

Das Element <appSettings> kann verwendet werden, um individuelle Anwendungseinstellungen in Form von Schlüssel-/Wertpaaren zu konfigurieren. Diese Einstellungen können später zur Laufzeit über die Eigenschaft AppSettings der Klasse ConfigurationSettings abgerufen werden (siehe folgendes Beispiel). Diese Eigenschaft ist gemeinsam genutzt (statisch) und erfordert vor dem Zugriff keine Instanziierung der Klasse ConfigurationSettings.

 
Einsatzbereich

Beliebig

 
Attribute
Keine
 
 
Untergeordnete Elemente
  • <add>
      Die gesuchte Zeichenfolge.
  • <remove>
      Die gesuchte Zeichenfolge.
  • <clear>
      Die gesuchte Zeichenfolge.
 
Beispiel

Der folgende Ausschnitt aus einer web.config-Datei legt ein Schlüssel-/Wertpaar auf Anwendungsebene fest:

<configuration>
   <appSettings>
      <add key="applicationConfigKey" value="bar"/>
   </appSettings>
</configuration>

Die folgende ASP.NET-Seite ruft den Wert ab, der im vorangegangenen Code festgelegt wurde, und ruft außerdem einen Wert ab, der auf machine.config-Ebene festgelegt wurde:

<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Page_Load(  )
         Message1.Text &= _
            ConfigurationSettings.AppSettings("machineConfigKey")
         Message2.Text &= _
            ConfigurationSettings.AppSettings("applicationConfigKey")
      End Sub
   </script>
</head>
<body>
   <asp:label id="Message1" runat="server">Machine.Config setting: </asp:label>
   <br/>
   <asp:label id="Message2" runat="server">Web.Config setting: </asp:label>
</body>
</html>
 
Hinweise

Wie im Beispiel gezeigt, kann das Element <appSettings> getrennt vom Element <system.web> und den ihm untergeordneten Elementen verwendet werden.

Überlegen Sie sich aus Gründen der Sicherheit gut, welche Arten von Daten mit dem Element <appSettings> gespeichert werden sollen. Zwar ist die Laufzeitumgebung von ASP.NET so eingerichtet, dass die web.config-Datei einer Anwendung weder angefordert noch gelesen werden darf, aber dennoch ist der Zugriff auf diese Datei denkbar, wenn die Sicherheit des Webservers auf andere Weise gefährdet ist. Daher sollten Sie prinzipiell keine vertraulichen Informationen wie Benutzernamen und Kennwörter oder Verbindungsstrings, in denen Benutzername und Kennwort enthalten sind, in der Datei web.config ablegen. Eine etwas bessere, wenn auch noch immer nicht sichere Alternative ist es, derartige Informationen in machine.config abzulegen, da diese Datei nicht Teil des Webspace der Anwendung ist und somit im Falle eines Angriffs auf IIS besser geschützt ist. Bedenken Sie aber, dass diese Daten allen Anwendungen auf dem Rechner zur Verfügung stehen.

<system.web> 
<system.web>
</system.web>
 
 

Container-Element für alle Elemente, die in web.config-Dateien verwendet werden.

 
Einsatzbereich

Alle

 
Attribute
Keine
 
 
Untergeordnete Elemente

<authentication>, <authorization>, <browserCaps>, <clientTarget>, <compilation>, <customErrors>, <globalization>, <httpHandlers>, <httpModules>, <httpRuntime>, <identity>, <iisFilter>, <machineKey>, <pages>, <processModel>, <securityPolicy>, <sessionState>, <trace>, <trust>, <webServices>

 
Hinweise

Dieses Element ist erforderlich, damit ihm untergeordnete Elemente verwendet werden können.

<authentication> 
<authentication>
</authentication>
 
 

Bietet Attribute und enthält untergeordnete Elemente, die zur Konfiguration von Authentifizierungsoptionen in ASP.NET verwendet werden.

 
Einsatzbereich

Rechner, Anwendung

 
Attribute
  • Mode

      Legt die von ASP.NET verwendeten Authentifizierungstypen fest. Gültige Werte sind:

    • Windows(Standard)
        Zur Authentifizierung von Benutzeranforderungen werden die von den IIS-Authentifizierungsverfahren ("Basic", "Digest", "Integrated Windows Authentication" oder "Certificates") ermittelten Daten genutzt. Es ist dann möglich, basierend auf den im <authorization>-Element enthaltenen Einstellungen Anforderungen über den authentifizierten Benutzernamen (oder den dazugehörigen Namen einer Gruppe oder Rolle) zuzulassen oder zurückzuweisen. Dieses Authentifizierungsverfahren ist die in machine.config definierte Standardeinstellung.
    • Forms
        Stellt eine Infrastruktur zur Durchführung einer individuellen Authentifizierung bereit, wenn die Authentifizierung über Windows nicht möglich ist. Wenn die Authentifizierung über <forms> aktiviert ist, werden nicht angemeldete Benutzer automatisch zu einer Anmeldeseite umgeleitet, deren URL als Attribut des Elements <forms> angegeben wird. Bei angemeldeten Benutzern wird als Beleg für die Authentifizierung ein Cookie gesendet. Zur Authentifizierung von Benutzern kann jede beliebige vom Entwickler gewählte Datenbank verwendet werden, von Active Directory bis zu einer selbst erstellten Datenbank mit Anmeldedaten. Bei diesem Modus muss ein untergeordnetes <forms>-Element angegeben werden.
    • Passport
        Nutzt den Microsoft Passport-Authentifizierungsdienst. Bei diesem Modus muss ein untergeordnetes <passport>-Element angegeben werden.
    • Keine
        Gibt an, dass keine Authentifizierung auf ASP.NET-Ebene durchgeführt wird. Anforderungen können aber auf IIS-Ebene authentifiziert werden, indem eines der IIS-Authentifizierungsverfahren in Verbindung mit NTFS-Listen zur Zugriffssteuerung (ACL, Access Control List) eingesetzt wird.
 
Untergeordnete Elemente

<forms>, <passport>

 
Beispiel

Das folgende Beispiel konfiguriert die Seiten im Geltungsbereich der Konfigurationsdatei so, dass die Authentifizierung auf der Grundlage von ASP.NET-Formularen erfolgt:

<configuration>
   <system.web>
      <authentication mode="Forms">
         <forms name="myAuthCookie"
            loginUrl="login.aspx"
            protection="All"
            timeout="30"
            path="/" />
      </authentication>
   </system.web>
</configuration>
 
Hinweise

Anhand des Elements <location> kann bei Bedarf die Authentifizierung auf Rechnerebene konfiguriert werden und anhand seines Attributs allowOverride lässt sich verhindern, dass diese Einstellungen in einzelnen Anwendungen außer Kraft gesetzt werden.

Authentifizierung ist ein äußerst komplexes Thema. Weitere Informationen zu den verschiedenen Authentifizierungsverfahren in ASP.NET und ihre Beziehung zur IIS-Authentifizierung finden Sie in Kapitel 9.

<forms> 
<forms
    loginUrl=String
    name=String
    path=String
    protection="All|None|Encryption|Validation"
    timeout=Integer>
</forms>
 
 

Bietet Attribute und ein untergeordnetes Element (<credentials>), um ASP.NET für die formularbasierte Authentifizierung zu konfigurieren.

 
Einsatzbereich

Rechner, Anwendung

 
Attribute
 
  • name
      Gibt den Namen des Authentifizierungs-Cookies an. Falls dieses Attribut nicht angegeben wird, wird standardmäßig der Wert .ASPXAUTH verwendet. Wenn auf dem gleichen Server mehrere Anwendungen ausgeführt werden, die die formularbasierte Authentifizierung einsetzen, empfiehlt es sich in den meisten Fällen, für jede Anwendung einen eigenen Cookie-Namen festzulegen. So verringert sich das Risiko, dass authentifizierte Benutzer einer Anwendung auch in anderen Anwendungen als authentifiziert behandelt werden.
  • loginUrl
      Gibt an, zu welcher URL Benutzer umgeleitet werden sollen, die kein gültiges Authentifizierungs-Cookie besitzen. Wenn ein Benutzer ohne Authentifizierungs-Cookie eine Anwendungsseite anfordert, wird dieser Benutzer zu dieser URL umgeleitet, wo er sich anmelden kann. Von der Anmeldeseite aus kann der Benutzer dann zur ursprünglich angeforderten Seite geführt werden. Falls dieses Attribut nicht angegeben wird, wird standardmäßig der Wert login.aspx verwendet.
  • protection
      Gibt an, auf welche Weise das Authentifizierungs-Cookie vor Veränderungen während der Übertragung geschützt wird. Gültige Werte:
    • All
        Cookies werden verschlüsselt (soweit möglich mit dreifacher DES-Verschlüsselung) und auch einer Datenvalidierung unterzogen. Die durchgeführte Datenvalidierung basiert auf den Einstellungen des Elements machineKey. All ist der Standardwert und außerdem die empfohlene Einstellung zum Schutz des Authentifizierungs-Cookies.
    • Encryption
        Cookies werden nur verschlüsselt. Dies reduziert zwar den beim Schutz der Cookies entstehenden Overhead, lässt aber unter Umständen die Möglichkeit offen, dass Cookies über Klartextangriffe entschlüsselt werden können.
    • None
        Für den Schutz von Cookies sind weder Verschlüsselung noch Validierung aktiviert. Dies reduziert zwar den bei der formularbasierten Authentifizierung entstehenden Overhead, schützt das Authentifizierungs-Cookie aber nicht. Die Verwendung dieses Attributs ist nicht empfehlenswert.
    • Validation
        Ein Validierungsschlüssel wird mit den Daten des Cookies verkettet. Dieser Schlüssel wird überprüft, um sicherzustellen, dass das Cookie während der Übertragung nicht verändert wurde.
  • timeout
      Gibt die Zeitdauer in Minuten an, bis das Authentifizierungs-Cookie seine Gültigkeit verliert. Dies ist ein veränderlicher Wert, der zurückgesetzt wird, wenn eine Anforderung empfangen wird, nachdem mehr als die Hälfte dieser Zeitdauer verstrichen ist. Dieses Attribut gilt nicht für persistente Cookies. Der Standardwert ist 30.
  • path
      Gibt den Pfad des Authentifizierungs-Cookies an. Da viele Browser bei Pfaden nach Groß- und Kleinschreibung unterscheiden, ist der Standardwert ein umgekehrter Schrägstrich (\).
 
Untergeordnete Elemente

<credentials>

 
Beispiel

Siehe das Beispiel für das Element <authentication>.

 
Hinweise

Die formularbasierte Authentifizierung liefert nur wirksame Ergebnisse, wenn sie in Verbindung mit dem Element <authorization> eingesetzt wird, um anonymen Benutzern den Zugriff auf Seiten innerhalb der Anwendung zu verwehren.

Es empfiehlt sich, eine SSL-Verschlüsselung einzusetzen, um die Authentifizierungsdaten aus dem Formular und das Cookie vor unerlaubtem Auslesen zu schützen. Falls Sie SSL nicht verwenden können oder wollen, sollten Sie wenigstens den Standardwert für die Zeitüberschreitung (Timeout) senken, da so die Wahrscheinlichkeit sinkt, dass jemand das Authentifizierungs-Cookie abfängt und die dazugehörige Identität annimmt.

<credentials> 
<credentials
    passwordFormat="Clear|SHA1|MD5">
</credentials>
 
 

Ermöglicht die Speicherung eines oder mehrerer Sätze von Anmeldedaten in der Konfigurationsdatei der Anwendung (oder des Rechners). Diese Daten werden später bei Authentifizierungsanforderungen verwendet. Im untergeordneten Element <user> werden die eigentlichen Anmeldedaten abgelegt.

 
Einsatzbereich

Rechner, Anwendung

 
Attribute
 
  • passwordFormat
      Gibt das Format an, in dem Kennwörter gespeichert und verglichen werden. Gültige Optionen: Clear, SHA1 und MD5.
 
Untergeordnete Elemente

<user>

 
Beispiel

Das Beispiel demonstriert, wie über das Element <credentials> zwei Benutzerkonten gespeichert werden, die dann zur Authentifizierung herangezogen werden können:

<credentials passwordFormat = "SHA1">
   <user name="foo" password="794ED3D18464BAFF93F8DED1CFD00D9A2D9FE316"/>
   <user name="bar" password="B7CDD2A2B0F05E6948E5CEED22FA9A38EB28DEC8"/>
</credentials>
 
Hinweise

Sobald Sie die Anmeldedaten gespeichert haben, können Sie sie zur Authentifizierung verwenden, indem Sie die statische (gemeinsam genutzte) Authenticate-Methode der Hilfsklasse FormsAuthentication aufrufen. Mit der statischen (gemeinsam genutzten) Methode HashPasswordForStoringInConfigFile von FormsAuthentication können Sie einen MD5- oder SHA1-Hash des Kennworts erzeugen, der dann im <user>-Element abgelegt werden kann. Wenn Sie Anmeldedaten im Element <credentials> speichern, sollten Sie immer einen Hash der Kennwörter erstellen, da das Ablegen der Kennwörter im Klartext ein Sicherheitsrisiko darstellt. Zwar dürfte es theoretisch niemandem möglich sein, die Konfigurationsdatei zu lesen, aber durch eine fehlerhafte Konfiguration des Servers oder eine Sicherheitslücke könnte der Zugriff auf diese Datei möglich werden.

<user> 

<user>

 
 

Speichert Benutzernamen und Kennwort für jeden Benutzer, der im <credentials>-Element definiert ist.

 
Einsatzbereich

Rechner, Anwendung

 
Attribute
 
  • name
      Der Benutzername, der für die Authentifizierung verwendet werden soll.
  • password
      Das Kennwort, das für die Authentifizierung verwendet werden soll.
 
Untergeordnete Elemente
Keine
 
Beispiel

Siehe das Beispiel für das Element <credentials>.

 
Hinweise

Zum Hashen eines Kennworts, dass im password-Attribut abgelegt ist, sollten Sie immer die Methode HashPasswordForStoringInConfigFile verwenden. Eine Utility-Seite, die SHA1- oder MD5-Hashes aus Klartext-Kennwörtern erzeugt, finden Sie in den Beispielen in Kapitel 9.

<passport> 
<passport redirectUrl=Url /> 
 
 

Dieses optionale Element konfiguriert eine interne URL, zu der nicht authentifizierte Anforderungen umgeleitet werden, wenn der Microsoft Passport-Authentifizierungsdienst verwendet wird. Dieses Element sollte nur verwendet werden, wenn das Attribut mode des Elements <authentication> auf Passport gesetzt ist.

 
Einsatzbereich

Rechner, Anwendung

 
Attribute
 
  • redirectUrl
      Eine URL in der Anwendung, zu der Anforderungen, die nicht über einen Passport-Authentifizierungsbeleg verfügen, umgeleitet werden.
 
Untergeordnete Elemente
Keine
 
Beispiel

Dieses Beispiel zeigt eine web.config-Datei, die eine Anwendung für die Passport-Authentifizierung konfiguriert:

<configuration>
   <system.web>
      <authentication mode="Passport">
         <passport redirectUrl="Login.aspx"/>
      </authentication>
   </system.web>
</configuration>
 
Hinweise

Weitere Informationen zur Konfiguration der Passport-Authentifizierung finden Sie in der Dokumentation des Passport-SDK unter http://www.passport.com.

<authorization> 

Bietet zwei untergeordnete Elemente, <allow> und <deny>, über die Sie die Benutzer, Rollen oder HTTP-Verben konfigurieren können, die zum Zugriff auf Anwendungsressourcen verwendet werden können.

 
Einsatzbereich

Beliebig

 
Attribute
Keine
 
 
Untergeordnete Elemente

<forms>, <passport>

 
Beispiel

Im Beispiel wird den Benutzern Mary und John gestattet, mit jedem beliebigen HTTP-Verb auf Anwendungsressourcen zuzugreifen. Gleichzeitig wird nicht authentifizierten Benutzern der POST-Zugriff verwehrt.

<configuration>
   <system.web>
      <authorization>
         <allow users="Mary, John" />
         <deny users="?" verbs="POST" />
      </authorization>
   </system.web>
</configuration>
 
Hinweise

Der durch das <authorization>-Element implementierte Autorisierungstyp wird als URL-Autorisierung bezeichnet. Mehr über die URL-Autorisierung erfahren Sie in Kapitel 9.

 

Sie können für eine bestimmte Datei oder ein bestimmtes Verzeichnis in Ihrer Anwendung Autorisierungseinstellungen festlegen, die sich von den in der web.config-Datei im Stammverzeichnis dieser Anwendung festgelegten Standardeinstellungen auf eine der folgenden beiden Arten unterscheiden:

  • Sie fügen der web.config-Datei im betreffenden Unterverzeichnis ein <authorization>-Element hinzu, wie im Beispiel gezeigt.
  • Sie verwenden in der web.config-Datei im Stammverzeichnis das Tag <location> und setzen sein Attribut path wie folgt auf den gewünschten Pfad:
<configuration>
	<location path="files">
		<system.web>
			<authorization>
				<deny users="?" />
			</authorization>
		</system.web>
	</location>
	<system.web>
		<!--other configuration settings -->
	</system.web>
</configuration>
 
<allow>

Gibt Benutzer, Rollen und/oder HTTP-Verben an, die für die Anwendung autorisiert werden sollen.

 
Einsatzbereich

Beliebig

 
Attribute
  • users
      Eine durch Kommas getrennte Liste autorisierter Benutzernamen.
  • roles
      Eine durch Kommas getrennte Liste autorisierter Rollen (NT-Gruppen).
  • verbs
      Eine durch Kommas getrennte Liste autorisierter HTTP-Verben (GET, HEAD, POST oder DEBUG).
 
Untergeordnete Elemente
Keine
 
Beispiel

Siehe das Beispiel für das Element <authorization>.

 
Hinweise

Sie können zwei Stellvertreterzeichen verwenden, um spezielle Benutzergruppen anzugeben:

  • *
      Als Wert für das user-Attribut erhalten alle Benutzer Zugriff. Dies ist die in machine.config definierte Standardeinstellung.
  • ?
      Als Wert für das user-Attribut erhalten anonyme Benutzer Zugriff. Dieses Stellvertreterzeichen wird häufiger mit dem Element <deny> verwendet.
<deny>

Gibt Benutzer, Rollen und/oder HTTP-Verben an, denen die Autorisierung für die Anwendung verwehrt werden soll.

 
Einsatzbereich

Beliebig

 
Attribute
  • users
      Eine durch Kommas getrennte Liste autorisierter Benutzernamen.
  • roles
      Eine durch Kommas getrennte Liste autorisierter Rollen (NT-Gruppen).
  • verbs
      Eine durch Kommas getrennte Liste autorisierter HTTP-Verben (GET, HEAD, POST oder DEBUG).
 
Untergeordnete Elemente
Keine
 
Beispiel

Siehe das Beispiel für das Element <authorization>.

 
Hinweise

Die gleichen Stellvertreterzeichen wie beim Element <allow> können auch beim Element <deny> verwendet werden. Wenn anonymen (nicht authentifizierten) Benutzern der Zugriff verwehrt werden soll, setzen Sie den Wert des users-Attributs des Elements <deny> auf ?.

<browserCaps> 
<browserCaps>
    <result type=className />
    <use var=serverVarName />
        property1=value
        property2=value
        propertyN=value
    <filter match=string>
        property1=value
        property2=value
        propertyN=value
    </filter>
    <filter match=string>
       <filter match=string with=expressionToSearch>
           property1=value
           property2=value
           propertyN=value
       </filter>
    </filter>
    <filter>
       <case match=string>
           property1=value
           property2=value
           propertyN=value
       </case>
       <case match=string>
           property1=value
           property2=value
           propertyN=value
       </case>
    </filter>
</browserCaps>
 
 

Steuert die Konfiguration der Komponente "Browser-Merkmale", die von der Eigenschaft Response.Browser zurückgegeben wird. Die Eigenschafts-/Wertpaare unter dem <use>-Element konfigurieren die Standardwerte für die Eigenschaften der Komponente "Browser-Merkmale". Die Eigenschafts-/Wertpaare in den <filter>-Elementen aktualisieren diese Eigenschaften basierend auf einer Übereinstimmung zwischen den Stringwerten, die für das Attribut match des <case>-Elements angegeben werden, und dem Attribut var des <use>-Elements (das in der Regel auf HTTP_USER_AGENT gesetzt wird).

 
Einsatzbereich

Beliebig

 
Attribute
Keine
 
 
Untergeordnete Elemente

<result>, <use>, <filter>

 
Beispiel

Die Konfigurationsdatei machine.config enthält die Standardeinstellungen für das <browserCaps>-Element. Anhand der Standardeinstellungen lässt sich die Änderung oder Aktualisierung dieses Elements am besten verdeutlichen.

 
Hinweise

Im Wesentlichen dienen dieses Konfigurationselement und seine untergeordneten Elemente dazu, neue Browsertypen hinzuzufügen und die Merkmale dieser Browser zu aktualisieren. Eine Seite, die die Komponente "Browser-Merkmale" aufruft, erhält somit genaue Informationen über die Leistungsmerkmale des Browsers, über den die aktuelle Anforderung gesendet wurde.

<result> 
<result type=className /> 
 
 

Gibt die Klasse an.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • type
      Der Name der Klasse sowie optional Versions-, Kultur- und Schlüsselinformationen zur Spezifizierung der Klasse, die die Ergebnisse der Browser-Merkmalsanalyse enthalten soll. Diese Klasse muss sich aus HttpCapabilitiesBase ableiten. Der in machine.config festgelegte Standard ist System.Web.HttpBrowserCapabilities.
 
Untergeordnete Elemente
Keine
 
Hinweise

In den meisten Fällen kann der Standardtyp von System.Web.HttpBrowserCapabilities übernommen werden. Wenn Sie zusätzlich zu den durch die Klasse HttpBrowserCapabilities definierten Eigenschaften weitere Eigenschaften hinzufügen möchten, können Sie eine eigene Klasse erstellen (abgeleitet von HttpCapabilitiesBase oder HttpBrowserCapabilities) und diese über das Element <result> nutzen.

<use> 
<use var=serverVariableName as=aliasName /> 
 
 

Legt den Namen der Servervariablen fest, die bei der Auswertung der Browser-Merkmale verwendet werden soll.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • var
      Der Name der zu verwendenden Servervariablen. Der Standardwert ist HTTP_USER_AGENT.
  • as
      Die Zeichenfolge, die einen Namen enthält, über den in <case>-Elementen und regulären Ausdrücken auf die Servervariable verwiesen werden kann.
 
Untergeordnete Elemente
Keine
 
Hinweise

Das <use>-Element wird von Eigenschafts-/Wertpaaren gefolgt, die die Standardeigenschaften für die Komponente "Browser-Merkmale" angibt, wenn innerhalb des match-Attributs eines <filter>-Elements (oder dem seines untergeordneten <case>-Elements) keine Entsprechung gefunden wird. Diese Verwendung in der Beschreibung des <browserCaps>-Elements verdeutlicht.

<filter> 
<filter match=string>
     property1=value
     property2=value
     propertyN=value
</filter>
<filter match=string>
     <filter match=string with=expressionToSearch>
         property1=value
         property2=value
         propertyN=value
    </filter>
</filter>
<filter>
    <case match=string>
         property1=value
         property2=value
         propertyN=value
    </case>
    <case match=string>
         property1=value
         property2=value
         propertyN=value
    </case>
</filter>
 
 

Gibt ein Muster für einen regulären Ausdruck an, nach dem in der im <use>-Element angegebenen Servervariablen gesucht werden soll (oder optional einen anderen Ausdruck). Im <browserCaps>-Element können mehrere <filter>-Elemente enthalten sein. Ebenso kann jedes <filter>-Element <case>-Elemente oder andere <filter>-Elemente enthalten. Alle Eigenschaftenzuweisungen zum Suchen übereinstimmender <filter>-Elemente werden unabhängig von ihrer Reihenfolge ausgeführt.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • match
      Die gesuchte Zeichenfolge. Verwendet die .NET-Framework-Syntax für reguläre Ausdrücke. Dieses Attribut ist optional. Wird es weggelassen, wird bei allen Anforderungen von einer Übereinstimmung ausgegangen, und alle Eigenschafts-/Wertzuweisungen im <filter>-Element werden ausgeführt.
  • with
      Der reguläre Ausdruck oder String, nach dem gesucht werden soll. Dieses Attribut ist optional. Wird es weggelassen, wird nach der im <use>-Element angegebenen Servervariablen gesucht.
 
Untergeordnete Elemente

<case>

 
Hinweise

Die Tatsache, dass <filter>-Elemente verschachtelt werden können, macht sie sehr flexibel, was die Suche nach Informationsteilmengen anbelangt. So verwendet zum Beispiel das standardmäßige <browserCaps>-Element in der Datei machine.config verschachtelte <filter>-Elemente, um die Haupt- und Unterversionsnummern aus der Servervariablen HTTP_USER_AGENT abzurufen. Anhand dieser Informationen kann das Element <browserCaps> bestimmte Eigenschaften zuweisen, die bei verschiedenen Unterversionen eines Browsers (d.  h. das x in 4.x) unterschiedlich sein können.

<case> 
<case match=string>
     property1=value
     property2=value
     propertyN=value
</case>
 
 

Gibt ein <case>-Element aus einer Gruppe von exklusiven Übereinstimmungen an, für die Eigenschaftenzuweisungen ausgeführt werden. Nur das erste übereinstimmende <case>-Element innerhalb eines bestimmten <filter>-Elements wird ausgeführt. Der Rest wird ignoriert.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • match
      Die gesuchte Zeichenfolge. Verwendet die .NET-Framework-Syntax für reguläre Ausdrücke. Dieses Attribut ist optional. Wird es weggelassen, wird bei allen Anforderungen von einer Übereinstimmung ausgegangen, und alle Eigenschafts-/Wertzuweisungen im <filter>-Element werden ausgeführt.
  • with
      Der reguläre Ausdruck oder String, nach dem gesucht werden soll. Dieses Attribut ist optional. Wird es weggelassen, wird nach der im <use>-Element angegebenen Servervariablen gesucht.
 
Untergeordnete Elemente
Keine
 
Hinweise

Dieses Element ist nützlich, wenn Sie nur eine einzige Übereinstimmung benötigen. So wird beispielsweise bei der Standardkonfiguration von <browserCaps> in der Datei machine.config das Element <case> verwendet, um die Plattformattribute (win16 und win32) zuzuweisen.

<clientTarget> 
<clientTarget>
    <add alias=aliasName
        userAgent=userAgentString />
    <remove alias=aliasName />
    <clear />
</clientTarget>
 
 

Weist bestimmten User Agent-Strings von Browsern Aliasnamen zu. Diese sollen von ASP.NET-Serversteuerelementen verwendet werden, um festzustellen, welche Art von Inhalt dargestellt werden soll.

 
Einsatzbereich

Beliebig

 
Attribute
Keine
 
 
Untergeordnete Elemente
  • <add>
      Fügt einen Alias mit dem Namen hinzu, der im alias-Attribut des vom userAgent-Attribut angegebenen User Agent-Strings festgelegt ist.
  • <remove>
      Entfernt einen zuvor festgelegten Alias mit dem Namen, der im alias-Attribut angegeben ist.
  • <clear>
      Löscht alle zuvor konfigurierten Aliasnamen.
 
Beispiel

Dieses Beispiel stammt aus dem Standard-<clientTarget>-Element:

<clientTarget>
   <add alias="ie5"
      userAgent="Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0)" />
   <add alias="ie4"
      userAgent="Mozilla/4.0 (compatible; MSIE 4.0; Windows NT 4.0)" />
   <add alias="uplevel"
      userAgent="Mozilla/4.0 (compatible; MSIE 4.0; Windows NT 4.0)" />
   <add alias="downlevel"
      userAgent="Unknown" />
</clientTarget>
 
Hinweise

Dieses Element wird im Wesentlichen von den integrierten ASP.NET-Serversteuerelementen verwendet. Daher sollten Sie keine Änderungen an vorhandenen Aliasnamen vornehmen, damit diese Steuerelemente nicht an der Darstellung von Uplevel-Inhalten gehindert werden.

<compilation> 
<compilation
    batch=boolean
    batchTimeout=numSeconds
    debug=boolean
    defaultLanguage=languageAlias
    explicit=boolean
    maxBatchSize=maxPages
    maxBatchGeneratedFileSize=maxSize
    numRecompilesBeforeAppRestart=numRecompiles
    strict=boolean
    tempDirectory=dirName >
    <compilers>
       <compiler language=languageAlias
          extension=fileExt
          type=typeName
          warningLevel=number
          compilerOptions=optionString />
    </compilers>
    <assemblies>
       <add assembly=assemblyName />
       <remove assembly=assemblyName />
       <clear />
    </assemblies>
</compilation>
 
 

Stellt Attribute und untergeordnete Elemente zur Konfiguration der Kompilierungsoptionen von ASP.NET-Anwendungen bereit. Alle Attribute sind optional.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • batch
      Gibt an, ob ASP.NET eine Stapelkompilierung aller Seiten der Anwendung versuchen soll, wenn die erste Anforderung für eine Seite eingeht. Der Standard ist True.
  • batchTimeout
      Gibt an, wie viele Sekunden der Compiler versuchen soll, eine Stapelkompilierung der Seiten in der Anwendung durchzuführen. Wenn das Zeitlimit überschritten ist, werden die Seiten kompiliert, sobald sie das erste Mal angefordert werden. Der Standard ist 15.
  • debug
      Gibt an, ob Seiten mit Debug-Symbolen kompiliert werden. Der Standard ist False.
  • defaultLanguage
      Gibt den Sprachcompiler an, der zum Kompilieren von Inline-Code in ASP.NET-Seiten verwendet werden soll, für die keine Sprache angegeben wurde. Der Standard ist VB (Visual Basic .NET).
  • explicit
      Gibt an, ob die Compiler-Option Option Explicit aus Visual Basic .NET aktiviert ist. Der Standard ist True.
  • maxBatchSize
      Gibt an, wie viele Klassen bei der Stapelkompilierung maximal erstellt werden sollen. Der Standard ist 1000.
  • maxBatchGeneratedFileSize
      Gibt an, welche Größe in KB die während der Stapelkompilierung erzeugten Quelldateien zusammengenommen maximal haben dürfen. Der Standard ist 3000.
  • numRecompilesBeforeAppRestart
      Gibt die Anzahl der Neukompilierungen an, bevor die appDomain mit der Anwendung gelöscht und eine neue appDomain erstellt wird. Der Standard ist 15.
  • strict
      Gibt an, ob die Compiler-Option Option Strict (die keine impliziten verengenden Konvertierungen zulässt) aus Visual Basic .NET aktiviert ist. Der Standard ist False.
  • tempDirectory
      Gibt das Verzeichnis an, in dem temporäre Dateien aus dynamisch kompilierten Code für die Anwendung gespeichert werden. Der Standard ist %windir%\Microsoft.NET\Framework\%version%\Temporary ASP.NET Files.
 
Untergeordnete Elemente

<assemblies>, <compilers>

 
Beispiel

Das Beispiel aktiviert die Compiler-Option Option Strict aus Visual Basic .NET und deaktiviert die Stapelkompilierung:

<configuration>
   <system.web>
      <compilation
         batch="false"
         strict="true">
      </compilation>
   </system.web>
</configuration>
 
Hinweise

Sie sollten sich über die Auswirkungen von Änderungen, die Sie an diesem Element vornehmen möchten, in allen Einzelheiten im Klaren sein. Wenn Sie beispielsweise das Attribut debug auf True setzen, hat dies deutlich negative Auswirkungen auf die Leistung. Wenn Sie das Attribut strict auf True setzen, reduziert sich dadurch zwar die Wahrscheinlichkeit von Bugs aufgrund impliziter Konvertierung von Datentypen, gleichzeitig können dadurch aber auch mehr Compiler-Fehler während der Entwicklung des Codes auftreten.

<assemblies> 
<assemblies>
    <add assembly=assemblyInfo />
    <remove assembly=assemblyInfo />
    <clear />
</assemblies>
 
 

Zum Hinzufügen oder Entfernen von Assemblies, die während der dynamischen Kompilierung von ASP.NET-Seiten referenziert und verknüpft werden sollen. Standardmäßig wird während der dynamischen Kompilierung auf die Assemblies mscorlib, System, System.Drawing, System.EnterpriseServices, System.Web, System.Data, System.Web.Services und System.Xml verwiesen, ebenso auf alle Assemblies, die sich im Unterverzeichnis bin des Anwendungsverzeichnisses befinden.

 
Einsatzbereich

Beliebig

 
Attribute
Keine
 
 
Untergeordnete Elemente
  • <add>
      Fügt einen Alias mit dem Namen hinzu, der im alias-Attribut des vom userAgent-Attribut angegebenen User Agent-Strings festgelegt ist.
  • <remove>
      Entfernt einen zuvor festgelegten Alias mit dem Namen, der im alias-Attribut angegeben ist.
  • <clear>
      Löscht alle zuvor konfigurierten Aliasnamen.
 
Beispiel

Dieses Beispiel zeigt, wie das Element <add> vom Mobile Internet Toolkit verwendet wird, um der Liste von Assemblies zur dynamischen Kompilierung die Assembly System.Web.Mobile hinzuzufügen.

<assemblies>
   <add assembly="System.Web.Mobile,
      Version=1.0.3300.0,
      Culture=neutral,
      PublicKeyToken=b03f5f7f11d50a3a" />
</assemblies>
 
Hinweise

Mit dem Element <add> wird ein Sternchen (*) als Stellvertreterzeichen verwendet, um anzugeben, dass alle Assemblies im privaten Assembly-Cache der Anwendung (standardmäßig das Unterverzeichnis bin der Anwendung) der Liste der Assemblies hinzugefügt werden sollen, die während der dynamischen Kompilierung verknüpft werden. Dadurch ist sichergestellt, dass alle Mitglieder dieser Assemblies automatisch allen Seiten in der Anwendung zur Verfügung stehen.

<compilers> 
<compilers>
    <compiler language=languageAlias
       extension=fileExt
       type=typeName
       warningLevel=number
       compilerOptions=optionString />
</compilers>
 
 

Enthält mindestens ein <compiler>-Element, das Konfigurationsoptionen für einen bestimmten mit ASP.NET verwendeten Compiler definiert.

 
Einsatzbereich

Beliebig

 
Attribute
Keine
 
 
Untergeordnete Elemente

<compiler>

 
Hinweise

Dank der Elemente <compilers> und <compiler> braucht zur Unterstützung einer neuen .NET-Sprache in ASP.NET nur ein neues <compiler>-Element hinzugefügt zu werden, das die Sprach-Aliasnamen, die Dateierweiterung für die Klassendateien dieser Sprache sowie Typinformationen für den Sprachcompiler angibt.

<compiler> 
<compiler language=languageAlias
    extension=fileExt
    type=typeName
    warningLevel=number
    compilerOptions=optionString />
 
 

Gibt Konfigurationsoptionen für eine bestimmte Sprache an.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • language
      Gibt den oder die Namen an, über die die Sprache im Attribut language der Direktive @ Page angegeben wird. Mehrere Namen sind durch Strichpunkte zu trennen. Dieses Attribut ist erforderlich.
  • extension
      Gibt die Dateierweiterungen an, die von Code-Behind-Dateien für die betreffende Sprache verwendet werden. Mehrere Einträge sind durch Strichpunkte zu trennen. Dieses Attribut ist erforderlich.
  • type
      Gibt die .NET-Typinformationen für die Klasse an, die zum Kompilieren von Ressourcen in der betreffenden Sprache verwendet werden soll. Dieses Attribut ist erforderlich.
  • warningLevel
      Gibt die Compiler-Warnstufe für die Sprache an. Dieses Attribut ist optional und wird möglicherweise nicht für alle Compiler unterstützt.
  • compilerOptions
      Gibt eine Zeichenfolge mit gültigen Compiler-Optionen an, die an den Compiler übergeben werden.
 
Untergeordnete Elemente
Keine
 
Hinweise

Das Element <compilers> in der Datei machine.config ist ein anschauliches Beispiel für die Verwendung dieses Elements. Schauen Sie den Konfigurationsabschnitt an, um festzustellen, wie die Compiler für Visual Basic .NET, C# und JScript .NET konfiguriert werden.

<customErrors> 
<customErrors
    defaultRedirect=Url
    mode=mode >
    <error statusCode=httpStatusCode
       redirect=Url />
</customErrors>
 
 

Gibt mindestens eine Seite an, zu der Benutzer umgeleitet werden, wenn ein nicht verarbeiteter Ausnahmefehler in einer ASP.NET-Anwendung festgestellt wird. Es können eine Standardfehlerseite sowie eine oder mehrere Fehlerseiten für bestimmte HTTP-Fehlercodes angegeben werden.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • defaultRedirect
      Gibt die URL der Seite an, auf die Benutzer bei allen Fehlern umgeleitet werden, wenn für den HTTP-Statuscode des betreffenden Fehlers keine bestimmte Fehlerseite konfiguriert ist. Dieses Attribut ist optional.
  • mode
      Gibt den benutzerdefinierten Fehlermodus an. Gültige Werte sind Off, On und RemoteOnly. Off deaktiviert die benutzerdefinierte Fehlerbehandlung, On aktiviert benutzerdefinierte Fehlerseiten für lokale und Remote-Anforderungen. RemoteOnly aktiviert benutzerdefinierte Fehlerseiten für Remote-Anforderungen, sendet aber detaillierte Fehlermeldungen für lokale Anforderungen. Dieses Attribut ist erforderlich.
 
Untergeordnete Elemente

<error>

 
Beispiel

Das Beispiel konfiguriert eine Standardseite, die Remote-Clients angezeigt wird, wenn ein nicht verarbeiteter Ausnahmefehler auftritt:

<configuration>
   <system.web>
      <customErrors
         defaultRedirect="Error.aspx" />
   </system.web>
</configuration>
 
Hinweise

Wenn Sie das Attribut mode auf RemoteOnly setzen, erhalten Sie detaillierte Fehlerinformationen nur von dem lokalen Rechner, auf dem die Seiten ausgeführt werden. Remote-Anforderungen geben die benutzerdefinierte Fehlerseite zurück, die ggf. für den Statuscode des aufgetretenen Fehlers konfiguriert wurde.

Wenn Sie die von ASP.NET ausgegebenen Debugging-Informationen sehen möchten, wenn ein Fehler auftritt, muss das Attribut mode auf Off gesetzt sein.

<error> 
<error statusCode=httpStatusCode
    redirect=Url />
 
 

Gibt eine benutzerdefinierte Fehlerseite an, auf die Benutzer bei einem bestimmten HTTP-Statuscode umgeleitet werden sollen.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • statusCode
      Gibt den HTTP-Statuscode (z.  B. 404 bei einer nicht gefundenen Seite) für die angegebene benutzerdefinierte Fehlerseite an. Dieses Attribut ist optional.
  • redirect
      Gibt die URL der Seite an, auf die Anforderungen mit dem entsprechenden HTTP-Statuscode umgeleitet werden sollen. Dieses Attribut ist optional.
 
Untergeordnete Elemente

None

 
Beispiel

Dieses Beispiel konfiguriert eine benutzerdefinierte Fehlerseite für den Fehlercode 404 und verwendet die im vorigen Beispiel konfigurierte Standardfehlerseite.

<configuration>
   <system.web>
      <customErrors
         defaultRedirect="Error.aspx">
         <error statusCode="404" redirect="My404ErrorPage.aspx"/>
      </customErrors>
   </system.web>
</configuration>
 
Hinweise

Zwar sind benutzerdefinierte Fehlerseiten eine praktische Möglichkeit, Benutzer vor den sonst üblichen Fehlercodes abzuschirmen und stattdessen aussagekräftigere Meldungen anzuzeigen, sind aber kein Ersatz für eine "richtige" Fehlerbehandlung. Bis der Fehler eine benutzerdefinierte Fehlerseite erreicht, ist es bereits wesentlich schwieriger, den Fehler auf elegante Weise zu beheben, was zu Leistungseinbußen für den Benutzer führen kann.

<globalization> 
<globalization
    requestEncoding=encodingString
    responseEncoding=encodingString
    fileEncoding=encodingString
    culture=cultureString
    uiCulture=cultureString />
 
 

Stellt Attribute zur Konfiguration von Kodierungs- und Kultureinstellungen bereit. Diese Attribute bilden die Grundlage für die erwartete Kodierung von Anforderungen, Antworten und Dateien zur Internationalisierung.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • requestEncoding
      Gibt die angenommene Kodierung eingehender Anforderungen an. Dies kann jeder gültige Kodierungsstring sein und muss mit dem Attribut responseEncoding übereinstimmen. Der Standard ist UTF-8. Dieses Attribut ist optional.
  • responseEncoding
      Gibt an, welche Kodierung für den Inhalt der Antworten verwendet werden soll. Dies kann jeder gültige Kodierungsstring sein und muss mit dem Attribut requestEncoding übereinstimmen. Der Standard ist UTF-8. Dieses Attribut ist optional.
  • fileEncoding
      Gibt an, welche Kodierung zum Parsen von .aspx-, .asmx- und .asax-Dateien verwendet werden soll. Dieses Attribut ist optional.
  • culture
      Gibt die angenommene Kultur von eingehenden Anforderungen an. Der Wert kann jeder gültige Kulturstring sein. Dieses Attribut ist optional.
  • uiCulture
      Gibt die Kultur für Suchen nach länderspezifischen Ressourcen an. Der Wert kann jeder gültige Kulturstring sein. Dieses Attribut ist optional.
 
Untergeordnete Elemente
Keine
 
Beispiel

Diese Beispiel zeigt, wie die Standardeinstellungen für <globalization> in web.config konfiguriert sind.

<configuration>
   <system.web>
      <globalization
         requestEncoding="utf-8"
         responseEncoding="utf-8" />
   </system.web>
</configuration>
 
Hinweise

Eine Liste gültiger Kulturstrings finden Sie in der Dokumentation zum .NET-Framework für die Klasse System.Globalization.CultureInfo.

<httpHandlers> 
<httpHandlers>
    <add verb=httpVerbs
        path=pathInfo
        type=typeInfo
        validate=boolean />
    <remove verb=httpVerbs
        path=pathInfo />
    <clear />
</httpHandlers>
 
 

Dient zum Hinzufügen oder Entfernen von HTTP-Handlern (HttpHandlers), die die Verarbeitung von Anforderungen für ein bestimmtes HTTP-Verb und/oder Dateityp oder Pfad übernehmen. ASP.NET selbst ist als HTTP-Handler für .aspx- und .asmx-Dateien eingerichtet. HTTP-Handler sollen verhindern, dass Quellcode für andere ASP.NET-Dateitypen, wie etwa global.asax, heruntergeladen wird.

 
Einsatzbereich

Beliebig

 
Attribute
Keine
 
 
Untergeordnete Elemente
  • <add>
      Fügt einen HTTP-Handler hinzu. Die vom HTTP-Handler verarbeiteten HTTP-Verben (GET, POST usw.) werden durch das Attribut verb angegeben. Mit dem Stellvertreterzeichen * werden alle Verben angegeben. Die vom HTTP-Handler zu bearbeitenden Pfade oder Dateierweiterungen werden durch das Attribut path angegeben. Welche Klasse zur Verarbeitung der Anforderung verwendet wird, wird im Attribut type angegeben. Diese Klasse muss die IHttpHandler-Schnittstelle implementieren. Das Attribut validate teilt ASP.NET mit, ob die im type-Attribut angegebene Klasse schon geladen werden soll, bevor eine entsprechende Anforderung eingeht.
  • <remove>
      Entfernt einen zuvor konfigurierten HTTP-Handler ausgehend von den Angaben in den Attributen verb und path. Die Attribute müssen mit einem zuvor konfigurierten <add>-Element übereinstimmen.
  • <clear>
      Löscht alle zuvor konfigurierten HTTP-Handler.
 
Beispiel

Das folgende Beispiel konfiguriert einen benutzerdefinierten HTTP-Handler für die Dateierweiterung .aspnetian:

<configuration>
   <system.web>
      <httpHandlers>
         <add verb="*"
            path="*.aspnetian"
            type="aspnetian.aspnetianHandler" />
      </httpHandlers>
   </system.web>
</configuration>
 
Hinweise

Damit das Beispiel einwandfrei funktioniert, müssen Sie die Dateierweiterung .aspnetian dem ISAPI-Handler von ASP.NET zuweisen. Andernfalls wird diese Anforderung nicht dem benutzerdefinierten HTTP-Handler übergeben. Kapitel 9 enthält eine schrittweise Anleitung zur Zuweisung zusätzlicher Dateitypen zum ISAPI-Handler von ASP.NET.

<httpModules> 
<httpModules>
    <add
        name=moduleName
        type=typeInfo />
    <remove name=moduleName />
    <clear />
</httpModules>
 
 

Dient zum Hinzufügen oder Entfernen von HTTP-Modulen (HttpModules). HttpModules sind spezielle Klassen, die an der Verarbeitung aller Anwendungsanforderungen beteiligt sind. In ASP.NET sind Caching, der Sitzungsstatus sowie die Authentifizierungs- und Autorisierungsfunktionen als HTTP-Module implementiert.

 
Einsatzbereich

Beliebig

 
Attribute
Keine
 
 
Untergeordnete Elemente
  • <add>
      Fügt ein HTTP-Modul hinzu. Welche Klasse dieses HTTP-Modul implementiert, wird durch das Attribut type festgelegt. Diese Klasse muss die IHttpModule-Schnittstelle implementieren. Das Attribut name stellt einen Namen bereit, über den auf das HTTP-Modul verwiesen werden kann, z.  B. später in einem <remove>-Element.
  • <remove>
      Entfernt entsprechend dem angegebenen name-Attribut ein zuvor konfiguriertes HTTP-Modul. Das Attribut muss mit einem zuvor konfigurierten <add>-Element übereinstimmen.
  • <clear>
      Löscht alle zuvor konfigurierten HTTP-Module.
 
Beispiel

In diesem Beispiel wird das HTTP-Modul für den Sitzungsstatus entfernt  – ein nützlicher Schritt, wenn Sie dieses Modul nicht verwenden:

<configuration>
   <system.web>
      <httpModules>
         <remove name="Session" />
      </httpModules>
   </system.web>
</configuration>
 
Hinweise

Wenn Sie ein bestimmtes HTTP-Modul, z.  B. das Modul für den Sitzungsstatus oder Authentifizierungsmodule, nicht verwenden, können Sie unnötigen Overhead einsparen, indem Sie diese Module mit dem Element <remove> aus der web.config-Datei der Anwendung entfernen.

<httpRuntime> 
<httpRuntime
    appRequestQueueLimit=numRequests
    executionTimeout=numSeconds
    maxRequestLength=numKBytes
    minFreeLocalRequestFreeThreads=numThreads
    minFreeThreads=numThreads
    useFullyQualifiedRedirectUrl=boolean /> 
 
 

Enthält Attribute zur Konfiguration der Einstellungen für die ASP.NET-HTTP-Runtime.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • appRequestQueueLimit
      Gibt an, wie viele Anforderungen maximal in der Warteschlange stehen dürfen. Sobald diese Obergrenze erreicht ist, wird an weitere Anforderungen die Antwort "503" (Server ist ausgelastet) ausgegeben. Der Standard ist 100.
  • executionTimeout
      Gibt an, wie viele Sekunden für die Ausführung einer Anforderung zur Verfügung stehen, bevor die Anforderung von der Runtime beendet wird. Der Standard ist 90.
  • maxRequestLength
      Gibt die maximale Größe (KB) von Dateien an, die ein Client in eine ASP.NET-Anwendung laden darf. Dieses Attribut dient in erster Linie zur Verhinderung von "Denial of Service"-Angriffen, bei denen versucht wird, sehr große Dateien auf den Server hochzuladen. Der Standard ist 4096.
  • minFreeLocalRequestFreeThreads
      Gibt an, wie viele Threads mindestens für Anforderungen vom lokalen Host, die zusätzliche Threads benötigen, reserviert werden. Der Standard ist 4.
  • minFreeThreads
      Gibt an, wie viele Threads mindestens für Anforderungen, die zusätzliche Threads benötigen, reserviert werden. Der Standard ist 8.
  • useFullyQualifiedRedirectUrl
      Gibt an, ob an den Client zur Umleitung gesendete URLs absolut oder relativ angegeben werden. Der Standard ist False, was bedeutet dass die URL relativ ist.
 
Untergeordnete Elemente
Keine
 
Beispiel

Dieses Beispiel legt fest, dass clientseitige Umleitungs-URLs vollständig und absolut angegeben werden müssen. Dies ist für einige der mobilen Steuerelemente im Microsoft Mobile Internet Toolkit erforderlich:

<configuration>
   <system.web>
      <httpRuntime
         useFullyQualifiedRedirectUrl="true" />
   </system.web>
</configuration>
 
Hinweise

Eines der am häufigsten angepassten Attribute ist maxRequestLength, denn bei Sites, bei denen Dateien hochgeladen werden müssen, ist 4  MB oft nicht ausreichend. Vorsicht bei Erhöhung dieses Werts! Es empfiehlt sich, das Attribut auf die maximal erwartete Dateigröße zu setzen. Wenn Sie diesen Wert zu hoch wählen, kann Ihre Seite für "Denial of Service"-Attacken anfällig werden.

<identity> 
<identity
    impersonate=boolean
    userName=string
    password=string />
 
 

Gibt an, ob ein Identitätswechsel für Anforderungen möglich ist, sowie welche Identität und welches dazugehörige Kennwort für Anforderungen vom ASP.NET-Worker-Prozess verwendet werden sollen.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • impersonate
      Gibt an, ob bei der Anwendung ein Identitätswechsel möglich ist. Ist dieses Attribut auf True gesetzt, gelten für Anforderungen des ASP.NET-Worker-Prozesses die Sicherheitseinstellungen des im Attribut userName angegebenen Kontos. Ist dieses Attribut leer, gelten die Einstellungen des Kontos des angemeldeten Benutzers. Der Standard ist False.
  • userName
      Gibt den Benutzernamen des Windows-Kontos an, das für einen Identitätswechsel verwendet werden soll. Wird hier kein Wert angegeben oder wird das Attribut weggelassen, gelten für Anforderungen die Einstellungen des angemeldeten Benutzers.
  • password
      Gibt das Kennwort für das im Attribut userName bezeichnete Konto an. Dieses Kennwort wird im Klartext gespeichert.
 
Untergeordnete Elemente
Keine
 
Beispiel

Im folgenden Beispiel wird der Identitätswechsel für den angemeldeten und durch IIS authentifizierten Benutzer aktiviert:

<configuration>
   <system.web>
      <identity
         impersonate="true"
         userName="" />
   </system.web>
</configuration>
 
Hinweise

Da im Attribut password Kennworte in lesbarer Form gespeichert werden, sollten Sie gründlich abwägen, ob der Einsatz dieser Funktionalität sinnvoll ist. Das Speichern vertraulicher Informationen wie Kennwörtern in Form von Textdateien stellt ein mögliches Sicherheitsrisiko dar.

<machineKey> 
<machineKey
    validationKey="autogenerate|value"
    decryptionKey="autogenerate|value"
    validation="SHA1|MD5|3DES" />
 
 

Gibt die Einstellungen für Kryptographieschlüssel an, die zur Validierung und Entschlüsselung von Cookies zur formularbasierten Authentifizierung verwendet werden.

 
Einsatzbereich

All

 
Attribute
 
  • validationKey
      Der Schlüssel, der zur Validierung von Cookie-Daten für die formularbasierte Authentifizierung, zur MAC-Überprüfung von ViewState und für Sitzungsstatus-Cookies verwendet wird. Der Standardwert ist autogenerate, wodurch ein zufälliger Schlüssel erzeugt und gespeichert wird. Bei Web-Farm-Implementierungen können Sie diesen Wert für jeden Server auf die gleiche Anzahl von Zeichen im Schlüssel (40-128) setzen, damit alle Server eine erfolgreiche Validierung durchführen können.
  • decryptionKey
      Der Schlüssel, der zur Entschlüsselung von Cookie-Daten für die formularbasierte Authentifizierung verwendet wird. Der Standardwert ist autogenerate, wodurch ein zufälliger Schlüssel erzeugt und gespeichert wird. Bei Web-Farm-Implementierungen können Sie diesen Wert für jeden Server auf die gleiche Anzahl von Zeichen im Schlüssel (40-128) setzen, damit alle Server eine erfolgreiche Validierung durchführen können.
  • validation
      Gibt den Verschlüsselungstyp an, der bei der Datenvalidierung verwendet wird.
 
Untergeordnete Elemente
Keine
 
Hinweise

Bei Web-Farms müssen Sie darauf achten, dass die Werte für validationKey und decryptionKey für alle Server in der Farm übereinstimmen. Sind die Werte nicht abgestimmt, kann dies zu Fehlern bei der formularbasierten Authentifizierung, zu ViewState-Fehlern oder zu Problemen mit dem Sitzungsstatus führen.

<pages> 
<pages
    buffer=boolean
    enableSessionState="true|false|ReadOnly"
    enableViewState=boolean
    enableViewStateMac=boolean
    autoEventWireup=boolean
    smartNavigation=boolean
    pageBaseType=typeInfo
    userControlBaseType=typeInfo />
 
 

Enthält Attribute zur Konfiguration der Standardeinstellungen von ASP.NET-Seiten und -Benutzersteuerelementen. Diese Einstellungen können durch Attribute der Direktive @ Page oder @ Control außer Kraft gesetzt werden.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • buffer
      Gibt an, ob das Puffern der Seitenausgabe aktiviert oder deaktiviert ist. Der Standard ist True.
  • enableSessionState
      Gibt an, ob eine Seite Zugriff auf das Modul für den Sitzungsstatus hat. Mögliche Werte sind True, False und ReadOnly. Der Standard ist True.
  • enableViewState
      Gibt an, ob ViewState auf Seitenebene aktiviert ist. Der Standard ist True.
  • enableViewStateMac
      Gibt auf Seitenebene an, ob für das verborgene ViewState-Feld eine Rechner-Authentifizierungsprüfung (Machine Authentication Check, MAC) durchgeführt wird. Anhand dieser Angabe lässt sich eine clientseitige Manipulation von ViewState feststellen. Der Standard ist True.
  • autoEventWireup
      Gibt an, ob ASP.NET automatisch bestimmte Seitenereignisse, z.  B. Page_Load, unterstützt. Der Standard ist True.
  • smartNavigation
      Gibt an, ob die Funktion "Smart Navigation" auf Seitenebene aktiviert ist. Für diese Funktion unterstützt Internet Explorer ab Version 5 Postbacks und die Aktualisierung von Teilen einer Seite. Der Standard ist False.
  • pageBaseType
      Gibt die Basisklasse an, von der sich alle Seiten ableiten. Der Standardwert ist System.Web.UI.Page.
  • userControlBaseType
      Gibt die Basisklasse an, von der sich alle Benutzersteuerelemente ableiten. Der Standardwert ist System.Web.UI.UserControl.
 
Untergeordnete Elemente
Keine
 
Beispiel

Das Beispiel deaktiviert sowohl SessionState als auch ViewState auf Seitenebene:

<configuration>
   <system.web>
      <pages
         enableSessionState="false"
         enableViewState="false" />
   </system.web>
</configuration>
 
Hinweise

Mit dem Element <pages> können Sie schnell und einfach auf Anwendungs- oder Ordnerebene Standardwerte für die Seiten der Anwendung festlegen. Beispielsweise können Sie damit Seiten, die keinen Zugriff auf den Sitzungsstatus erfordern, in einem separaten Ordner ablegen und über das Element <pages> den Sitzungsstatus für diesen Ordner deaktivieren. In diesem Fall wird für einen Benutzer erst eine Sitzung erstellt, wenn der Benutzer eine Seite in der Anwendung anfordert, für die EnableSessionState auf True gesetzt ist.

Die Standardeinstellung von EnableViewStateMac ist True. Dies sollten Sie nicht vergessen, denn bei der MAC-Prüfung werden die Einstellungen im Element <machineKey> verwendet, um eine verschlüsselte Version des verborgenen ViewState-Felds zu erstellen. In einer Web-Farm müssen die <machineKey>-Einstellungen für jeden Server in der Farm übereinstimmen. Andernfalls schlägt die MAC-Prüfung fehl, wenn die ursprüngliche Anforderung eines Benutzers von dem einen Server verarbeitet wird, ein späteres Postback dagegen von einem anderen Server mit abweichenden Einstellungen für <machineKey>.

<processModel> 
<processModel
    enable=boolean
    timeout="Infinite"|HH:MM:SS
    idleTimeout="Infinite"|HH:MM:SS
    shutdownTimeout="Infinite"|HH:MM:SS
    requestLimit=numRequests
    requestQueueLimit="Infinite"|numRequests
    restartQueueLimit="Infinite"|numRequests
    memoryLimit=percentMemory
    cpuMask=cpuNumBitMask
    webGarden=boolean
    userName=username
    password=password
    logLevel="All|None|Errors"
    clientConnectedCheck=HH:MM:SS
    comAuthenticationLevel="Default|None|Connect|Call|Pkt|
       PktIntegrity|PktPrivacy"
comImpersonationLevel="Default|Anonymous|Identify|Impersonate|
    Delegate"
    responseRestartDeadlockInterval="Infinite"|HH:MM:SS
    responseDeadlockInterval="Infinite"|HH:MM:SS
    maxWorkerThreads=numThreads
    maxIoThreads=numThreads
    serverErrorMessageFile=fileName />
 
 

Enthält Attribute zur Konfiguration des ASP.NET-Worker-Prozesses in IIS 5.

 
Einsatzbereich

Nur Rechner

 
Attribute
 
  • enable
      Gibt an, ob die <processModel>-Einstellungen aktiviert sind. Der Standard ist True.
  • timeout
      Gibt im Format hh:mm:ss die Lebensdauer des Prozesses an. Wenn die in diesem Wert angegebene Zeit abläuft, wird ein neuer Prozess gestartet und der aktuelle Prozess wird beendet. Sie können diese Zeitüberschreitung deaktivieren, indem Sie den Wert Infinite verwenden. Der Standard ist Infinite.
  • idleTimeout
      Gibt die Lebensdauer des Prozesses bei Leerlauf an und verwendet dazu das Format hh:mm:ss. Wenn die in diesem Wert angegebene Zeit abläuft, wird der aktuelle Prozess beendet. Sie können diese Zeitüberschreitung deaktivieren, indem Sie den Wert Infinite verwenden. Der Standard ist Infinite.
  • shutdownTimeout
      Gibt im Format hh:mm:ss an, welche Zeitspanne zur Verfügung steht, um den Prozess regulär zu beenden. Wenn die angegebene Zeit abläuft, wird der Prozess abgebrochen. Sie können diese Zeitüberschreitung deaktivieren, indem Sie den Wert Infinite verwenden. Der Standard ist 0:00:05.
  • requestLimit
      Gibt an, wie viele Anforderungen der ASP.NET-Prozess verarbeiten kann, bevor er beendet und neu gestartet wird. Mithilfe dieses Attributs können Sie den ASP.NET-Prozess proaktiv neu starten, um Speicherlecks oder andere Probleme zu kompensieren, die durch ältere in der Anwendung erforderliche Ressourcen (z.  B. COM-Komponenten) verursacht werden. Der Standardwert ist Infinite. Dadurch wird diese Funktion deaktiviert.
  • requestQueueLimit
      Gibt an, wie viele Anforderungen der ASP.NET-Prozess in die Warteschlange stellen kann, bevor er beendet und neu gestartet wird. Dieses Attribut kann verwendet werden, um für Situationen gerüstet zu sein, in denen der gleichzeitige Zugriff auf Ressourcen dazu führt, dass Anforderungen in die Warteschlange gestellt werden. Der Standard ist 5000.
  • restartQueueLimit
      Gibt an, wie viele Anforderungen in der Warteschlange verbleiben, wenn der Prozess aufgrund der Einstellung requestQueueLimit neu gestartet wird. Der Standard ist 10.
  • memoryLimit
      Gibt an, welchen Prozentsatz des physischen Speichers des Servers der ASP.NET-Prozess maximal in Anspruch nehmen darf. Wird dieser Wert überschritten, wird ein neuer Prozess gestartet und der aktuelle Prozess beendet. Der Standard ist 60.
  • cpuMask
      Wird in Web-Garden-Szenarios verwendet, um die CPU oder CPUs in einem Mehrprozessorserver anzugeben, auf dem der ASP.NET-Prozess ausgeführt wird. Dieser Wert ist eine Bitmaske. Der Standardwert ist 0xffffffff. Dadurch wird angegeben, dass für jede CPU ein Worker-Prozess erstellt werden soll.
  • webGarden
      Gibt an, ob das Web-Gardening, bei dem Worker-Prozesse bestimmten Prozessoren in einem Mehrprozessorserver zugeordnet sind, aktiviert ist. Der Standard ist False.
  • userName
      Gibt an, unter welcher Identität der ASP.NET-Worker-Prozess ausgeführt wird. Dies kann ein gültiges NT-Konto oder einer von zwei speziellen Werten sein:
    • SYSTEM
       Führt den ASP.NET-Prozess als SYSTEM-Konto aus. Dies ist ein mit zahlreichen Rechten ausgestattetes Verwaltungskonto.
    • machine
       Führt den ASP.NET-Prozess als ASPNET-Konto aus. Dieses Konto wird mit dem .NET-Framework installiert und ist ein Spezialkonto mit wenigen Rechten. Dieser Prozess ist die Standardeinstellung und gewährleistet ohne weitere Konfigurationsschritte ein hervorragendes Sicherheitsniveau für mit ASP.NET geschriebenen Webanwendungen. In der Dokumentation zum Element <processModel>steht fälschlicherweise, dass SYSTEM die Standardeinstellung ist.
  • password
      Gibt das Kennwort für das im Attribut userName bezeichnete Konto an. Verwenden Sie beim Einsatz des Kontos SYSTEM oder machine den Wert AutoGenerate (den Standardwert).
  • logLevel
      Gibt an, welche Prozessereignisse im NT-Ereignisprotokoll aufgezeichnet werden sollen. Gültige Werte:
    • All
       Alle Prozessereignisse werden aufgezeichnet.
    • Errors
       Nur Fehler werden aufgezeichnet. Dies ist die Standardeinstellung.
    • None
       Keine Prozessereignisse werden aufgezeichnet.
  • clientConnectedCheck
      Gibt im Format hh:mm:ss an, wie lange eine Anforderung in der Warteschlange verbleiben kann, bevor der ASP.NET-Prozess überprüft, ob noch eine Verbindung zum Client besteht. Der Standard ist 0:00:05.
  • comAuthenticationLevel
      Gibt die Authentifizierungsebene für die DCOM-Sicherheit an. Der Standard ist Connect.
  • comImpersonationLevel
      Gibt die Authentifizierungsebene für die COM-Sicherheit an. Der Standard ist Impersonate.
  • responseRestartDeadlockInterval
      Gibt im Format hh:mm:ss die Zeitdauer an, die zwischen den aufgrund des responseDeadlockInterval-Attributwerts durchgeführten Prozessneustarts verstreichen darf. Durch diese Angabe wird der ständige Wechsel von Prozessen aufgrund von gegenseitigen Sperren (Deadlocks) vermieden. Sie können diese Funktion deaktivieren, indem Sie den Wert Infinite verwenden. Der Standard ist 00:09:00.
  • responseDeadlockInterval
      Gibt im Format hh:mm:ss die Zeitdauer an, die ohne Antwort verstreichen darf, wenn Anforderungen in der Warteschlange stehen. Wenn die angegebene Zeit abläuft, wird der Prozess beendet und neu gestartet. Sie können diese Funktion deaktivieren, indem Sie den Wert Infinite verwenden. Der Standard ist 00:03:00.
  • maxWorkerThreads
      Gibt die maximale Anzahl von Worker-Threads pro CPU im Thread-Pool an. Der Standard ist 25.
  • maxIoThreads
      Gibt die maximale Anzahl von IO-Threads pro CPU im Thead-Pool an. Der Standard ist 25.
  • serverErrorMessageFile
      Gibt den Namen der Datei an, die bei einem Fehler aufgrund eines nicht verfügbaren Servers aufgerufen wird.
 
Untergeordnete Elemente
Keine
 
Hinweise

Im nativen Modus von IIS 6 werden die Einstellungen im <processModel>-Element ignoriert.

Da die Einstellungen im <processModel>-Element vom nicht verwalteten aspnet_isapi.dll-Handler, der Anforderungen an den verwalteten aspnet_wp.exe-Worker-Prozess übergibt, gelesen und übernommen werden, werden Änderungen am <processModel>-Element erst angewendet, wenn IIS neu gestartet wird.

<securityPolicy> 
<securityPolicy>
    <trustLevel
       name=trustLevelName
       policyFile=fileName />
</securityPolicy>
 
 

Konfiguriert die Zuweisungen von Trust-Namen (die vom Element <trust> verwendet werden) zu Dateien mit Sicherheitsrichtlinien. Die Sicherheitsrichtliniendateien enthalten Elemente, die die speziell für die betreffende Trust-Ebene Berechtigungen für den Codezugriff konfigurieren. <securityPolicy> kann eines oder mehrere < trustLevel>-Elemente enthalten.

 
Einsatzbereich

Rechner, Anwendung

 
Attribute
Keine
 
 
Untergeordnete Elemente
  • <trustLevel>
      Jedes <trustLevel>-Element weist den Namen einer Trust-Ebene einer bestimmten Sicherheitsrichtliniendatei zu, die die Berechtigungen für den Codezugriff für diese Codeebene implementiert. Das Attribut name gibt den Namen an, über den im <trust>-Element auf die Trust-Ebene verwiesen wird. Das Attribut policyFile gibt den Namen der Richtliniendatei an, die diesem Namen zugewiesen wird.
 
Beispiel

Dieses Beispiel stammt aus dem Standard-<securityPolicy>-Element in der Datei machine.config:

<securityPolicy>
   <trustLevel
      name="Full"
      policyFile="internal" />
   <trustLevel
      name="High"
      policyFile="web_hightrust.config" />
   <trustLevel
      name="Low"
      policyFile="web_lowtrust.config" />
   <trustLevel
      name="None"
      policyFile="web_notrust.config" />
</securityPolicy>
 
Hinweise

Wenn Sie in einer bestimmten Anwendung die geltenden Berechtigungen für den Codezugriff ändern möchten, können Sie eine neue Richtliniendatei für den Codezugriff (CAS-Datei) anlegen und diese Datei mithilfe des Elements <trustLevel> einer benutzerdefinierten Trust-Ebene zuweisen. Zum Implementieren der neuen Sicherheitsrichtlinie fügen Sie der web.config-Datei der betreffenden Anwendung ein <trust>-Element hinzu und geben Sie in diesem den Namen der zuzuweisenden Richtliniendatei an.

<sessionState> 
<sessionState
    mode="Off|Inproc|StateServer|SQLServer"
    cookieless=boolean
    timeout=numMinutes
    stateNetworkTimeout=numSeconds
    stateConnectionString="tcpip=server:port"
    sqlConnectionString=connString />
 
 
 
Einsatzbereich

Rechner, Anwendung

 
Attribute
 
  • mode
      Gibt an, ob der Sitzungsstatus aktiviert ist, und falls ja, wie die Statusdaten gespeichert werden. Gültige Werte:
    • Off
       Der Sitzungsstatus ist deaktiviert.
    • InProc
       Die Sitzungsstatusdaten werden auf dem lokalen Server im Arbeitsspeicher gespeichert. Dies ist dasselbe Verfahren wie beim Sitzungsstatus im klassischen ASP. In diesem Sitzungsstatusmodus kann der Sitzungsstatus nicht von mehreren Servern in einer Web-Farm gemeinsam genutzt werden.
    • StateServer
       Die Sitzungsstatusdaten werden in einem speziellen NT-Statusdienst auf einem Statusserver abgelegt. In diesem Sitzungsstatusmodus kann der Sitzungsstatus von mehreren Servern in einer Web-Farm gemeinsam genutzt werden.
    • SQLServer
       Die Sitzungsstatusdaten werden in einer speziellen SQL Server-Datenbank auf einem SQL-Server abgelegt. In diesem Sitzungsstatusmodus kann der Sitzungsstatus von mehreren Servern in einer Web-Farm gemeinsam genutzt werden. Dieser Modus erfordert außerdem die Ausführung einer SQL-Abfrage (die im SDK für das .NET-Framework enthalten ist), um die SQL Server-Datenbank einzurichten.

    Der Standard ist InProc.
  • cookieless
      Gibt an, ob Cookies verwendet werden, um Benutzer bestimmten Sitzungen zuzuordnen. Wird dieses Attribut auf True gesetzt, wird die Sitzungs-ID automatisch für jede Anforderung in die URL eingearbeitet. Dies erfordert, dass Ihre Anwendung relative URLs verwendet, damit dieses Verfahren richtig funktioniert. Der Standard ist False.
  • timeout
      Gibt das Zeitlimit für die Sitzung in Minuten an. Nach Ablauf dieses Zeitraums wird bei Inaktivität (d.  h. wenn keine Anforderungen mit dieser Sitzungs-ID empfangen werden) eine Zeitüberschreitung ausgelöst. Der Standard ist 20.
  • stateNetworkTimeout
      Gibt das Zeitlimit für den Netzwerkbetrieb in Sekunden an. Nach Ablauf dieses Zeitraums wird eine Zeitüberschreitung ausgelöst, wenn der Sitzungsstatusmodus StateServer lautet. Der Standard ist 10.
  • stateConnectionString
      Gibt bei Verwendung des Modus StateServer den Servernamen oder die IP-Adresse und die Nummer des TCP-Ports für den Server an, der den Sitzungsstatus speichert. Dieses Attribut ist erforderlich, wenn das Attribut mode auf StateServer gesetzt ist. Der Standardwert ist tcpip=127.0.0.1:42424.
  • sqlConnectionString
      Gibt den Namen des SQL-Servers und die zugehörigen Authentifizierungsdaten an, wenn als Sitzungsmodus SQLServer verwendet wird. Dieses Attribut ist erforderlich, wenn das Attribut mode auf SQLServer gesetzt ist. Der Standardwert ist data source=127.0.0.1;user id=sa;password=. Soweit möglich, sollte dieser Wert gesicherte Verbindungen verwenden, damit Benutzer-ID und Kennwort für SQL nicht in der Datei web.config oder machine.config abgelegt werden müssen. Damit Sie den Sitzungsstatusmodus SQL Server verwenden können, müssen Sie die Stapeldatei InstallSqlState.sql auf dem SQL-Zielserver ausführen, um die ASPState-Datenbank mit den dazugehörigen Tabellen und gespeicherten Prozeduren zu erstellen. Standardmäßig wird diese Datei im Ordner %windir%\Microsoft.NET\Framework\%version% installiert.
 
Untergeordnete Elemente
Keine
 
Beispiel

Im folgenden Beispiel wird der Sitzungsstatus so konfiguriert, dass der Modus SQLServer ohne Cookies verwendet wird:

<configuration>
   <system.web>
      <sessionState
         mode="SQLServer"
         cookieless="true"
         sqlConnectionString="data source=myServer;trusted_
connection=true" />
   </system.web>
</configuration>
 
Hinweise

Wenn der Modus SQLServer mit einer gesicherten Verbindung verwendet wird, muss die Kontoidentität des ASP.NET-Worker-Prozesses bei der SQL Server-Datenbank eine Anmeldung durchführen können und die für den Zugriff auf die ASPState- und TempDB-Datenbanken erforderlichen Berechtigungen besitzen. Wenn keine gesicherte Verbindung genutzt werden kann, sollten Sie ein eigenes Konto speziell zum Zugriff auf die Statusdatenbank erstellen und dieses Konto für das Attribut sqlConnectionString verwenden.

Egal welchen der Out-of-Process-Sitzungsstatusmodi Sie verwenden, es empfiehlt sich in jedem Fall, mit dem Attribut EnableSessionState der Direktive @ Page den Sitzungsstatus für die Seiten der Anwendung zu deaktivieren, die ihn nicht verwenden. Andernfalls werden von diesen Seiten unnötige rechnerübergreifende Aufrufe durchgeführt, um nicht verwendete Daten über den Sitzungsstatus abzurufen. Für eine Seite, die Sitzungsdaten zwar ausliest, aber nicht verändert, können Sie auch das Attribut EnableSessionState auf ReadOnly setzen, um rechnerübergreifende Aufrufe zum Speichern aktualisierter Sitzungsdaten zu verhindern.

<trace> 
<trace
    enabled=boolean
    localOnly=boolean
    pageOutput=boolean
    requestLimit=numRequests
    traceMode="SortByTime|SortByCategory" />
 
 
 
Einsatzbereich

Beliebig

 
Attribute
 
  • enabled
      Gibt an, ob die Ablaufverfolgung (Tracing) aktiviert ist. Der Standard ist False.
  • localOnly
      Gibt an, ob die Ausgabe der Ablaufverfolgung von anderen Rechnern als dem lokalen Host gelesen werden kann. Der Standard ist True.
  • pageOutput
      Gibt an, ob die Ausgabe der Ablaufverfolgung auf der Seite angezeigt oder im Speicher abgelegt und dort über eine spezielle Trace.axd-URL zugänglich gemacht wird. Trace.axd stellt eine Verbindung zu einem HTTP-Handler her, der alle gegenwärtig für eine bestimmte Anwendung gespeicherten Ablaufverfolgungen anzeigt. Der Standard ist False.
  • requestLimit
      Gibt an, wie viele Anforderungen im Ablaufverfolgungspuffer gespeichert werden können, der von Trace.axd ausgelesen wird. Wenn die in diesem Attribut festgelegte Gesamtzahl von Ablaufverfolgungen erreicht ist, werden erst dann weitere Ablaufverfolgungen gespeichert, wenn das Ablaufverfolgungsprotokoll geleert wurde. Die von Trace.axd angezeigte Seite enthält einen Link zum Leeren des Ablaufverfolgungsprotokolls. Der Standard ist 10.
  • traceMode
      Gibt die Sortierreihenfolge der Elemente im Abschnitt Trace Information der Ablaufverfolgung an. Gültige Werte sind SortByTime und SortByCategory. SortByCategory ist nützlich, wenn Sie Trace.Write und Trace.Warn verwenden und Ihre eigenen Kategorienamen als Parameter übergeben. Der Standard ist SortByTime.
 
Untergeordnete Elemente
Keine
 
Beispiel

Dieses Beispiel aktiviert die Ablaufverfolgung auf Anwendungsebene:

<configuration>
   <system.web>
      <trace enabled="true" />
   </system.web>
</configuration>
 
Hinweise

Kapitel 10 bietet einen Überblick über den Einsatz der Ablaufverfolgung in ASP.NET.

<trust> 
<trust
    level="Full|High|Low|None"
    originUrl=URL />
 
 

Weist einem Rechner, einer Site oder einer Anwendung eine benannte Trust-Ebene zu, die mit dem untergeordneten Element <trustLevel> des Elements <securityPolicy> erstellt wurde.

 
Einsatzbereich

Rechner, Anwendung

 
Attribute
 
  • level
      Gibt an, welche Trust-Ebene gelten soll. Dieses Attribut kann jeden im Element <securityPolicy> definierten Wert annehmen. Der Standard ist Full. Dieses Attribut ist erforderlich.
  • originUrl
      Gibt die Ursprungs-URL einer Anwendung an. Dieses Attribut sorgt dafür, dass Klassen wie WebRequest, die für bestimmte Berechtigungen möglicherweise die Angabe des Ursprungs-Hosts erfordern, ordnungsgemäß funktionieren. Dieses Attribut ist optional.
 
Untergeordnete Elemente
Keine
 
Beispiel

Dieses Beispiel legt die CAS-Berechtigungen der Anwendung entsprechend einer benutzerdefinierten Trust-Ebene fest:

<configuration>
   <system.web>
      <trust level="myTrustLevel" />
   </system.web>
</configuration>
 
Hinweise

Vergewissern Sie sich, dass Sie die sicherheitsspezifischen Auswirkungen, die der Einsatz benutzerdefinierter Sicherheitsrichtlinienzuweisungen mit sich bringt, genau kennen, bevor Sie dieses Element verwenden. Falsche Berechtigungen können schwerwiegende Probleme für Ihre Anwendung verursachen.

<location> 
<location
    path=pathToConfigure
    allowOverride=boolean >
    <system.web>
       <! --  Configuration settings  -- >
    </system.web>
</location>
 
 

Mit diesem Element können Sie verhindern, dass Einstellungen in machine.config oder web.config in untergeordneten Konfigurationsdateien außer Kraft gesetzt werden. Sie können damit über eine Konfigurationsdatei in einem übergeordneten Ordner auch Einstellungen für bestimmte Dateien oder Ordner konfigurieren.

 
Einsatzbereich

Beliebig

 
Attribute
 
  • path
      Gibt den Pfad der Datei bzw. des Ordners an, für die/den die Konfigurationseinstellungen im Tag-Paar <location> gelten sollen.
  • allowOverride
      Gibt an, ob untergeordnete Konfigurationsdateien Werte außer Kraft setzen können, die im Tag-Paar <location> konfiguriert sind. Dieses Attribut sperrt Konfigurationseinstellungen (in der Datei machine.config), die einheitlich verwendet werden sollen.
 
Untergeordnete Elemente

<system.web>

 
Beispiel

Würde dieses Beispiel in machine.config verwendet, müssten alle Anwendungen auf dem Rechner die Windows-Authentifizierung verwenden:

<configuration>
   <location
      allowOverride="false">
      <system.web>
         <authentication mode="Windows">
      </system.web>
   </location>
   <system.web>
      <!-- Other configuration settings -->
   </system.web>
</configuration>
 
Hinweise

Dieses Tag bietet weit reichende Steuerungsmöglichkeiten bei der Konfiguration. Sie können nicht nur, wie gezeigt, eine Authentifizierungsmethode für alle Anwendungen vorschreiben, sondern können mit dem Attribut path in der Datei web.config im Stammverzeichnis der Anwendung auch mehrere untergeordnete Ordner oder Datei konfigurieren. Durch eine solche Konfiguration verhindern Sie eine große Zahl untergeordneter web.config-Dateien, die in einer großen Anwendung verwaltet werden müssen.