Uso di Transport-Level Security nel client

Il client specifica come il server rappresenta il client quando il client stabilisce l'associazione di stringhe. Queste informazioni QOS vengono fornite come opzione di endpoint nell'associazione di stringhe. Il client può specificare il livello di rappresentazione, rilevamento dinamico o statico e il flag di sola validità.

Per fornire informazioni sulla qualità del servizio per il server

  1. Il client chiama RpcStringBindingCompose per creare le stringhe del componente, incluse le opzioni dell'endpoint, nel contesto corretto dell'associazione di stringhe.
  2. Il client chiama RpcBindingFromStringBinding per ottenere un nuovo handle di associazione e applicare le informazioni sulla qualità del servizio per il client.
  3. Il client effettua chiamate di routine remote usando l'handle.

Microsoft RPC supporta Windows funzionalità di sicurezza solo in ncacn_np e ncalrpc. Le opzioni di sicurezza per altri trasporti vengono ignorate.

Il client può associare i parametri di sicurezza seguenti all'associazione per il trasporto named-pipe ncacn_np o ncalrpc:

  • Identificazione, rappresentazione o anonima. Specifica il tipo di sicurezza utilizzato. Il valore predefinito è Rappresentazione.

  • Dinamico o statico. Determina se le informazioni di sicurezza associate a un thread sono una copia delle informazioni di sicurezza create al momento in cui viene effettuata la chiamata alla procedura remota (statica) o un puntatore alle informazioni di sicurezza (dinamiche).

    Le informazioni di sicurezza statiche non cambiano. L'impostazione dinamica riflette le impostazioni di sicurezza correnti, incluse le modifiche apportate dopo l'esecuzione della chiamata alla procedura remota. Per ncacn_np, il valore predefinito per le connessioni named pipe remote è statico, per le connessioni named pipe locali il valore predefinito è dinamico.

  • TRUE o FALSE. Specifica il valore del flag di sola validità. Il valore TRUE indica che solo i privilegi del token impostati su on al momento della chiamata sono effettivi. Il valore FALSE indica che tutti i privilegi sono disponibili e che l'applicazione può modificarli.

Qualsiasi combinazione di queste impostazioni può essere assegnata all'associazione, come illustrato nell'esempio seguente:

"Security=Identification Dynamic True"
"Security=Anonymous Static True"
"Security=Impersonation Static False"

Le impostazioni predefinite dei parametri di sicurezza variano in base al protocollo di trasporto.

Per altre informazioni sulla sintassi delle opzioni dell'endpoint, vedere Endpoint.