Bagikan melalui


struktur RPC_BINDING_HANDLE_SECURITY_V1_A (rpcdce.h)

Struktur RPC_BINDING_HANDLE_SECURITY_V1 berisi opsi keamanan dasar untuk membuat handel pengikatan RPC.

Sintaks

typedef struct _RPC_BINDING_HANDLE_SECURITY_V1_A {
  unsigned long             Version;
  unsigned char             *ServerPrincName;
  unsigned long             AuthnLevel;
  unsigned long             AuthnSvc;
  SEC_WINNT_AUTH_IDENTITY_A *AuthIdentity;
  RPC_SECURITY_QOS          *SecurityQos;
} RPC_BINDING_HANDLE_SECURITY_V1_A, *PRPC_BINDING_HANDLE_SECURITY_V1_A;

Anggota

Version

Versi struktur ini. Untuk RPC_BINDING_HANDLE_SECURITY_V1 ini harus diatur ke 1.

ServerPrincName

Penunjuk ke string yang berisi nama utama server yang dirujuk oleh handel pengikatan. Konten nama dan sintaksnya ditentukan oleh layanan autentikasi yang digunakan.

AuthnLevel

Tingkat autentikasi yang akan dilakukan pada panggilan prosedur jarak jauh yang dilakukan menggunakan handel pengikatan ini. Untuk daftar tingkat autentikasi yang didukung RPC, lihat Konstanta Tingkat Autentikasi.

Jika AuthnSvc diatur ke RPC_C_AUTHN_NONE, anggota ini juga harus diatur ke RPC_C_AUTHN_NONE.

AuthnSvc

Layanan autentikasi yang akan digunakan saat mengikat.

Tentukan RPC_C_AUTHN_NONE untuk menonaktifkan autentikasi untuk panggilan prosedur jarak jauh yang dilakukan menggunakan handel pengikatan.

Jika RPC_C_AUTHN_DEFAULT ditentukan, pustaka run-time RPC menggunakan layanan autentikasi RPC_C_AUTHN_WINNT untuk panggilan prosedur jarak jauh yang dilakukan menggunakan handel pengikatan.

Jika AuthnLevel diatur ke RPC_C_AUTHN_NONE, anggota ini juga harus diatur ke RPC_C_AUTHN_NONE.

AuthIdentity

SEC_WINNT_AUTH_IDENTITY struktur yang berisi kredensial autentikasi dan otorisasi klien yang sesuai untuk layanan autentikasi dan otorisasi yang dipilih.

SecurityQos

RPC_SECURITY_QOS struktur yang berisi pengaturan kualitas layanan keamanan untuk handel pengikatan.

Catatan Untuk daftar layanan autentikasi yang didukung RPC, lihat Konstanta Layanan Autentikasi.
 

Keterangan

Jika struktur ini tidak diteruskan ke RpcBindingCreate -- yaitu, jika parameter KeamananRpcBindingCreate diatur ke NULL -- maka perilaku keamanan default berikut diasumsikan:

  • Untuk urutan protokol ncalrpc (RPC lokal), RPC akan menggunakan keamanan tingkat transportasi. Ini berarti bahwa RPC akan menggunakan mekanisme keamanan yang ditawarkan oleh kernel Windows untuk memberikan keamanan, dan RPC tidak akan mengautentikasi server karena terhubung menggunakan identitas utas saat ini. Dalam hal ini, pelacakan identitas bersifat statis, jenis peniruan diatur ke "Meniru", dan tingkat autentikasi diatur ke "Privasi".
  • Untuk urutan protokol ncacn_np, RPC juga akan menggunakan keamanan tingkat transportasi. Jika panggilan jarak jauh, RPC menggunakan mekanisme keamanan yang disediakan oleh pengalih sistem file Windows dan tidak ada autentikasi timbal balik. Dalam hal ini, identitas adalah identitas utas saat ini, status pelacakan identitas statis, jenis peniruan diatur ke "Meniru", dan tingkat autentikasi ditentukan oleh kebijakan komputer jarak jauh.

    Jika panggilan bersifat lokal, RPC menggunakan mekanisme keamanan yang disediakan oleh Named Pipe File System (NPFS), dan juga tidak ada autentikasi timbal balik. Dalam hal ini, identitas adalah identitas utas saat ini atau identitas apa pun yang ditetapkan melalui perintah "penggunaan bersih" untuk server. Status pelacakan identitas bersifat dinamis, jenis peniruan diatur ke "Meniru", dan tingkat autentikasi diatur ke "Privasi".

  • Untuk urutan protokol ncacn_ip_tcp, ncacn_ip_udp dan ncacn_http, tidak ada keamanan yang digunakan saat Keamanan diatur ke NULL. Server tidak akan melakukan peniruan, dan semua data akan dikirim sebagai teks yang jelas. Untuk memberikan perlindungan maksimum untuk data, aplikasi harus selalu menyediakan data keamanan.

Tabel berikut ini meringkas pengaturan keamanan default untuk urutan protokol yang berbeda jika parameter KeamananRpcBindingCreate diatur ke NULL.

Pengaturan Keamanan Default ncalrpc ncacn_np lokal ncacn_np jarak jauh ncacn_ip_tcp, ncacn_ip_udp dan ncacn_http
Mekanisme Keamanan Windows Kernel NPFS Pengalih sistem file Tidak ada
Tingkat Autentikasi Privasi Privasi Tergantung kebijakan server Tidak ada
Autentikasi Timbal Balik? Tidak Tidak Tidak Tidak
Jenis Peniruan Meniru Meniru Meniru T/A
Jenis Pelacakan Identitas Statis Dinamis Statis T/A
Efektif Saja? Ya Tidak T/A T/A
Identitas Panggilan Utas saat ini Utas saat ini Pengaturan utas saat ini atau "penggunaan bersih" T/A
 
Catatan Jika Anda membuat handel pengikatan dengan memanggil RPCBindingFromStringBinding API, pelacakan identitas default untuk ncalrpc dengan tidak adanya pengaturan keamanan tertentu bersifat dinamis.

Jika Anda membuat handel pengikatan cepat dengan memanggil RPCBindingCreate API, pelacakan identitas default untuk ncalrpc tanpa adanya pengaturan keamanan tertentu bersifat statis.

Anda harus mengetahui perbedaan dalam kedua API ini jika Anda beralih di antara keduanya di aplikasi Anda.

Setelah handel pengikatan dibuat, API RpcBindingSetAuthInfo dan RpcBindingSetAuthInfoEx dapat digunakan untuk mengubah pengaturan set gagang pengikatan dengan struktur ini.

 

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Header rpcdce.h (termasuk Rpc.h)

Lihat juga

RPC_BINDING_HANDLE

RpcBindingBind

RpcBindingCreate