Bagikan melalui


Fungsi RpcBindingInqAuthClientEx (rpcdce.h)

Aplikasi server memanggil fungsi RpcBindingInqAuthClientEx untuk mendapatkan informasi yang diperluas tentang program klien yang melakukan panggilan prosedur jarak jauh.

Sintaks

RPC_STATUS RpcBindingInqAuthClientEx(
  RPC_BINDING_HANDLE ClientBinding,
  RPC_AUTHZ_HANDLE   *Privs,
  RPC_CSTR           *ServerPrincName,
  unsigned long      *AuthnLevel,
  unsigned long      *AuthnSvc,
  unsigned long      *AuthzSvc,
  unsigned long      Flags
);

Parameter

ClientBinding

Handel pengikatan klien yang melakukan panggilan prosedur jarak jauh. Nilai ini bisa nol. Lihat Keterangan.

Privs

Mengembalikan penunjuk ke handel ke informasi istimewa untuk aplikasi klien yang melakukan panggilan prosedur jarak jauh pada handel pengikatan ClientBinding . Untuk panggilan ncalrpc , Privs berisi string dengan nama utama klien.

Aplikasi server harus mentransmisikan parameter Privs ke jenis data yang ditentukan oleh parameter AuthnSvc . Data yang direferensikan oleh argumen ini bersifat baca-saja dan tidak boleh dimodifikasi oleh aplikasi server. Jika server ingin mempertahankan salah satu data yang dikembalikan, server harus menyalin data ke dalam memori yang dialokasikan server.

Untuk informasi selengkapnya tentang SSP, lihat Penyedia Dukungan Keamanan (SSP).

ServerPrincName

Mengembalikan penunjuk ke penunjuk ke nama prinsipal server yang ditentukan oleh aplikasi server yang disebut fungsi RpcServerRegisterAuthInfo . Konten nama yang dikembalikan dan sintaksnya ditentukan oleh layanan autentikasi yang digunakan. Untuk SCHANNEL SSP, nama utama dalam format msstd. Untuk informasi lebih lanjut tentang format msstd, lihat Nama Utama.

Tentukan nilai null untuk mencegah RpcBindingInqAuthClientEx mengembalikan parameter ServerPrincName . Dalam hal ini, aplikasi tidak memanggil fungsi RpcStringFree .

AuthnLevel

Mengembalikan penunjuk yang diatur ke tingkat autentikasi yang diminta oleh aplikasi klien yang melakukan panggilan prosedur jarak jauh pada handel pengikatan ClientBinding . Untuk daftar tingkat autentikasi yang didukung RPC, lihat Konstanta Tingkat Autentikasi.

Tentukan nilai null untuk mencegah RpcBindingInqAuthClientEx mengembalikan parameter AuthnLevel .

AuthnSvc

Mengembalikan penunjuk yang diatur ke layanan autentikasi yang diminta oleh aplikasi klien yang melakukan panggilan prosedur jarak jauh pada handel pengikatan ClientBinding . Untuk daftar layanan autentikasi yang didukung RPC, lihat Konstanta Layanan Autentikasi.

Tentukan nilai null untuk mencegah RpcBindingInqAuthClientEx mengembalikan parameter AuthnSvc .

CatatanAuthnSvc sesuai dengan SECURITY_STATUS yang dikembalikan oleh QueryContextAttributes pada setiap SSP berbasis sertifikat untuk SECPKG_ATTR_DCE_INFO atau SECPKG_ATTR_REMOTE_CERT_CONTEXT.
 

AuthzSvc

Mengembalikan penunjuk yang diatur ke layanan otorisasi yang diminta oleh aplikasi klien yang melakukan panggilan prosedur jarak jauh pada handel pengikatan pengikatan . Untuk daftar layanan otorisasi yang didukung RPC, lihat Konstanta Layanan Otorisasi .

Tentukan nilai null untuk mencegah RpcBindingInqAuthClientEx mengembalikan parameter AuthzSvc . Parameter ini tidak digunakan oleh layanan autentikasi RPC_C_AUTHN_WINNT. Nilai yang dikembalikan akan selalu RPC_S_AUTHZ_NONE.

Flags

Mengontrol format nama utama. Parameter ini dapat diatur ke nilai berikut.

Nilai Makna
RPC_C_FULL_CERT_CHAIN
Meneruskan kembali nama utama dalam format penuh .

Nilai kembali

Nilai Makna
RPC_S_OK
Panggilan berhasil.
RPC_S_INVALID_BINDING
Handel pengikatan tidak valid.
RPC_S_WRONG_KIND_OF_BINDING
Ini adalah jenis pengikatan yang salah untuk operasi.
RPC_S_BINDING_HAS_NO_AUTH
Pengikatan tidak memiliki informasi autentikasi.
 
Catatan Untuk daftar kode kesalahan yang valid, lihat Nilai Pengembalian RPC.
 

Keterangan

Aplikasi server memanggil fungsi RpcBindingInqAuthClientEx untuk mendapatkan nama utama atau atribut hak istimewa klien terautentikasi yang melakukan panggilan prosedur jarak jauh. Selain itu, RpcBindingInqAuthClientEx mengembalikan layanan autentikasi, tingkat autentikasi, dan nama prinsipal server yang ditentukan oleh klien. Server dapat menggunakan data yang dikembalikan untuk tujuan otorisasi.

Pustaka run-time RPC mengalokasikan memori untuk parameter ServerPrincName yang dikembalikan. Aplikasi bertanggung jawab untuk memanggil fungsi RpcStringFree untuk string argumen yang dikembalikan.

Untuk panggilan RPC sinkron, aplikasi server dapat menggunakan nol sebagai nilai untuk parameter ClientBinding . Menggunakan nol mengambil informasi autentikasi dan otorisasi dari panggilan prosedur jarak jauh yang sedang dijalankan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header rpcdce.h (termasuk Rpc.h)
Pustaka Rpcrt4.lib
DLL Rpcrt4.dll

Lihat juga

RpcBindingInqAuthClient

RpcBindingSetAuthInfo

RpcStringFree