Bagikan melalui


<serviceDebug>

Menentukan fitur informasi debug dan bantuan untuk layanan Yayasan Komunikasi Windows (WCF).

<konfigurasi>
  <system.serviceModel>
    <perilaku>
      <serviceBehaviors>
        <behavior>
          <serviceDebug>

Sintaks

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

Atribut dan Elemen

Bagian berikut menjelaskan atribut, elemen turunan, dan elemen induk.

Atribut

Atribut Deskripsi
httpHelpPageBinding Nilai string yang menentukan jenis pengikatan yang akan digunakan saat HTTP digunakan untuk mengakses halaman bantuan layanan.

Hanya pengikatan dengan elemen pengikatan dalam yang mendukung System.ServiceModel.Channels.IReplyChannel yang akan didukung. Selain itu, properti System.ServiceModel.Channels.MessageVersion pengikatan harus MessageVersion.None.
httpHelpPageBindingConfiguration String yang menentukan nama pengikatan ditentukan dalam atribut httpHelpPageBinding, yang mereferensikan ke informasi konfigurasi tambahan dari pengikatan ini. Nama yang sama harus ditentukan di bagian <bindings>.
httpHelpPageEnabled Nilai Boolean yang mengontrol apakah WCF menerbitkan halaman bantuan HTML di alamat yang ditentukan oleh atribut httpHelpPageUrl. Defaultnya adalah true.

Anda dapat mengatur properti ini ke false untuk menonaktifkan publikasi halaman bantuan HTML yang terlihat oleh browser HTML.

Untuk memastikan halaman bantuan HTML diterbitkan di lokasi yang dikontrol oleh atribut httpHelpPageUrl, Anda harus mengatur atribut ini ke true. Selain itu, salah satu kondisi berikut juga harus dipenuhi:

- Atribut httpHelpPageUrl adalah alamat absolut yang mendukung skema protokol HTTP.
- Terdapat alamat dasar untuk layanan yang mendukung skema protokol HTTP.

Meskipun pengecualian dilemparkan jika alamat absolut yang tidak mendukung skema protokol HTTP ditetapkan ke atribut httpHelpPageUrl, skenario lain di mana tidak satu pun dari kriteria sebelumnya terpenuhi tidak menghasilkan pengecualian dan tidak ada halaman bantuan HTML.
httpHelpPageUrl URI yang menentukan URL berbasis HTTP relatif atau absolut dari file bantuan HTML kustom yang dilihat pengguna saat titik akhir dilihat menggunakan browser HTML.

Anda dapat menggunakan atribut ini untuk mengaktifkan penggunaan file bantuan HTML kustom yang dikembalikan dari permintaan HTTP/Get, misalnya, dari browser HTML. Lokasi file bantuan HTML diselesaikan sebagai berikut.

1. Jika nilai atribut ini adalah alamat relatif, lokasi file bantuan HTML adalah nilai alamat dasar layanan yang mendukung permintaan HTTP, ditambah nilai properti ini.
2. Jika nilai atribut ini adalah alamat absolut dan mendukung permintaan HTTP, lokasi file bantuan HTML adalah nilai properti ini.
3. Jika nilai atribut ini mutlak tetapi tidak mendukung permintaan HTTP, pengecualian akan dilemparkan.

Atribut ini hanya valid ketika atribut httpHelpPageEnabled adalah true.
httpsHelpPageBinding Nilai string yang menentukan jenis pengikatan yang akan digunakan saat HTTPS digunakan untuk mengakses halaman bantuan layanan.

Hanya pengikatan dengan elemen pengikatan dalam yang mendukung IReplyChannel akan didukung. Selain itu, properti System.ServiceModel.Channels.MessageVersion pengikatan harus MessageVersion.None.
httpsHelpPageBindingConfiguration String yang menentukan nama pengikatan yang ditentukan dalam atribut httpsHelpPageBinding, yang mereferensikan ke informasi konfigurasi tambahan dari pengikatan ini. Nama yang sama harus ditentukan di bagian <bindings>.
httpsHelpPageEnabled Nilai Boolean yang mengontrol apakah WCF menerbitkan halaman bantuan HTML di alamat yang ditentukan oleh atribut httpsHelpPageUrl. Defaultnya adalah true.

Anda dapat mengatur properti ini ke false untuk menonaktifkan publikasi halaman bantuan HTML yang terlihat oleh browser HTML.

Untuk memastikan halaman bantuan HTML diterbitkan di lokasi yang dikontrol oleh atribut httpsHelpPageUrl, Anda harus mengatur atribut ini ke true. Selain itu, salah satu kondisi berikut juga harus dipenuhi:

- Atribut httpsHelpPageUrl adalah alamat absolut yang mendukung skema protokol HTTPS.
- Ada alamat dasar untuk layanan yang mendukung skema protokol HTTPS.

Meskipun pengecualian dilemparkan jika alamat absolut yang tidak mendukung skema protokol HTTPS ditetapkan ke atribut httpsHelpPageUrl, skenario lain di mana tidak satu pun dari kriteria sebelumnya terpenuhi tidak menghasilkan pengecualian dan tidak ada halaman bantuan HTML.
httpsHelpPageUrl URI yang menentukan URL berbasis HTTPS relatif atau absolut dari file bantuan HTML kustom yang dilihat pengguna saat titik akhir dilihat menggunakan browser HTML.

Anda dapat menggunakan atribut ini untuk mengaktifkan penggunaan file bantuan HTML kustom yang dikembalikan dari permintaan HTTPS/Get, misalnya, dari browser HTML. Lokasi file bantuan HTML diselesaikan sebagai berikut:

- Jika nilai properti ini adalah alamat relatif, lokasi file bantuan HTML adalah nilai alamat dasar layanan yang mendukung permintaan HTTPS, ditambah nilai properti ini.
- Jika nilai properti ini adalah alamat absolut dan mendukung permintaan HTTPS, lokasi file bantuan HTML adalah nilai properti ini.
- Jika nilai properti ini absolut tetapi tidak mendukung permintaan HTTPS, pengecualian akan dilemparkan.

Atribut ini hanya valid ketika atribut httpHelpPageEnabled adalah true.
includeExceptionDetailInFaults Nilai yang menentukan apakah akan menyertakan informasi pengecualian terkelola dalam detail kesalahan SOAP yang dikembalikan ke klien untuk tujuan penelusuran kesalahan. Defaultnya adalah false.

Jika Anda mengatur atribut ini ke true, Anda dapat mengaktifkan alur informasi pengecualian terkelola ke klien untuk tujuan penelusuran kesalahan, serta publikasi file informasi HTML untuk pengguna yang menelusuri layanan di browser. Perhatian: Mengembalikan informasi pengecualian terkelola kepada klien dapat menyebabkan munculnya risiko keamanan. Hal ini karena detail pengecualian mengekspos informasi tentang implementasi layanan internal yang dapat digunakan oleh klien yang tidak sah.

Elemen Anak

Tidak ada.

Elemen Induk

Elemen Deskripsi
<perilaku> Menentukan elemen perilaku.

Keterangan

Pengaturan includeExceptionDetailInFaults ke true memungkinkan layanan mengembalikan pengecualian apa pun yang dilemparkan oleh kode aplikasi bahkan jika pengecualian tidak dinyatakan menggunakan FaultContractAttribute. Pengaturan ini berguna saat melakukan penelusuran kesalahan kasus di mana server melemparkan pengecualian yang tidak terduga. Dengan menggunakan atribut ini, bentuk berseri pengecualian yang tidak diketahui dikembalikan dan Anda dapat memeriksa detail selengkapnya tentang pengecualian.

Perhatian

Mengembalikan informasi pengecualian terkelola kepada klien dapat menjadi risiko keamanan karena detail pengecualian mengekspos informasi tentang implementasi layanan internal yang dapat digunakan oleh klien yang tidak sah. Karena masalah keamanan yang terlibat, sangat disarankan agar Anda hanya melakukannya dalam skenario penelusuran kesalahan terkontrol. Anda harus mengatur includeExceptionDetailInFaults ke false saat menyebarkan aplikasi Anda.

Untuk detail tentang masalah keamanan yang terkait dengan pengecualian terkelola, lihat Menentukan dan Menangani Kesalahan dalam Kontrak dan Layanan. Untuk sampel kode, lihat Perilaku Debug Layanan.

Anda juga dapat mengatur httpsHelpPageEnabled dan httpsHelpPageUrl untuk mengaktifkan atau menonaktifkan halaman bantuan. Setiap layanan dapat secara opsional mengekspos halaman bantuan yang berisi informasi tentang layanan termasuk titik akhir untuk mendapatkan WSDL untuk layanan. Ini dapat diaktifkan dengan mengatur httpHelpPageEnabled ke true. Ini memungkinkan halaman bantuan dikembalikan ke permintaan GET ke alamat dasar layanan. Anda dapat mengubah alamat ini dengan mengatur atribut httpHelpPageUrl. Selain itu, Anda dapat membuat ini aman dengan menggunakan HTTPS alih-alih HTTP.

Atribut dan httpHelpPageBinding opsional httpHelpPageBinding memungkinkan Anda mengonfigurasi pengikatan yang digunakan untuk mengakses halaman web layanan. Jika tidak ditentukan, pengikatan default (HttpTransportBindingElement, dalam kasus HTTP dan HttpsTransportBindingElement, dalam kasus HTTPS) digunakan untuk akses halaman bantuan layanan yang sesuai. Perhatikan bahwa Anda tidak dapat menggunakan atribut ini dengan pengikatan WCF bawaan. Hanya pengikatan dengan elemen pengikatan dalam yang mendukung xref:System.ServiceModel.Channels.IReplyChannel> akan didukung. Selain itu, properti System.ServiceModel.Channels.MessageVersion pengikatan harus MessageVersion.None.

Lihat juga