Bagikan melalui


Persyaratan Konteks

Persyaratan konteks dinyatakan sebagai kombinasi bendera bit yang diteruskan ke fungsi InitializeSecurityContext (Umum) atau AcceptSecurityContext (Umum). Bendera ini memengaruhi konteks dalam sejumlah cara. Tidak semua bendera berlaku untuk semua konteks. Beberapa hanya valid untuk server, yang lain hanya untuk klien.

Pemanggil menggunakan parameter fContextReq dari panggilan InitializeSecurityContext (Umum) atau AcceptSecurityContext (Umum) untuk menentukan sekumpulan bendera yang menunjukkan kemampuan yang diperlukan. Saat fungsi kembali, parameter pfContextAttr menunjukkan atribut konteks yang ditetapkan. Pemanggil menentukan apakah atribut konteks akhir dapat diterima.

Bendera yang diminta dari atau dikembalikan oleh InitializeSecurityContext (Umum) diawali oleh ISC. Yang diminta dari atau dikembalikan oleh AcceptSecurityContext (Umum) diawali oleh ASC. Bendera yang diteruskan ke fungsi termasuk REQ, sementara bendera yang dikembalikan termasuk RET. Misalnya, bendera permintaan untuk autentikasi timbal balik yang diteruskan ke InitializeSecurityContext (Umum) ISC_REQ_MUTUAL_AUTH. Server yang meminta autentikasi timbal balik lolos ASC_REQ_MUTUAL_AUTH ke AcceptSecurityContext (Umum). Jika autentikasi timbal balik tercapai, InitializeSecurityContext (Umum) mengembalikan ISC_RET_MUTUAL_AUTH dan AcceptSecurityContext (Umum) mengembalikan ASC_RET_MUTUAL_AUTH. Jika penelepon meminta autentikasi bersama, tetapi paket keamanan menunjukkan bahwa itu tidak dapat dilakukan, pemanggil harus memutuskan apakah akan membatalkan konteks atau melanjutkan.

Tabel berikut ini menjelaskan berbagai bendera persyaratan konteks.

Bendera Deskripsi
MENDELEGASIKAN
Server dalam aplikasi transportasi dapat membangun konteks keamanan baru yang meniru klien yang akan diterima oleh server lain sebagai konteks klien. Delegasi hanya berfungsi jika MUTUAL_AUTH diatur. DELEGASI saat ini hanya didukung oleh Kerberos. Selanjutnya, Kerberos hanya akan mendelegasikan ke server yang memiliki bendera TRUSTED_FOR_DELEGATION. Jangan gunakan bendera ini untuk delegasi yang dibatasi.
MUTUAL_AUTH
Pihak yang berkomunikasi harus mengautentikasi identitas mereka satu sama lain. Tanpa MUTUAL_AUTH, klien mengautentikasi identitasnya ke server. Dengan MUTUAL_AUTH, server juga harus mengautentikasi identitasnya ke klien.
Saat menggunakan paket keamanan Schannel , server mengatur konstanta ASC_RET_MUTUAL_AUTH hanya dalam panggilan terakhir ke AcceptSecurityContext (Negosiasi), setelah pemetaan sertifikat berhasil diselesaikan.
REPLAY_DETECT
Paket keamanan mendeteksi paket yang diputar ulang dan memberi tahu penelepon jika paket telah diputar ulang. Penggunaan bendera ini menyiratkan semua kondisi yang ditentukan oleh bendera INTEGRITY.
SEQUENCE_DETECT
Konteks harus diizinkan untuk mendeteksi pengiriman paket yang tidak berurutan nanti melalui fungsi dukungan pesan. Penggunaan bendera ini menyiratkan semua kondisi yang ditentukan oleh bendera INTEGRITY.
KERAHASIAAN
Konteks dapat melindungi data saat transit menggunakan fungsi EncryptMessage (Umum) dan DecryptMessage (Umum). Bendera CONFIDENTIALITY tidak berfungsi jika konteks yang dihasilkan adalah untuk akun Tamu.
USE_SESSION_KEY
Kunci sesi baru harus dinegosiasikan.
PROMPT_FOR_CREDS
Jika klien adalah pengguna interaktif, paket keamanan harus, jika memungkinkan, meminta kredensial yang sesuai kepada pengguna.
USE_SUPPLIED_CREDS
Informasi kredensial khusus paket tersedia di buffer input. Paket keamanan dapat menggunakan kredensial ini untuk mengautentikasi koneksi.
SAVE_SUPPLIED_CREDS
Kredensial yang disediakan harus di-cache dengan kredensial tambahan.
ALLOCATE_MEMORY
Paket keamanan harus mengalokasikan memori. Pemanggil akhirnya harus memanggil fungsi FreeContextBuffer untuk membebaskan memori yang dialokasikan oleh paket keamanan.
USE_DCE_STYLE
Pemanggil mengharapkan transaksi autentikasi tiga leg.
DATAGRAM
Semantik datagram harus digunakan. Untuk informasi selengkapnya, lihat Konteks Datagram.
KONEKSI
Semantik koneksi harus digunakan. Untuk informasi selengkapnya, lihat Konteks Berorientasi Koneksi.
STREAM
Semantik aliran harus digunakan. Untuk informasi selengkapnya, lihat Konteks Aliran.
EXTENDED_ERROR
Pesan balasan kesalahan untuk peer harus dihasilkan jika konteks gagal.
INTEGRITAS
Integritas buffer dapat diverifikasi tetapi tidak ada pengurutan atau deteksi balasan yang diaktifkan.
NO_INTEGRITY
Persyaratan INTEGRITAS diabaikan.
MENGIDENTIFIKASI
Ketika server meniru konteks yang memiliki set bendera ini, peniruan itu menghasilkan akses yang sangat terbatas. Peniruan identitas dengan set IDENTIFI digunakan untuk memverifikasi identitas klien.