ServiceDebugBehavior.IncludeExceptionDetailInFaults Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob verwaltete Ausnahmeinformationen in die Details der SOAP-Fehler einbezogen werden sollen, die für Debuggingzwecke an den Client zurückgegeben werden.
public:
property bool IncludeExceptionDetailInFaults { bool get(); void set(bool value); };
public bool IncludeExceptionDetailInFaults { get; set; }
member this.IncludeExceptionDetailInFaults : bool with get, set
Public Property IncludeExceptionDetailInFaults As Boolean
Eigenschaftswert
truewenn Windows Communication Foundation (WCF) verwaltete Ausnahmeinformationen in den SOAP-Fehlern für Clientdebuggingzwecke zurückgibt; andernfalls . false Der Standardwert lautet false.
Beispiele
Das folgende Codebeispiel zeigt, wie Sie eine Konfigurationsdatei verwenden, um das HTML-Hilfeseitenfeature zu aktivieren und Ausnahmeinformationen innerhalb eines SOAP-Fehlers für Debuggingzwecke an den Client zurückzugeben. Diese Konfigurationsdatei zeigt die folgenden grundlegenden Schritte zum Hinzufügen der Unterstützung für die ServiceDebugBehavior Features:
Da der ServiceDebugBehavior Typ eine System.ServiceModel.Description.IServiceBehavior Implementierung ist, weist das <Dienstelement> , das den Diensttyp darstellt, einen Verhaltenskonfigurationsbezeichner von
behaviorConfiguration="metadataAndDebug".Da es sich bei dem ServiceDebugBehavior Typ um eine Implementierung handeltSystem.ServiceModel.Description.IServiceBehavior, wird einem Abschnitt "serviceBehaviors>" ein<<Verhaltenselement> hinzugefügt. Legen Sie das
nameAttribut des <Verhaltenselements> fest, dessen Wert der Bezeichner desbehaviorConfigurationAttributs des <Dienstelements> ist. In diesem Fall ist der WertmetadataAndDebug.Fügen Sie ein serviceDebug-Element<> mit den verschiedenen Attributen hinzu, die auf die gewünschte Konfiguration festgelegt sind. In diesem Fall werden die
httpHelpPageEnabledWerte undincludeExceptionDetailInFaultsAttributwerte auftrue.
<configuration>
<system.serviceModel>
<services>
<!--
Step 1. Add a behaviorConfiguration attribute
in the <service> element.
-->
<service
name="Microsoft.WCF.Documentation.SampleService"
behaviorConfiguration="metadataAndDebug">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/SampleService" />
</baseAddresses>
</host>
<endpoint
address=""
binding="wsHttpBinding"
contract="Microsoft.WCF.Documentation.ISampleService"
/>
<endpoint
address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange"
/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<!--
Step 2. Inside a <serviceBehaviors> section, add
a name attribute in the <behaviors> element that
matches the behaviorConfiguration attribute in the
<service> element above.
-->
<behavior name="metadataAndDebug">
<serviceMetadata
httpGetEnabled="true"
httpGetUrl=""
/>
<!--
Step 3. Add a <serviceDebug> element and
modify the various attributes that suit your
scenario.
-->
<serviceDebug
httpHelpPageEnabled="true"
includeExceptionDetailInFaults="true"
/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
Hinweise
Legen Sie die IncludeExceptionDetailInFaults Eigenschaft fest, um true WCF anzuweisen, verwaltete Ausnahmeinformationen an den Client in SOAP-Fehlern zurückzugeben, um das Debuggen zu vereinfachen.
Vorsicht
Das Zurückgeben verwalteter Ausnahmeinformationen an Clients kann ein Sicherheitsrisiko darstellen, da Ausnahmedetails Informationen zur internen Dienstimplementierung verfügbar machen, die von nicht autorisierten Clients verwendet werden können. Darüber hinaus können die ServiceDebugBehavior Eigenschaften zwar auch programmgesteuert festgelegt werden, aber es kann leicht sein, zu vergessen, IncludeExceptionDetailInFaults bei der Bereitstellung zu deaktivieren.
Aufgrund der sicherheitsrelevanten Probleme wird dringend empfohlen, folgendes zu beachten:
Sie verwenden eine Anwendungskonfigurationsdatei, um den Wert der IncludeExceptionDetailInFaults-Eigenschaft auf
truefestzulegen.Dies geschieht nur in kontrollierten Debugszenarien.
Weitere Informationen finden Sie unter Angeben und Behandeln von Fehlern in Verträgen und Diensten.