Bagikan melalui


Kualitas Layanan (RPC)

Program klien dapat menggunakan fungsiRpcBindingSetAuthInfoEx daripada fungsi RpcBindingSetAuthInfo untuk membuat pengikatan terautentikasi. Jika mereka melakukannya, mereka meneruskan penunjuk ke struktur RPC_SECURITY_QOS sebagai parameter akhir RpcBindingSetAuthInfoEx. Struktur ini berisi informasi tentang kualitas layanan. Program klien juga dapat menentukan pelacakan identitas dan memilih jenis peniruan identitas.

Gunakan Kemampuan anggota struktur RPC_SECURITY_QOS untuk mengatur bagian mana dari aplikasi klien/server yang diautentikasi. Jika RPC_C_QOS_CAPABILITIES_DEFAULT dipilih, pustaka run-time RPC mengautentikasi klien atau server sesuai dengan default untuk SSP. Secara default, SSP protokol Kerberos mengautentikasi klien dan server. Default untuk semua SSP lain yang disediakan Microsoft adalah mengautentikasi klien ke server, tetapi tidak mengautentikasi server ke klien.

Jika klien dan server harus selalu mengautentikasi satu sama lain, atur Kemampuan anggota struktur RPC_SECURITY_QOS ke RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH. Beberapa penyedia keamanan mungkin tidak mendukung autentikasi bersama. Jika RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH ditentukan untuk penyedia keamanan tersebut, kesalahan dikembalikan saat panggilan prosedur jarak jauh dilakukan. Saat menggunakan SCHANNEL SSP, dimungkinkan juga untuk mengatur kemampuan anggota ke RPC_C_QOS_CAPABILITIES_ANY_AUTHORITY. Konstanta ini menentukan bahwa SSP harus memvalidasi panggilan prosedur jarak jauh meskipun otoritas sertifikat yang mengeluarkan sertifikat autentikasi klien tidak ada di penyimpanan sertifikat akar SSP. Defaultnya adalah menolak sertifikat jika SSP tidak mengenali otoritas sertifikat. Otoritas sertifikat adalah perusahaan atau organisasi independen, seperti VeriSign, yang mengeluarkan sertifikat autentikasi.

Aplikasi juga dapat mengatur pelacakan identitas yang digunakan pustaka run-time RPC. Program umumnya menggunakan pelacakan identitas statis. Dengan pelacakan statis, kredensial klien diatur saat memanggil fungsi RpcBindingSetAuthInfo. Pustaka run-time RPC kemudian menggunakan kredensial tersebut untuk semua panggilan RPC pada pengikatan, terlepas dari perubahan identitas utas panggilan atau proses panggilan. Aplikasi juga dapat memilih pelacakan identitas dinamis. Pelacakan identitas dinamis menginstruksikan pustaka run-time RPC untuk menggunakan kredensial utas panggilan pada saat setiap panggilan, bukan handel pengikatan. Pelacakan identitas default bersifat statis.

Jika identitas klien tidak akan berubah, pelacakan identitas statis dapat memiliki karakteristik performa yang lebih baik, dan dapat menghemat waktu proses RPC dari memeriksa setiap kali identitas pada utas panggilan sama dengan identitas yang diberikan kepada sistem keamanan. Jika identitas utas panggilan dapat berubah di antara panggilan, dan server perlu mengenali perubahan tersebut, yang terbaik adalah menentukan pelacakan identitas dinamis—run time RPC secara diam-diam dan efisien melacak identitas untuk Anda, dan jika identitas berubah, mengelola perubahan tersebut atas nama Anda.

Nota

Untuk panggilan ncalrpc, pelacakan identitas statis dan dinamis memiliki karakteristik performa yang berbeda, dan tergantung pada keadaannya, mungkin lebih cepat.

 

Sebagai bagian dari spesifikasi QOS, program klien juga dapat mengatur jenis peniruan yang dapat dilakukan program server atas namanya. Untuk informasi selengkapnya, lihat Peniruan Identitas Klien.

Bidang nomor versi struktur RPC_SECURITY_QOS harus selalu diatur ke RPC_C_SECURITY_QOS_VERSION.