Condividi tramite


enumerazione WS_SECURITY_BINDING_PROPERTY_ID (webservices.h)

Identifica le proprietà usate per specificare le impostazioni di associazione di sicurezza. Le impostazioni di associazione di sicurezza sono presenti nelle associazioni di sicurezza usate, a sua volta, in una descrizione della sicurezza.

Questa enumerazione viene usata all'interno della struttura WS_SECURITY_BINDING_PROPERTY , che a sua volta viene usata in una struttura WS_SECURITY_BINDING . Non tutti i valori sono applicabili a tutte le associazioni di sicurezza. Vedere le singole descrizioni per un elenco di associazioni di sicurezza che supportano la rispettiva proprietà.

Si noti che l'enumerazione correlata WS_SECURITY_TOKEN_PROPERTY_ID definisce le chiavi per estrarre campi da un'istanza del token di sicurezza. Pertanto, WS_SECURITY_BINDING_PROPERTY consente di specificare le impostazioni di associazione di sicurezza in fase di creazione del canale/listener per influenzare il modo in cui viene creato e usato un token di sicurezza, mentre WS_SECURITY_TOKEN_PROPERTY_ID consente di estrarre campi da un token di sicurezza, in genere un token di sicurezza da un messaggio ricevuto quando il canale e la sicurezza sono "live".

Sintassi

typedef enum {
  WS_SECURITY_BINDING_PROPERTY_REQUIRE_SSL_CLIENT_CERT = 1,
  WS_SECURITY_BINDING_PROPERTY_WINDOWS_INTEGRATED_AUTH_PACKAGE = 2,
  WS_SECURITY_BINDING_PROPERTY_REQUIRE_SERVER_AUTH = 3,
  WS_SECURITY_BINDING_PROPERTY_ALLOW_ANONYMOUS_CLIENTS = 4,
  WS_SECURITY_BINDING_PROPERTY_ALLOWED_IMPERSONATION_LEVEL = 5,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_SCHEME = 6,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_TARGET = 7,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_BASIC_REALM = 8,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_DIGEST_REALM = 9,
  WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_DIGEST_DOMAIN = 10,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_KEY_SIZE = 11,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_KEY_ENTROPY_MODE = 12,
  WS_SECURITY_BINDING_PROPERTY_MESSAGE_PROPERTIES = 13,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_MAX_PENDING_CONTEXTS = 14,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_MAX_ACTIVE_CONTEXTS = 15,
  WS_SECURITY_BINDING_PROPERTY_SECURE_CONVERSATION_VERSION = 16,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_SUPPORT_RENEW = 17,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_RENEWAL_INTERVAL = 18,
  WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_ROLLOVER_INTERVAL = 19,
  WS_SECURITY_BINDING_PROPERTY_CERT_FAILURES_TO_IGNORE = 20,
  WS_SECURITY_BINDING_PROPERTY_DISABLE_CERT_REVOCATION_CHECK = 21,
  WS_SECURITY_BINDING_PROPERTY_DISALLOWED_SECURE_PROTOCOLS = 22,
  WS_SECURITY_BINDING_PROPERTY_CERTIFICATE_VALIDATION_CALLBACK_CONTEXT = 23
} WS_SECURITY_BINDING_PROPERTY_ID;

Costanti

 
WS_SECURITY_BINDING_PROPERTY_REQUIRE_SSL_CLIENT_CERT
Valore: 1
Valore BOOL che specifica se è necessario richiedere un certificato client quando si usa SSL. The
il valore predefinito è FALSE.


Questa impostazione può essere specificata nelle proprietà di associazione di sicurezza di un oggetto
WS_SSL_TRANSPORT_SECURITY_BINDING lato server.
WS_SECURITY_BINDING_PROPERTY_WINDOWS_INTEGRATED_AUTH_PACKAGE
Valore: 2
Valore WS_WINDOWS_INTEGRATED_AUTH_PACKAGE che specifica il pacchetto SSP specifico (tra Kerberos, NTLM, SPNEGO) da usare
quando si esegue l'autenticazione integrata di Windows. Il valore predefinito è WS_WINDOWS_INTEGRATED_AUTH_PACKAGE_SPNEGO.


Questa impostazione può essere specificata nelle proprietà di associazione di sicurezza di WS_TCP_SSPI_TRANSPORT_SECURITY_BINDING e WS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDING.
WS_SECURITY_BINDING_PROPERTY_REQUIRE_SERVER_AUTH
Valore: 3
Valore BOOL che specifica se l'autenticazione del server è obbligatoria. Attualmente, questa impostazione
è applicabile solo quando si usa l'autenticazione integrata di Windows
Sicurezza. L'impostazione di questa opzione su FALSE è fortemente
scoraggiato perché, senza autenticazione del server, una parte dannosa
masquerading come il server non può essere rilevato.


Il valore predefinito è TRUE quando viene usato con WS_TCP_SSPI_TRANSPORT_SECURITY_BINDING e FALSE quando usato con WS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDING


Se un protocollo che non esegue l'autenticazione server (ad esempio NTLM) è
per essere consentito, questa proprietà deve essere impostata su
FALSE.

Questa impostazione può essere specificata solo nelle proprietà di associazione di sicurezza
di un WS_TCP_SSPI_TRANSPORT_SECURITY_BINDING lato client e WS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDING.
WS_SECURITY_BINDING_PROPERTY_ALLOW_ANONYMOUS_CLIENTS
Valore: 4
Valore BOOL che specifica
se il server deve consentire ai client autenticati in modo anonimo
uso della sicurezza basata sull'autenticazione integrata di Windows. Valore predefinito
è FALSE.


Questa impostazione può essere specificata solo nelle proprietà di associazione di sicurezza
di un WS_TCP_SSPI_TRANSPORT_SECURITY_BINDING sul lato server e WS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDING.
WS_SECURITY_BINDING_PROPERTY_ALLOWED_IMPERSONATION_LEVEL
Valore: 5
Valore SECURITY_IMPERSONATION_LEVEL che specifica il livello di rappresentazione che il client vuole consentire quando si usa Windows
Autenticazione integrata per comunicare con un servizio. Il livello di rappresentazione predefinito è SecurityIdentification.


Questa impostazione può essere specificata nelle proprietà di associazione di sicurezza
di WS_TCP_SSPI_TRANSPORT_SECURITY_BINDING, WS_NAMEDPIPE_SSPI_TRANSPORT_SECURITY_BINDING e WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING.
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_SCHEME
Valore: 6
ULONG che specifica la modalità di autenticazione dell'intestazione HTTP da usare. Il valore specificato deve essere una combinazione di uno o più di
WS_HTTP_HEADER_AUTH_SCHEME_NONE, WS_HTTP_HEADER_AUTH_SCHEME_BASIC,
WS_HTTP_HEADER_AUTH_SCHEME_DIGEST, WS_HTTP_HEADER_AUTH_SCHEME_NTLM o
WS_HTTP_HEADER_AUTH_SCHEME_NEGOTIATE. Quando si imposta questa proprietà su un'associazione usata per comunicare
con un server proxy HTTP, è necessario impostare uno schema e WS_HTTP_HEADER_AUTH_SCHEME_NONE
potrebbe non essere usato.


In alternativa, questa proprietà può essere impostata su WS_HTTP_HEADER_AUTH_SCHEME_PASSPORT.
WS_HTTP_HEADER_AUTH_SCHEME_PASSPORT non deve essere combinato con alcun altro valore e non può essere usato per
autenticarsi in un server proxy HTTP.



WS_HTTP_HEADER_AUTH_SCHEME_NONE è supportato solo nel client. Impostandolo da solo disabilita l'autenticazione dell'intestazione HTTP.
Impostandolo insieme ad altri schemi consente al client di eseguire il fallback a nessuna autenticazione di intestazione quando il server non lo richiede.
In caso contrario, se il client specifica più schemi di autenticazione e il server non richiede l'autenticazione la richiesta avrà esito negativo.


Quando si imposta uno schema di autenticazione singolo, il client eseguirà la richiesta con tale schema impostato. Se vengono impostati più schemi,
il client eseguirà prima il probe del server per gli schemi supportati inviando una richiesta vuota non autenticata. Deve essere il client
e il server condividono più schemi supportati, il client assegna priorità agli schemi nell'ordine seguente e sceglie il primo piano reciprocamente
supportato uno:



Quando lo schema è impostato su WS_HTTP_HEADER_AUTH_SCHEME_NEGOTIATE e l'autenticazione Kerberos viene negoziata, il nome dell'entità server (SPN)
usato deriva dal nome DNS del server. Anche quando la WS_ENDPOINT_IDENTITY presente viene ignorata. Per l'autenticazione
per esito positivo, il server deve essere in grado di decrittografare i ticket Kerberos per tale SPN.


Quando lo schema è impostato su WS_HTTP_HEADER_AUTH_SCHEME_DIGEST o WS_HTTP_HEADER_AUTH_SCHEME_BASIC, il WS_STRING_WINDOWS_INTEGRATED_AUTH_CREDENTIAL deve essere usato come tipo di credenziale.

Nota: l'uso di "localhost", "127.0.0.1" o modi simili per fare riferimento al computer locale come indirizzo server può causare errori quando si usano
WS_HTTP_HEADER_AUTH_SCHEME_NTLM o WS_HTTP_HEADER_AUTH_SCHEME_NEGOTIATE. È consigliabile usare invece il nome del computer.


Questa impostazione può essere specificata nelle proprietà di associazione di sicurezza di WS_HTTP_HEADER_AUTH_SECURITY_BINDING.
Il valore predefinito è WS_HTTP_HEADER_AUTH_SCHEME_NEGOTIATE.
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_TARGET
Valore: 7
Valore WS_HTTP_HEADER_AUTH_TARGET che specifica la destinazione di autenticazione dell'intestazione HTTP da usare. Questa proprietà può essere specificata
sul lato client per indicare se l'associazione di sicurezza di autenticazione dell'intestazione http
è per il server di destinazione o il server proxy. Il valore predefinito è WS_HTTP_HEADER_AUTH_TARGET_SERVICE.


Questa impostazione può essere specificata nelle proprietà di associazione di sicurezza di WS_HTTP_HEADER_AUTH_SECURITY_BINDING.
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_BASIC_REALM
Valore: 8
Un WS_STRING viene usato come area di autenticazione con l'intestazione HTTP di base
schema di autenticazione.


Questa impostazione può essere specificata nelle proprietà di associazione di sicurezza di un oggetto
WS_HTTP_HEADER_AUTH_SECURITY_BINDING lato server.
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_DIGEST_REALM
Valore: 9
Un WS_STRING usato come area di autenticazione con il digest HTTP
schema di autenticazione dell'intestazione.


Questa impostazione può essere specificata nelle proprietà di associazione di sicurezza di un oggetto
WS_HTTP_HEADER_AUTH_SECURITY_BINDING lato server.
WS_SECURITY_BINDING_PROPERTY_HTTP_HEADER_AUTH_DIGEST_DOMAIN
Valore: 10
Un WS_STRING utilizzato come nome di dominio con il digest
Schema di autenticazione dell'intestazione HTTP.


Questa impostazione può essere specificata nelle proprietà di associazione di sicurezza di un oggetto
WS_HTTP_HEADER_AUTH_SECURITY_BINDING lato server.
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_KEY_SIZE
Valore: 11
ULONG che specifica le dimensioni della chiave (in bit) del token di sicurezza da richiedere a un oggetto
Emittente. Se non specificato, l'autorità emittente decide le dimensioni. Può essere usato con il WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING.
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_KEY_ENTROPY_MODE
Valore: 12
Valore WS_SECURITY_KEY_ENTROPY_MODE che specifica il modo in cui l'entropia contribuisce alla chiave nella chiave simmetrica emessa
Token. Il valore predefinito è WS_SECURITY_KEY_ENTROPY_MODE_COMBINED.
Questa impostazione può essere specificata nelle proprietà dell'associazione di sicurezza della struttura WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING .
WS_SECURITY_BINDING_PROPERTY_MESSAGE_PROPERTIES
Valore: 13
Set di WS_MESSAGE_PROPERTIES da specificare
durante la creazione dei due messaggi in
da usare per il token di sicurezza che ottiene lo scambio. Se questa proprietà
non è specificato, i messaggi di richiesta e risposta vengono creati con
proprietà predefinite del messaggio. Questa impostazione può essere specificata nelle proprietà dell'associazione di sicurezza della struttura WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING .
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_MAX_PENDING_CONTEXTS
Valore: 14
ULONG che specifica il numero massimo di contesti di sicurezza in sospeso nel servizio
non sono stati accettati dall'applicazione (o dal modello di servizio) come
Canali. Il valore predefinito è 100. L'impostazione può essere specificata nelle proprietà dell'associazione di sicurezza della struttura WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING .
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_MAX_ACTIVE_CONTEXTS
Valore: 15
ULONG che specifica il numero massimo di contesti di sicurezza attivi nel servizio. Il valore predefinito è 1000.
L'impostazione può essere specificata nelle proprietà dell'associazione di sicurezza della struttura WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING .
WS_SECURITY_BINDING_PROPERTY_SECURE_CONVERSATION_VERSION
Valore: 16
Valore WS_SECURE_CONVERSATION_VERSION che specifica la versione di WS-SecureConversation da usare. Il valore predefinito è WS_SECURE_CONVERSATION_VERSION_FEBRUARY_2005.
Questa impostazione può essere specificata nelle proprietà dell'associazione di sicurezza della struttura WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING .
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_SUPPORT_RENEW
Valore: 17
VALORE BOOL che specifica
se supportare o meno l'operazione di rinnovo sui contesti di sicurezza stabiliti. Nel client, se si tratta di
impostare su FALSE, invece di rinnovare il contesto di sicurezza esistente in un nuovo contesto
sarà stabilito. Nel server tutti i messaggi di rinnovo in ingresso saranno
Rifiutato. Il valore predefinito è TRUE.
Questa impostazione può essere specificata nelle proprietà dell'associazione di sicurezza della struttura WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING .
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_RENEWAL_INTERVAL
Valore: 18
Struttura WS_TIMESPAN che contiene l'intervallo prima del quale deve essere rinnovato un contesto di sicurezza. Nel client il valore predefinito è 10 ore
e indica l'ora dopo la quale la sessione viene rinnovata in modo proattivo. Nel server per impostazione predefinita è 15 ore
e indica la durata del contesto. Prima di raggiungere tale limite, è necessario rinnovare un contesto del server.
Questa impostazione può essere specificata nelle proprietà dell'associazione di sicurezza di
WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING struttura.
WS_SECURITY_BINDING_PROPERTY_SECURITY_CONTEXT_ROLLOVER_INTERVAL
Valore: 19
Struttura WS_TIMESPAN che contiene l'intervallo di tempo per il quale deve essere accettato un token di contesto di sicurezza precedente dopo un rinnovo. Il valore predefinito è 5 minuti.
Questo intervallo di tolleranza viene fornito per gestire senza problemi i messaggi dell'applicazione durante il rinnovo della sessione.
Questa impostazione può essere specificata nelle proprietà dell'associazione di sicurezza di
WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING struttura.
WS_SECURITY_BINDING_PROPERTY_CERT_FAILURES_TO_IGNORE
Valore: 20
ULONG che specifica un set di errori di verifica del certificato ignorati dal client in modo che la comunicazione con
l'endpoint remoto avrà esito positivo indipendentemente.
È possibile specificare qualsiasi combinazione dei valori definiti in WS_CERT_FAILURE o 0. Il valore predefinito è WS_CERT_FAILURE_REVOCATION_OFFLINE.
Questa impostazione può essere specificata nelle proprietà dell'associazione di sicurezza di
WS_SSL_TRANSPORT_SECURITY_BINDING struttura nel client.


Ignorando gli errori di verifica del certificato, l'applicazione può esporre l'applicazione a potenziali vulnerabilità di sicurezza.
L'uso di questa proprietà deve essere valutato attentamente.
WS_SECURITY_BINDING_PROPERTY_DISABLE_CERT_REVOCATION_CHECK
Valore: 21
Valore BOOL che specifica lo stato del controllo delle revoche di certificati. Se impostato su TRUE, il controllo delle revoche di certificati è disabilitato. Il valore predefinito è FALSE.
Questa impostazione può essere specificata nelle proprietà dell'associazione di sicurezza di
WS_SSL_TRANSPORT_SECURITY_BINDING struttura nel client.


La disabilitazione del controllo della revoca dei certificati può esporre l'applicazione a potenziali vulnerabilità di sicurezza.
L'uso di questa proprietà deve essere valutato attentamente.
WS_SECURITY_BINDING_PROPERTY_DISALLOWED_SECURE_PROTOCOLS
Valore: 22
WS_SECURITY_BINDING_PROPERTY_CERTIFICATE_VALIDATION_CALLBACK_CONTEXT
Valore: 23
Struttura WS_CERTIFICATE_VALIDATION_CALLBACK_CONTEXT che specifica un callback che verrà richiamato per ogni operazione di richiesta di invio. In questo modo un'applicazione può convalidare il certificato associato alla connessione di una richiesta.

Requisiti

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