Share via


Cenni preliminari sul servizio di autenticazione di Windows Communication Foundation

Aggiornamento: novembre 2007

Il servizio di autenticazione di Windows Communication Foundation (WCF) consente di utilizzare l’appartenenza ASP.NET per autenticare gli utenti di qualsiasi applicazione che supporti l’invio e l’utilizzo di un messaggio SOAP, comprese le applicazioni che non utilizzano .NET Framework. Gi utenti di queste applicazioni diverse non necessitano quindi di credenziali separate, Gli utenti possono specificare le stessi credenziali da qualsiasi applicazione client utilizzata per connettersi al servizio desiderato.

Di seguito sono elencate le diverse sezioni di questo argomento:

  • Scenari

  • Informazioni di supporto

  • Esempi di codice

  • Riferimento alle classi

Scenari

È possibile accedere al servizio di autenticazione come servizio WCF quando è necessario autenticare gli utenti utilizzando l’appartenenza ASP.NET da un’applicazione Web non ASP.NET, ad esempio un'applicazione console, un'applicazione Windows Form o un'applicazione non sviluppata con .NET Framework. L'applicazione deve essere in grado di inviare e utilizzare un messaggio SOAP.

Torna all'inizio

Background

Per utilizzare il servizio si passano le credenziali dell'utente al servizio di autenticazione che a sua volta convalida le credenziali utilizzando l’appartenenza ASP.NET. Per impostazione predefinita, il servizio di autenticazione convalida il nome utente e la password passandoli al provider di appartenenze predefinito.

Dopo che l'utente è stato autenticato, il servizio di autenticazione ASP.NET pubblica un ticket di autenticazione come cookie http compatibile con autenticazione basata su form ASP.NET. Nelle richieste successive il ticket viene passato all'applicazione Web evitando all'utente la necessità di specificare ogni volta le credenziali.

Il servizio di autenticazione non supporta l’incorporazione del ticket di autenticazione nell’URL. Per mantenere il ticket di autenticazione, è quindi necessario che i cookie siano attivati nel client.

Per ragioni di sicurezza, è necessario che l'applicazione client acceda sempre al servizio di autenticazione tramite SSL (Secure Sockets Layer) utilizzando il protocollo HTTPS. Per ulteriori informazioni sulla configurazione di SSL, vedere Configuring Secure Sockets Layer (IIS 6.0 Operations Guide) e Configuring Secure Sockets Layer in IIS 7.0 sul sito Web Microsoft (informazioni in lingua inglese).

Autenticazione con credenziali personalizzate

È possibile aggiungere credenziali personalizzate in una richiesta di autenticazione quando è necessario convalidare l'utente con informazioni aggiuntive rispetto al nome e alla password, ad esempio il numero di identificazione. Per includere informazioni aggiuntive per l'autenticazione, passare le credenziali personalizzate nel parametro CustomCredential quando si chiama il metodo login del servizio di autenticazione. Creare quindi un gestore eventi per l'evento Authenticating. Nel gestore leggere le credenziali e convalidarle. Per ulteriori informazioni, vedere la classe Procedura: personalizzare l'accesso utente per l'utilizzo del servizio di autenticazione WCF.

Autenticazione con un provider di appartenenze personalizzate

Per autenticare il nome utente e la password tramite un provider di appartenenze non predefinite, è necessario creare un gestore eventi per l'evento Authenticating. Passare quindi il nome utente e la password al metodo ValidateUser del provider di appartenenze personalizzato. Per ulteriori informazioni, vedere la classe Procedura: utilizzare un provider di appartenenze non predefinito per il servizio di autenticazione WCF.

È possibile mantenere le informazioni utente non riservate come parte del ticket di autenticazione. È ad esempio possibile archiviare il colore preferito dell'utente nel ticket se è necessario recuperarlo in un secondo momento. Per personalizzare il cookie di autenticazione, creare un gestore eventi per l'evento CreatingCookie del servizio di autenticazione e quindi archiviare i dati dell'utente nella proprietà UserData dell'oggetto FormsAuthenticationTicket. Per ulteriori informazioni, vedere la classe Procedura: personalizzare il cookie di autenticazione dal servizio di autenticazione WCF.

Nota:

Non archiviare mai la password dell'utente o gli altri dati riservati nel ticket.

Torna all'inizio

Esempi di codice

Procedura dettagliata: utilizzo dei servizi delle applicazioni ASP.NET

Procedura: attivare il servizio di autenticazione WCF

Procedura: personalizzare l'accesso utente per l'utilizzo del servizio di autenticazione WCF

Procedura: utilizzare un provider di appartenenze non predefinito per il servizio di autenticazione WCF

Procedura: personalizzare il cookie di autenticazione dal servizio di autenticazione WCF

Torna all'inizio

Riferimento delle classi

Nella tabella riportata di seguito sono elencate le classi server principali per il servizio dell’applicazione di autenticazione WCF.

Torna all'inizio

Vedere anche

Attività

Procedura dettagliata: utilizzo dei servizi delle applicazioni ASP.NET

Concetti

Introduzione all'appartenenza