Bagikan melalui


Struktur COAUTHINFO (wtypesbase.h)

Berisi pengaturan autentikasi yang digunakan saat membuat permintaan aktivasi jarak jauh dari komputer klien ke komputer server.

Sintaksis

typedef struct _COAUTHINFO {
  DWORD          dwAuthnSvc;
  DWORD          dwAuthzSvc;
  LPWSTR         pwszServerPrincName;
  DWORD          dwAuthnLevel;
  DWORD          dwImpersonationLevel;
  COAUTHIDENTITY *pAuthIdentityData;
  DWORD          dwCapabilities;
} COAUTHINFO;

Anggota

dwAuthnSvc

Layanan autentikasi yang akan digunakan. Untuk daftar nilai, lihat Konstanta Layanan Autentikasi . Gunakan RPC_C_AUTHN_NONE jika tidak ada autentikasi yang diperlukan. RPC_C_AUTHN_WINNT adalah default dan RPC_C_AUTHN_GSS_KERBEROS juga didukung.

dwAuthzSvc

Layanan otorisasi yang akan digunakan. Untuk daftar nilai, lihat Konstanta Otorisasi . Untuk menggunakan layanan autentikasi NT, tentukan RPC_C_AUTHZ_NONE.

pwszServerPrincName

Nama utama server untuk digunakan dengan layanan autentikasi. Jika Anda menggunakan RPC_C_AUTHN_WINNT, nama utama harus NULL.

dwAuthnLevel

Tingkat autentikasi yang akan digunakan. Untuk daftar nilai, lihat Konstanta Tingkat Autentikasi .

Pada Windows Server 2003, aktivasi jarak jauh menggunakan tingkat autentikasi default yang ditentukan dalam parameter CoInitializeSecuritydwAuthnLevel. Di versi Windows sebelumnya, RPC_C_AUTHN_LEVEL_CONNECT selalu digunakan untuk tingkat keamanan kecuali tingkat lain ditentukan secara eksplisit.

dwImpersonationLevel

Tingkat peniruan yang akan digunakan. Untuk daftar nilai, lihat Konstanta Tingkat Peniruan Identitas . Nilai ini harus RPC_C_IMP_LEVEL_IMPERSONATE atau lebih tinggi.

pAuthIdentityData

Penunjuk ke struktur COAUTHIDENTITY yang menetapkan identitas klien nondefault. Jika parameter ini null, identitas aktual klien digunakan. Nilai anggota struktur khusus layanan autentikasi. Nilai ini harus NULL jika dwAuthnSvc tidak menentukan protokol autentikasi jaringan NTLMSSP atau Kerberos digunakan sebagai layanan otorisasi.

dwCapabilities

Menunjukkan kemampuan tambahan proksi ini. Saat ini, anggota ini harus EOAC_NONE (0x0) atau RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH (0x1). Gunakan RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH jika Kerberos diperlukan.

Komentar

Jika pAuthInfo di COSERVERINFO diatur ke NULL, Snego akan digunakan untuk menegosiasikan layanan autentikasi yang akan berfungsi antara klien dan server. Namun, struktur NULLCOAUTHINFO non-dapat ditentukan untuk pAuthInfo untuk memenuhi salah satu kebutuhan berikut:

  • Untuk menentukan identitas klien yang berbeda untuk aktivasi jarak jauh komputer. Identitas yang ditentukan akan digunakan untuk pemeriksaan izin peluncuran di server daripada identitas klien nyata.
  • Untuk menentukan bahwa Kerberos, bukan NTLMSSP, digunakan untuk aktivasi jarak jauh mesin. Identitas klien nondefault mungkin atau mungkin tidak ditentukan.
  • Untuk meminta aktivasi yang tidak aman.
  • Untuk menentukan layanan autentikasi kepemilikan.
Menentukan struktur COAUTHINFO memungkinkan aktivasi DCOM bekerja dengan benar dengan penyedia keamanan selain NTLMSSP. Anda juga dapat menentukan informasi keamanan tambahan yang digunakan selama aktivasi jarak jauh untuk interoperabilitas dengan implementasi alternatif DCOM.

Jika Anda mengatur dwAuthzSvc, pwszServerPrincName, dwImpersonationLevel, atau dwCap kemampuan untuk salah nilai dan memanggil CoGetClassObject atau CoCreateInstanceEx, fungsi-fungsi ini tidak mengembalikan E_INVALIDARG atau kesalahan serupa. Nilai default digunakan alih-alih nilai yang salah.

Persyaratan

Syarat Nilai
klien minimum yang didukung Windows 2000 Professional [aplikasi desktop | Aplikasi UWP]
server minimum yang didukung Windows 2000 Server [aplikasi desktop | Aplikasi UWP]
Header wtypesbase.h (termasuk WTypes.h)

Lihat juga

COSERVERINFO