Procedura: esaminare il contesto di protezione

Durante la programmazione di servizi Windows Communication Foundation (WCF), il contesto di protezione del servizio consente di determinare dettagli sulle credenziali client e sulle attestazioni utilizzate per l'autenticazione con il servizio. A tale fine, utilizzare le proprietà della classe ServiceSecurityContext.

È ad esempio possibile recuperare l'identità del client corrente utilizzando PrimaryIdentity o la proprietà WindowsIdentity. Per determinare se il client è anonimo, utilizzare la proprietà IsAnonymous.

È inoltre possibile determinare quali sono le attestazioni eseguite per conto del client eseguendo un'iterazione nell'insieme di attestazioni nella proprietà AuthorizationContext.

Per ottenere il contesto di protezione corrente

  • Accedere alla proprietà Current statica per ottenere il contesto di protezione corrente. Esaminare qualsiasi proprietà del contesto corrente dal riferimento.

Per determinare l'identità del chiamante

  1. Stampare il valore delle proprietà PrimaryIdentity e WindowsIdentity.

Per analizzare le attestazioni di un chiamante

  1. Restituire la classe AuthorizationContext corrente. Utilizzare la proprietà Current per restituire il contesto di protezione del servizio corrente, quindi restituire AuthorizationContext utilizzando la proprietà AuthorizationContext.

  2. Analizzare l'insieme di oggetti ClaimSet restituiti dalla proprietà ClaimSets della classe AuthorizationContext.

Esempio

Nell'esempio seguente vengono stampati i valori delle proprietà WindowsIdentity e PrimaryIdentity del contesto di protezione corrente e la proprietà ClaimType, il valore della risorsa dell'attestazione e la proprietà Right di ogni attestazione nel contesto di protezione corrente.

Compilazione del codice

Il codice utilizza gli spazi dei nomi seguenti:

Vedere anche

Concetti

Protezione dei servizi
Identità del servizio e autenticazione