<serviceDebug>
Hiermee geeft u functies voor foutopsporing en Help-informatie op voor een WCF-service (Windows Communication Foundation).
<Configuratie>
<system.serviceModel>
<Gedrag>
<serviceBehaviors>
<Gedrag>
<serviceDebug>
Syntax
<serviceDebug httpHelpPageBinding="String"
httpHelpPageBindingConfiguration="String"
httpHelpPageEnabled="Boolean"
httpHelpPageUrl="Uri"
httpsHelpPageBinding="String"
httpsHelpPageBindingConfiguration="String"
httpsHelpPageEnabled="Boolean"
httpsHelpPageUrl="Uri"
includeExceptionDetailInFaults="Boolean" />
Kenmerken en elementen
In de volgende secties worden kenmerken, onderliggende elementen en bovenliggende elementen beschreven.
Kenmerken
Kenmerk | Beschrijving |
---|---|
httpHelpPageBinding | Een tekenreekswaarde die het type binding aangeeft dat moet worden gebruikt wanneer HTTP wordt gebruikt voor toegang tot de Help-pagina van de service. Alleen bindingen met binnenste bindingselementen die ondersteuning bieden System.ServiceModel.Channels.IReplyChannel , worden ondersteund. Daarnaast moet de System.ServiceModel.Channels.MessageVersion eigenschap van de binding zijn MessageVersion.None. |
httpHelpPageBindingConfiguration | Een tekenreeks die de naam aangeeft van de binding die is opgegeven in het httpHelpPageBinding kenmerk, die verwijst naar de aanvullende configuratie-informatie van deze binding. Dezelfde naam moet worden gedefinieerd in de <bindings> sectie. |
httpHelpPageEnabled | Een Booleaanse waarde die bepaalt of WCF een HTML-helppagina publiceert op het adres dat is opgegeven door het httpHelpPageUrl kenmerk. De standaardwaarde is true .U kunt deze eigenschap instellen op om false de publicatie van een HTML-Help-pagina die zichtbaar is voor HTML-browsers uit te schakelen.Om ervoor te zorgen dat de HTML-helppagina wordt gepubliceerd op de locatie die wordt bepaald door het httpHelpPageUrl kenmerk, moet u dit kenmerk instellen op true . Daarnaast moet ook aan een van de volgende voorwaarden worden voldaan:- Het httpHelpPageUrl kenmerk is een absoluut adres dat ondersteuning biedt voor het HTTP-protocolschema.- Er is een basisadres voor de service dat ondersteuning biedt voor het HTTP-protocolschema. Hoewel er een uitzondering wordt gegenereerd als een absoluut adres dat geen ondersteuning biedt voor het HTTP-protocolschema wordt toegewezen aan het httpHelpPageUrl kenmerk, resulteert elk ander scenario waarin aan geen van de voorgaande criteria wordt voldaan, in geen uitzondering en geen HTML-helppagina. |
httpHelpPageUrl | Een URI die de relatieve of absolute HTTP-url opgeeft van het aangepaste HTML-Help-bestand dat de gebruiker ziet wanneer het eindpunt wordt weergegeven met behulp van een HTML-browser. U kunt dit kenmerk gebruiken om het gebruik in te schakelen van een aangepast HTML-Help-bestand dat wordt geretourneerd vanuit een HTTP/Get-aanvraag, bijvoorbeeld vanuit een HTML-browser. De locatie van het HTML-Help-bestand wordt als volgt omgezet. 1. Als de waarde van dit kenmerk een relatief adres is, is de locatie van het HTML-helpbestand de waarde van het servicebasisadres dat HTTP-aanvragen ondersteunt, plus deze eigenschapswaarde. 2. Als de waarde van dit kenmerk een absoluut adres is en HTTP-aanvragen ondersteunt, is de locatie van het HTML-Help-bestand de waarde van deze eigenschap. 3. Als de waarde van dit kenmerk absoluut is, maar geen ONDERSTEUNING biedt voor HTTP-aanvragen, wordt er een uitzondering gegenereerd. Dit kenmerk is alleen geldig als het httpHelpPageEnabled kenmerk is true . |
httpsHelpPageBinding | Een tekenreekswaarde die het type binding aangeeft dat moet worden gebruikt wanneer HTTPS wordt gebruikt voor toegang tot de Help-pagina van de service. Alleen bindingen met binnenste bindingselementen die ondersteuning bieden IReplyChannel , worden ondersteund. Daarnaast moet de System.ServiceModel.Channels.MessageVersion eigenschap van de binding zijn MessageVersion.None. |
httpsHelpPageBindingConfiguration | Een tekenreeks die de naam aangeeft van de binding die is opgegeven in het httpsHelpPageBinding kenmerk, die verwijst naar de aanvullende configuratie-informatie van deze binding. Dezelfde naam moet worden gedefinieerd in de <bindings> sectie. |
httpsHelpPageEnabled | Een Booleaanse waarde die bepaalt of WCF een HTML-helppagina publiceert op het adres dat is opgegeven door het httpsHelpPageUrl kenmerk. De standaardwaarde is true .U kunt deze eigenschap instellen op om false de publicatie van een HTML-Help-pagina die zichtbaar is voor HTML-browsers uit te schakelen.Om ervoor te zorgen dat de HTML-helppagina wordt gepubliceerd op de locatie die wordt bepaald door het httpsHelpPageUrl kenmerk, moet u dit kenmerk instellen op true . Daarnaast moet ook aan een van de volgende voorwaarden worden voldaan:- Het httpsHelpPageUrl kenmerk is een absoluut adres dat ondersteuning biedt voor het HTTPS-protocolschema.- Er is een basisadres voor de service dat ondersteuning biedt voor het HTTPS-protocolschema. Hoewel er een uitzondering wordt gegenereerd als een absoluut adres dat het HTTPS-protocolschema niet ondersteunt, wordt toegewezen aan het httpsHelpPageUrl kenmerk, resulteert elk ander scenario waarin aan geen van de voorgaande criteria wordt voldaan, in geen uitzondering en geen HTML-helppagina. |
httpsHelpPageUrl | Een URI die de relatieve of absolute HTTPS-url opgeeft van het aangepaste HTML-Help-bestand dat de gebruiker ziet wanneer het eindpunt wordt weergegeven met behulp van een HTML-browser. U kunt dit kenmerk gebruiken om het gebruik in te schakelen van een aangepast HTML-Help-bestand dat wordt geretourneerd vanuit een HTTPS/Get-aanvraag, bijvoorbeeld vanuit een HTML-browser. De locatie van het HTML-Help-bestand wordt als volgt omgezet: - Als de waarde van deze eigenschap een relatief adres is, is de locatie van het HTML-Help-bestand de waarde van het servicebasisadres dat HTTPS-aanvragen ondersteunt, plus deze eigenschapswaarde. - Als de waarde van deze eigenschap een absoluut adres is en HTTPS-aanvragen ondersteunt, is de locatie van het HTML-Help-bestand de waarde van deze eigenschap. - Als de waarde van deze eigenschap absoluut is, maar https-aanvragen niet ondersteunt, wordt er een uitzondering gegenereerd. Dit kenmerk is alleen geldig als het httpHelpPageEnabled kenmerk is true . |
includeExceptionDetailInFaults | Een waarde die aangeeft of beheerde uitzonderingsinformatie moet worden opgenomen in de details van SOAP-fouten die naar de client worden geretourneerd voor foutopsporingsdoeleinden. De standaardwaarde is false .Als u dit kenmerk instelt op true , kunt u de stroom van beheerde uitzonderingsgegevens naar de client inschakelen voor foutopsporingsdoeleinden, evenals de publicatie van HTML-informatiebestanden voor gebruikers die de service in webbrowsers gebruiken. Voorzichtigheid: Het retourneren van beheerde uitzonderingsgegevens naar clients kan een beveiligingsrisico vormen. Dit komt omdat uitzonderingsdetails informatie bevatten over de interne service-implementatie die kan worden gebruikt door niet-geautoriseerde clients. |
Onderliggende elementen
Geen.
Bovenliggende elementen
Element | Beschrijving |
---|---|
<Gedrag> | Hiermee geeft u een gedragselement op. |
Opmerkingen
Met de instelling includeExceptionDetailInFaults
op true
kan de service elke uitzondering retourneren die wordt gegenereerd door de toepassingscode, zelfs als de uitzondering niet is gedeclareerd met behulp van de FaultContractAttribute. Deze instelling is handig bij het opsporen van fouten waarbij de server een onverwachte uitzondering genereert. Met dit kenmerk wordt een geserialiseerde vorm van de onbekende uitzondering geretourneerd en kunt u meer details van de uitzondering bekijken.
Waarschuwing
Het retourneren van beheerde uitzonderingsinformatie naar clients kan een beveiligingsrisico vormen omdat uitzonderingsdetails informatie bevatten over de interne service-implementatie die kan worden gebruikt door niet-geautoriseerde clients. Vanwege de betrokken beveiligingsproblemen wordt u sterk aangeraden dit alleen te doen in scenario's voor gecontroleerde foutopsporing. U moet instellen includeExceptionDetailInFaults
op false
bij het implementeren van uw toepassing.
Zie Opgeven en afhandelen van fouten in contracten en services voor meer informatie over de beveiligingsproblemen met betrekking tot beheerde uitzonderingen. Zie Gedrag van servicefoutopsporing voor een codevoorbeeld.
U kunt de Help-pagina ook instellen httpsHelpPageEnabled
en httpsHelpPageUrl
in- of uitschakelen. Elke service kan optioneel een Help-pagina weergeven met informatie over de service, inclusief het eindpunt om WSDL voor de service op te halen. Dit kan worden ingeschakeld door in te stellen httpHelpPageEnabled
op true
. Hierdoor kan de Help-pagina worden geretourneerd naar een GET-aanvraag naar het basisadres van de service. U kunt dit adres wijzigen door het kenmerk in te httpHelpPageUrl
stellen. Bovendien kunt u dit beveiligen met behulp van HTTPS in plaats van HTTP.
Met de optionele httpHelpPageBinding
kenmerken en httpHelpPageBinding
kunt u de bindingen configureren die worden gebruikt voor toegang tot de webpagina van de service. Als deze niet zijn opgegeven, worden de standaardbindingen (HttpTransportBindingElement
in het geval van HTTP en HttpsTransportBindingElement
, in het geval van HTTPS) gebruikt voor toegang tot de helppagina van de service. U ziet dat u deze kenmerken niet kunt gebruiken met de ingebouwde WCF-bindingen. Alleen bindingen met binnenste bindingselementen die ondersteuning bieden voor xref:System.ServiceModel.Channels.IReplyChannel> worden ondersteund. Daarnaast moet de System.ServiceModel.Channels.MessageVersion eigenschap van de binding zijn MessageVersion.None.