Procedura: disattivare sessioni protette in un'associazione WSFederationHttpBinding

Alcuni servizi possono richiedere credenziali federate senza tuttavia supportare le sessioni protette. In questo caso occorre disattivare la funzionalità di sessione protetta. A differenza della classe WsHttpBinding, la classe WSFederationHttpBinding non fornisce alcuna modalità di disattivazione delle sessioni protette quando si comunica con un servizio. È invece necessario creare un'associazione personalizzata che sostituisce le impostazioni della sessione protetta con un bootstrap.

Questo argomento illustra come modificare gli elementi di un'associazione WSFederationHttpBinding per creare un'associazione personalizzata. Il risultato è un'associazione WSFederationHttpBinding uguale all'originale in cui tuttavia non vengono utilizzate sessioni protette.

Per creare un'associazione federata personalizzata senza sessioni protette

  1. Creare un'istanza della classe WSFederationHttpBinding o in modo imperativo nel codice oppure caricando un'associazione di questo tipo dal file di configurazione.

  2. Duplicare l'associazione WSFederationHttpBinding in un'associazione CustomBinding.

  3. Individuare l'elemento SecurityBindingElement all'interno dell'associazione CustomBinding.

  4. Individuare l'elemento SecureConversationSecurityTokenParameters all'interno dell'associazione SecurityBindingElement.

  5. Sostituire l'elemento SecurityBindingElement originale con l'elemento di associazione di protezione bootstrap ottenuto dai parametri SecureConversationSecurityTokenParameters.

Esempio

Nell'esempio seguente viene creata un'associazione federata personalizzata senza sessioni protette.

Compilazione del codice

  • Per compilare l'esempio di codice, creare un progetto che fa riferimento all'assembly System.ServiceModel.dll.

Vedere anche

Concetti

Associazioni e protezione