Mengonfigurasi HTTP dan HTTPS

Layanan dan klien WCF dapat berkomunikasi melalui HTTP dan HTTPS. Pengaturan HTTP/HTTPS dikonfigurasi dengan menggunakan Layanan Informasi Internet (IIS) atau melalui penggunaan alat baris perintah. Ketika layanan WCF dihosting di bawah pengaturan HTTP IIS atau HTTPS dapat dikonfigurasi dalam IIS (menggunakan alat inetmgr.exe). Jika layanan WCF dihost sendiri, pengaturan HTTP atau HTTPS dikonfigurasi dengan menggunakan alat baris perintah.

Minimal, Anda ingin mengonfigurasi pendaftaran URL dan menambahkan pengecualian Firewall untuk URL yang akan digunakan layanan Anda. Anda dapat mengonfigurasi pengaturan ini dengan alat Netsh.exe.

Mengonfigurasi reservasi namespace

Reservasi namespace layanan menetapkan hak untuk sebagian namespace URL HTTP ke grup pengguna tertentu. Reservasi memberi pengguna tersebut hak untuk membuat layanan yang mendengarkan bagian namespace tersebut. Reservasi adalah awalan URL, yang berarti bahwa reservasi mencakup semua subjalur jalur reservasi. Reservasi namespace mengizinkan dua cara untuk menggunakan kartubebas. Dokumentasi HTTP Server API menjelaskan urutan resolusi antara klaim namespace layanan yang melibatkan kartubebas.

Aplikasi yang sedang berjalan dapat membuat permintaan serupa untuk menambahkan pendaftaran namespace layanan. Pendaftaran dan reservasi bersaing untuk sebagian namespace layanan. Reservasi mungkin lebih diutamakan daripada pendaftaran sesuai dengan urutan resolusi yang diberikan dalam urutan resolusi antara klaim namespace layanan yang melibatkan wildcard. Dalam hal ini, reservasi memblokir aplikasi yang sedang berjalan agar tidak menerima permintaan.

Contoh berikut menggunakan alat Netsh.exe:

netsh http add urlacl url=http://+:80/MyUri user=DOMAIN\user

Perintah ini menambahkan reservasi URL untuk namespace URL yang ditentukan untuk domain\akun pengguna. Untuk informasi selengkapnya tentang menggunakan perintah netsh, ketik perintah netsh http add urlacl /? dan tekan Enter.

Mengonfigurasi pengecualian firewall

Saat menghost sendiri layanan WCF yang berkomunikasi melalui HTTP, pengecualian harus ditambahkan ke konfigurasi firewall untuk memungkinkan koneksi masuk menggunakan URL tertentu.

Mengonfigurasi sertifikat SSL

Protokol Secure Sockets Layer (SSL) menggunakan sertifikat pada klien dan server untuk menyimpan kunci enkripsi. Server menyediakan sertifikat SSL-nya ketika koneksi dibuat sehingga klien dapat memverifikasi identitas server. Server juga dapat meminta sertifikat dari klien untuk memberikan autentikasi bersama dari kedua sisi koneksi.

Sertifikat disimpan di penyimpanan terpusat sesuai dengan alamat IP dan nomor port koneksi. Alamat IP khusus 0.0.0.0 cocok dengan alamat IP apa pun untuk komputer lokal. Perhatikan bahwa penyimpanan sertifikat tidak membedakan URL berdasarkan jalur. Layanan dengan alamat IP dan kombinasi port yang sama harus berbagi sertifikat meskipun jalur di URL untuk layanan berbeda.

Untuk instruksi langkah demi langkah, lihat Cara: Mengonfigurasi Port dengan Sertifikat SSL.

Mengonfigurasi Daftar Dengar IP

HTTP Server API hanya mengikat ke alamat IP dan port setelah pengguna mendaftarkan URL. Secara default, API Server HTTP mengikat port di URL untuk semua alamat IP komputer. Konflik muncul jika aplikasi yang tidak menggunakan API Server HTTP sebelumnya terikat dengan kombinasi alamat IP dan port tersebut. Daftar Dengar IP memungkinkan layanan WCF untuk berdampingan dengan aplikasi yang menggunakan port untuk beberapa alamat IP komputer. Jika Daftar Dengar IP berisi entri apa pun, API Server HTTP hanya mengikat ke alamat IP yang ditentukan daftar. Memodifikasi Daftar Dengar IP memerlukan hak administratif.

Gunakan alat netsh untuk memodifikasi Daftar Dengar IP, seperti yang ditunjukkan dalam contoh berikut:

netsh http add iplisten ipaddress=0.0.0.0:8000

Pengaturan konfigurasi lainnya

Saat menggunakan WSDualHttpBinding, koneksi klien menggunakan default yang kompatibel dengan reservasi namespace layanan dan firewall Windows. Jika Anda memilih untuk menyesuaikan alamat dasar klien dari koneksi ganda, maka Anda juga harus mengonfigurasi pengaturan HTTP ini pada klien agar sesuai dengan alamat baru.

HTTP Server API memiliki beberapa pengaturan konfigurasi tingkat lanjut yang tidak tersedia melalui HttpCfg. Pengaturan ini dipertahankan dalam registri dan berlaku untuk semua aplikasi yang berjalan pada sistem yang menggunakan API Server HTTP. Untuk informasi tentang pengaturan ini, lihat pengaturan registriHttp.sys untuk IIS. Sebagian besar pengguna tidak perlu mengubah pengaturan ini.

Lihat juga