Share via


WS_XML_TOKEN_MESSAGE_SECURITY_BINDING struttura (webservices.h)

Sottotipo di associazione di sicurezza per specificare l'uso di un token di sicurezza già disponibile per l'applicazione in formato XML. Il token di sicurezza fornito dall'applicazione in questa associazione viene presentato a un servizio in un'intestazione WS-Security in base all'associazione specificata. Questa associazione di sicurezza può essere inclusa in una descrizione di sicurezza solo sul lato client.

Questa associazione di sicurezza non è supportata con il WS_NAMEDPIPE_CHANNEL_BINDING.

Anche se questa associazione può essere usata con qualsiasi token disponibile in formato XML, questa operazione viene comunemente usata negli scenari di federazione. Ad esempio, un provider di token lato client, ad esempio CardSpace, può essere usato per ottenere un token da un servizio token di sicurezza e tale token può quindi essere presentato a un servizio Web usando questa associazione di sicurezza.

Nota sulla sicurezza: come per altri token di sicurezza e credenziali, l'applicazione è responsabile della decisione di valutazione dei rischi di divulgare un determinato token XML (fornito dall'applicazione in una descrizione di sicurezza) a un determinato server (fornito dall'applicazione durante l'apertura del canale). In particolare, l'applicazione deve considerare la minaccia che il server potrebbe usare il token XML ricevuto dal client, a sua volta, per fingere di essere il client a una terza parte. Per questa minaccia, esistono le mitigazioni seguenti: (A) il processo di autenticazione del server assicura che il messaggio (e quindi il token) venga inviato solo a un server che può parlare per l'indirizzo specificato dall'applicazione client; (B) i token senza chiave (bearer) sono in genere utilizzabili solo in un server (ad esempio, contoso.com ottiene poco dal passaggio di contoso.com un token nome utente/password a un altro sito- la progettazione della sicurezza dell'applicazione deve assicurarsi che questa proprietà contenga); (C) i token con chiave simmetrica non sono utilizzabili in qualsiasi server che non condivide la stessa chiave simmetrica; (D) i token con chiave asimmetrica firmano il timestamp e l'intestazione "To", limitando la loro applicabilità all'oggetto "To" previsto per una durata di tempo stretta.

Con questa associazione di sicurezza, non è possibile specificare proprietà di associazione di sicurezza:

Sintassi

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;

Members

binding

Tipo di base da cui deriva il sottotipo di associazione di sicurezza e tutti gli altri sottotipi di associazione di sicurezza.

bindingUsage

Come il token di sicurezza corrispondente a questa associazione di sicurezza deve essere associato a un messaggio.

È supportato solo WS_SUPPORTING_MESSAGE_SECURITY_USAGE . Con questo utilizzo, questa associazione di sicurezza fornisce l'autenticazione client, ma non la protezione dei messaggi, ad esempio la firma, la crittografia, il rilevamento della riproduzione. Pertanto, questa associazione deve essere usata insieme a un'altra associazione di sicurezza, ad esempio la WS_SSL_TRANSPORT_SECURITY_BINDING che fornisce un canale protetto.

xmlToken

Token di sicurezza XML da usare. Questo token può essere creato usando WsCreateXmlSecurityToken o ottenuto da un servizio token di sicurezza usando WsRequestSecurityToken. Quando questa associazione viene usata per la creazione di un canale, viene eseguita una copia del token fornito e mantenuta per l'uso interno, l'applicazione continua a possedere il token fornito ed è responsabile dell'eliminazione con WsFreeSecurityToken in qualsiasi momento dopo la restituzione della chiamata di creazione del canale.

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Intestazione webservices.h