struktur WS_XML_TOKEN_MESSAGE_SECURITY_BINDING (webservices.h)

Subjenis pengikatan keamanan untuk menentukan penggunaan token keamanan yang sudah tersedia untuk aplikasi dalam bentuk XML. Token keamanan yang disediakan oleh aplikasi dalam pengikatan ini disajikan ke layanan di header WS-Security sesuai dengan bindingUsage yang ditentukan. Pengikatan keamanan ini dapat disertakan dalam deskripsi keamanan hanya di sisi klien.

Pengikatan keamanan ini tidak didukung dengan WS_NAMEDPIPE_CHANNEL_BINDING.

Meskipun pengikatan ini dapat digunakan dengan token apa pun yang tersedia dalam bentuk XML, ini biasanya digunakan dalam skenario federasi. Misalnya, penyedia token sisi klien seperti CardSpace dapat digunakan untuk mendapatkan token dari layanan token keamanan, dan token tersebut kemudian dapat disajikan ke Layanan Web menggunakan pengikatan keamanan ini.

Catatan keamanan: Seperti halnya token dan kredensial keamanan lainnya, aplikasi bertanggung jawab atas keputusan penilaian risiko untuk mengungkapkan token XML tertentu (disediakan oleh aplikasi dalam deskripsi keamanan) ke server tertentu (disediakan oleh aplikasi saat membuka saluran). Secara khusus, aplikasi harus mempertimbangkan ancaman bahwa server mungkin menggunakan token XML yang diterimanya dari klien, pada gilirannya, untuk berpura-pura menjadi klien ke pihak ke-3. Untuk ancaman ini, mitigasi berikut ada: (A) proses autentikasi server memastikan bahwa pesan (dan karenanya token) dikirim hanya ke server yang dapat berbicara untuk alamat yang ditentukan oleh aplikasi klien; (B) token tanpa kunci (pembawa) biasanya hanya dapat digunakan di satu server (misalnya, contoso.com mendapatkan sedikit dari meneruskan token nama pengguna/kata sandi contoso.com ke situs lain -- desain keamanan aplikasi harus memastikan properti ini disimpan); (C) token kunci simetris tidak dapat digunakan di server mana pun yang tidak berbagi kunci konten yang sama; (D) token kunci asimetris akan menandatangani tanda waktu dan header 'Kepada', membatasi penerapannya ke 'Kepada' yang dimaksudkan untuk durasi waktu yang sempit.

Dengan pengikatan keamanan ini, tidak ada properti pengikatan keamanan yang dapat ditentukan:

Sintaks

typedef struct _WS_XML_TOKEN_MESSAGE_SECURITY_BINDING {
  WS_SECURITY_BINDING       binding;
  WS_MESSAGE_SECURITY_USAGE bindingUsage;
  WS_SECURITY_TOKEN         *xmlToken;
} WS_XML_TOKEN_MESSAGE_SECURITY_BINDING;

Anggota

binding

Jenis dasar tempat subjenis pengikatan keamanan ini dan semua subjenis pengikatan keamanan lainnya berasal.

bindingUsage

Bagaimana token keamanan yang sesuai dengan pengikatan keamanan ini harus terikat dengan pesan.

Hanya WS_SUPPORTING_MESSAGE_SECURITY_USAGE yang didukung. Dengan penggunaan ini, pengikatan keamanan ini menyediakan autentikasi klien, tetapi bukan perlindungan pesan (seperti penandatanganan, enkripsi, deteksi pemutaran ulang). Dengan demikian, pengikatan ini harus digunakan bersama dengan pengikatan keamanan lain seperti WS_SSL_TRANSPORT_SECURITY_BINDING yang menyediakan saluran yang dilindungi.

xmlToken

Token keamanan XML yang akan digunakan. Token ini dapat dibuat menggunakan WsCreateXmlSecurityToken atau diperoleh dari layanan token keamanan menggunakan WsRequestSecurityToken. Ketika pengikatan ini digunakan untuk membuat saluran, salinan token yang disediakan dibuat dan disimpan untuk penggunaan internal -- aplikasi terus memiliki token yang disediakan dan bertanggung jawab untuk menghapusnya dengan WsFreeSecurityToken kapan saja setelah panggilan pembuatan saluran kembali.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 R2 [hanya aplikasi desktop]
Header webservices.h