<serviceDebug ><serviceDebug>

Windows Communication Foundation (WCF) サービスのデバッグ機能とヘルプ情報機能を指定します。Specifies debugging and help information features for a Windows Communication Foundation (WCF) service.

<configuration> <configuration>
   <System.servicemodel >   <system.serviceModel>
     <動作 >     <behaviors>
       <serviceBehaviors >       <serviceBehaviors>
         <動作 >         <behavior>
           <serviceDebug >          <serviceDebug>

構文Syntax

<serviceDebug httpHelpPageBinding="String"
              httpHelpPageBindingConfiguration="String"
              httpHelpPageEnabled="Boolean"
              httpHelpPageUrl="Uri"
              httpsHelpPageBinding="String"
              httpsHelpPageBindingConfiguration="String"
              httpsHelpPageEnabled="Boolean"
              httpsHelpPageUrl="Uri"
              includeExceptionDetailInFaults="Boolean" />

属性および要素Attributes and Elements

以降のセクションでは、属性、子要素、および親要素について説明します。The following sections describe attributes, child elements, and parent elements.

属性Attributes

属性Attribute 説明Description
httpHelpPageBindinghttpHelpPageBinding HTTP を利用してサービス ヘルプ ページにアクセスする場合に使用するバインディングの種類を指定する文字列値。A string value that specifies the type of binding to be used when HTTP is utilized to access the service help page.

System.ServiceModel.Channels.IReplyChannel をサポートする内部バインディング要素を使用したバインディングでのみサポートされます。Only bindings with inner binding elements that support System.ServiceModel.Channels.IReplyChannel will be supported. さらに、バインディングの System.ServiceModel.Channels.MessageVersion プロパティが MessageVersion.None である必要があります。Additionally, the System.ServiceModel.Channels.MessageVersion property of the binding must be MessageVersion.None.
httpHelpPageBindingConfigurationhttpHelpPageBindingConfiguration このバインディングの追加の構成情報を参照する httpHelpPageBinding 属性に指定されるバインディングの名前を指定する文字列。A string that specifies the name of the binding that is specified in the httpHelpPageBinding attribute, which references to the additional configuration information of this binding. 同じ名前を <bindings> セクションに定義する必要があります。The same name must be defined in the <bindings> section.
httpHelpPageEnabledhttpHelpPageEnabled httpHelpPageUrl属性で指定されたアドレスで、WCF が HTML ヘルプページを公開するかどうかを制御するブール値。A Boolean value that controls whether WCF publishes an HTML help page at the address specified by the httpHelpPageUrl attribute. 既定値は true です。The default is true.

このプロパティを false に設定して、HTML ブラウザーに表示される HTML ヘルプ ページの公開を無効にできます。You can set this property to false to disable the publication of an HTML help page visible to HTML browsers.

HTML ヘルプ ページが、httpHelpPageUrl 属性により制御される場所に公開されるようにするには、この属性を true に設定する必要があります。To ensure the HTML help page is published at the location controlled by the httpHelpPageUrl attribute, you must set this attribute to true. さらに、次のいずれかの条件も満たす必要があります。In addition, one of the following conditions must also be met:

httpHelpPageUrl -属性は、HTTP プロトコルスキームをサポートする絶対アドレスです。- The httpHelpPageUrl attribute is an absolute address that supports the HTTP protocol scheme.
-HTTP プロトコルスキームをサポートするサービスのベースアドレスがあります。- There is a base address for the service that supports the HTTP protocol scheme.

HTTP プロトコル スキームをサポートしない絶対アドレスが httpHelpPageUrl 属性に割り当てられている場合は例外がスローされますが、前の基準をどれも満たさないその他のシナリオでは、例外も HTML ヘルプ ページも表示されません。Although an exception is thrown if an absolute address that does not support the HTTP protocol scheme is assigned to the httpHelpPageUrl attribute, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page.
httpHelpPageUrlhttpHelpPageUrl HTML ブラウザーを使用してエンドポイントを表示するときにユーザーが参照する、カスタム HTML ヘルプ ファイルの相対的または絶対的な HTTP ベースの URL を指定する URI。A URI that specifies the relative or absolute HTTP-based URL of the custom HTML help file the user sees when the endpoint is viewed using an HTML browser.

この属性を使用して、HTTP/Get 要求から返されるカスタム HTML ヘルプ ファイルを HTML ブラウザーなどから利用できます。You can use this attribute to enable the use of a custom HTML help file that is returned from an HTTP/Get request, for example, from an HTML browser. HTML ヘルプ ファイルの位置は、次のように解決されます。The location of the HTML help file is resolved as follows.

1.この属性の値が相対アドレスの場合、HTML ヘルプ ファイルの位置は、HTTP 要求をサポートするサービスのベース アドレスにこのプロパティの値を加えた値になります。1. If the value of this attribute is a relative address, the location of the HTML help file is the value of the service base address that supports HTTP requests, plus this property value.
2.この属性が絶対アドレスであり、HTTP 要求をサポートする場合は、HTML ヘルプ ファイルの位置はこのプロパティの値になります。2. If the value of this attribute is an absolute address and supports HTTP requests, the location of the HTML help file is the value of this property.
3.この属性の値が絶対値であっても HTTP 要求をサポートしていない場合は、例外がスローされます。3. If the value of this attribute is absolute but does not support HTTP requests, an exception is thrown.

この属性は、 httpHelpPageEnabled属性がtrueの場合にのみ有効です。This attribute is valid only when the httpHelpPageEnabled attribute is true.
httpsHelpPageBindinghttpsHelpPageBinding HTTPS を利用してサービス ヘルプ ページにアクセスする場合に使用するバインディングの種類を指定する文字列値。A string value that specifies the type of binding to be used when HTTPS is utilized to access the service help page.

IReplyChannel をサポートする内部バインディング要素を使用したバインディングでのみサポートされます。Only bindings with inner binding elements that support IReplyChannel will be supported. さらに、バインディングの System.ServiceModel.Channels.MessageVersion プロパティが MessageVersion.None である必要があります。Additionally, the System.ServiceModel.Channels.MessageVersion property of the binding must be MessageVersion.None.
httpsHelpPageBindingConfigurationhttpsHelpPageBindingConfiguration このバインディングの追加の構成情報を参照する httpsHelpPageBinding 属性に指定されるバインディングの名前を指定する文字列。A string that specifies the name of the binding that is specified in the httpsHelpPageBinding attribute, which references to the additional configuration information of this binding. 同じ名前を <bindings> セクションに定義する必要があります。The same name must be defined in the <bindings> section.
httpsHelpPageEnabledhttpsHelpPageEnabled httpsHelpPageUrl属性で指定されたアドレスで、WCF が HTML ヘルプページを公開するかどうかを制御するブール値。A Boolean value that controls whether WCF publishes an HTML help page at the address specified by the httpsHelpPageUrl attribute. 既定値は true です。The default is true.

このプロパティを false に設定して、HTML ブラウザーに表示される HTML ヘルプ ページの公開を無効にできます。You can set this property to false to disable the publication of an HTML help page visible to HTML browsers.

HTML ヘルプ ページが、httpsHelpPageUrl 属性により制御される場所に公開されるようにするには、この属性を true に設定する必要があります。To ensure the HTML help page is published at the location controlled by the httpsHelpPageUrl attribute, you must set this attribute to true. さらに、次のいずれかの条件も満たす必要があります。In addition, one of the following conditions must also be met:

httpsHelpPageUrl -属性は、HTTPS プロトコルスキームをサポートする絶対アドレスです。- The httpsHelpPageUrl attribute is an absolute address that supports the HTTPS protocol scheme.
-HTTPS プロトコルスキームをサポートするサービスのベースアドレスがあります。- There is a base address for the service that supports the HTTPS protocol scheme.

HTTPS プロトコル スキームをサポートしない絶対アドレスが httpsHelpPageUrl 属性に割り当てられている場合は例外がスローされますが、前の基準をどれも満たさないその他のシナリオでは、例外も HTML ヘルプ ページも表示されません。Although an exception is thrown if an absolute address that does not support the HTTPS protocol scheme is assigned to the httpsHelpPageUrl attribute, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page.
httpsHelpPageUrlhttpsHelpPageUrl HTML ブラウザーを使用してエンドポイントを表示するときにユーザーが参照する、カスタム HTML ヘルプ ファイルの相対的または絶対的な HTTPS ベースの URL を指定する URI。A URI that specifies the relative or absolute HTTPS-based URL of the custom HTML help file the user sees when the endpoint is viewed using an HTML browser.

この属性を使用して、HTTPS/Get 要求から返されるカスタム HTML ヘルプ ファイルを HTML ブラウザーなどから利用できます。You can use this attribute to enable the use of a custom HTML help file that is returned from an HTTPS/Get request, for example, from an HTML browser. HTML ヘルプ ファイルの場所は、次のように解決されます。The location of the HTML help file is resolved as follows:

-このプロパティの値が相対アドレスの場合、HTML ヘルプファイルの位置は、HTTPS 要求をサポートするサービスのベースアドレスとこのプロパティの値を加算した値になります。- If the value of this property is a relative address, the location of the HTML help file is the value of the service base address that supports HTTPS requests, plus this property value.
-このプロパティの値が絶対アドレスで、HTTPS 要求をサポートしている場合、HTML ヘルプファイルの位置はこのプロパティの値になります。- If the value of this property is an absolute address and supports HTTPS requests, the location of the HTML help file is the value of this property.
-このプロパティの値が絶対で、HTTPS 要求をサポートしていない場合は、例外がスローされます。- If the value of this property is absolute but does not support HTTPS requests, an exception is thrown.

この属性は、 httpHelpPageEnabled属性がtrueの場合にのみ有効です。This attribute is valid only when the httpHelpPageEnabled attribute is true.
includeExceptionDetailInFaultsincludeExceptionDetailInFaults デバッグの目的でクライアントに返される SOAP エラーの詳細に、マネージド例外情報を含めるかどうかを指定する値。A value that specifies whether to include managed exception information in the detail of SOAP faults returned to the client for debugging purposes. 既定値は、false です。The default is false.

この属性を true に設定すると、デバッグ目的でクライアントへのマネージド例外情報のフロー、および Web ブラウザーでサービスをブラウズするユーザー向けの HTML 情報ファイルの公開を有効にできます。If you set this attribute to true, you can enable the flow of managed exception information to the client for debugging purposes, as well as the publication of HTML information files for users browsing the service in Web browsers. 注意: マネージド例外情報をクライアントに返すことは、セキュリティ リスクになり得ます。Caution: Returning managed exception information to clients can be a security risk. これは、例外の詳細が、認証されていないクライアントによって使用可能な内部サービスの実装に関する情報を公開するためです。This is because exception details expose information about the internal service implementation that could be used by unauthorized clients.

子要素Child Elements

なし。None.

親要素Parent Elements

要素Element 説明Description
<behavior><behavior> 動作の要素を指定します。Specifies a behavior element.

RemarksRemarks

includeExceptionDetailInFaultstrue設定すると、 FaultContractAttributeを使用して例外が宣言されていない場合でも、サービスはアプリケーションコードによってスローされた例外を返すことができます。Setting includeExceptionDetailInFaults to true allows the service to return any exception that is thrown by the application code even if the exception is not declared using the FaultContractAttribute. この設定は、サーバーが予期しない例外をスローしている場合のデバッグ時に役立ちます。This setting is useful when debugging cases where the server is throwing an unexpected exception. この属性を使用すると、不明な例外がシリアル化された形式で返されるので、例外をより詳細に調べることができます。By using this attribute, a serialized form of the unknown exception is returned and you can examine more details of the exception.

注意事項

マネージ例外情報をクライアントに戻すことは、セキュリティ リスクになり得ます。これは、例外の詳細が、非承認のクライアントで使用可能な内部サービスの実装についての情報を公開するからです。Returning managed exception information to clients can be a security risk because exception details expose information about the internal service implementation that could be used by unauthorized clients. セキュリティの問題にかかわるため、この操作は制御されたデバッグ シナリオでのみ行うことを強くお勧めします。Because of the security issues involved, it is strongly recommended that you only do so in controlled debugging scenarios. アプリケーションを配置する場合は、includeExceptionDetailInFaultsfalse に設定する必要があります。You should set includeExceptionDetailInFaults to false when deploying your application.

マネージ例外に関連するセキュリティの問題の詳細については、「コントラクトとサービスのエラーの指定と処理」を参照してください。For details about the security issues related to managed exception, see Specifying and Handling Faults in Contracts and Services. コードサンプルについては、「サービスデバッグ動作」を参照してください。For a code sample, see Service Debug Behavior.

httpsHelpPageEnabledhttpsHelpPageUrl を設定して、ヘルプ ページを有効または無効にすることもできます。You can also set httpsHelpPageEnabled and httpsHelpPageUrl to enable or disable the help page. 各サービスは、サービスの WSDL を取得するエンドポイントなど、サービスに関する情報が含まれるヘルプ ページをオプションで公開できます。Each service can optionally expose a help page that contains information about the service including the endpoint to get WSDL for the service. これを有効にするには、httpHelpPageEnabled プロパティを true に設定します。This can be enabled by setting httpHelpPageEnabled to true. これにより、サービスのベース アドレスへの GET 要求に対して、ヘルプ ページを返すことができます。This enables the help page to be returned to a GET request to the base address of the service. このアドレスは、httpHelpPageUrl 属性を設定することで変更できます。You can change this address by setting the httpHelpPageUrl attribute. また、HTTP の代わりに HTTPS を使用すると、このアドレスをセキュリティで保護できます。In addition, you can make this secure by using HTTPS instead of HTTP.

省略可能な httpHelpPageBinding 属性および httpHelpPageBinding 属性を使用すると、サービス ウェブ ページにアクセスするためのバインディングを構成できます。The optional httpHelpPageBinding and httpHelpPageBinding attributes allow you to configure the bindings used to access the service web page. これらの属性が指定されていない場合、サービス ヘルプ ページへのアクセスには、適切な既定のバインディグ (HTTP の場合は HttpTransportBindingElement、HTTPS の場合は HttpsTransportBindingElement) が使用されます。If they are not specified, the default bindings (HttpTransportBindingElement, in the case of HTTP and HttpsTransportBindingElement, in the case of HTTPS) are used for service help page access as appropriate. これらの属性は、組み込みの WCF バインディングでは使用できないことに注意してください。Notice that you cannot use these attributes with the built-in WCF bindings. Xref: IReplyChannel > をサポートする内部バインディング要素を持つバインディングのみがサポートされます。Only bindings with inner binding elements that support xref:System.ServiceModel.Channels.IReplyChannel> will be supported. さらに、バインディングの System.ServiceModel.Channels.MessageVersion プロパティが MessageVersion.None である必要があります。Additionally, the System.ServiceModel.Channels.MessageVersion property of the binding must be MessageVersion.None.

関連項目See also