Procedura: Creare un'applicazione con riconoscimento delle prime attestazioni ASP.NET tramite ACS

Aggiornamento: 19 giugno 2015

Si applica a: Azure

Importante

Gli spazi dei nomi ACS possono eseguire la migrazione delle configurazioni del provider di identità Google da OpenID 2.0 a OpenID Connect. La migrazione deve essere completata prima del 1° giugno 2015. Per indicazioni dettagliate, vedere Migrazione degli spazi dei nomi ACS a Google OpenID Connessione. Finché non si esegue la migrazione, questa esercitazione può essere completata usando un altro provider di identità, ad esempio Facebook.

Si applica a

  • Microsoft Azure Active Directory Access Control (anche noto come Servizio di controllo di accesso o ACS)

Panoramica

Questo argomento descrive lo scenario di integrazione di ACS con un'applicazione di ASP.NET relying party. Integrando l'applicazione Web con ACS, è possibile considerare le funzionalità di autenticazione e autorizzazione fuori dal codice. In altre parole, ACS fornisce il meccanismo per l'autenticazione e l'autorizzazione degli utenti all'applicazione Web.

In questo scenario di pratica, ACS autentica gli utenti con un'identità Google in un'applicazione di test ASP.NET relying party.

Procedura per l'integrazione di ACS con un'applicazione relying party ASP.NET

Importante

Prima di eseguire la procedura seguente, assicurarsi che il sistema soddisfi tutti i requisiti di .NET Framework e piattaforma riepilogati in Prerequisiti ACS.

Per integrare ACS con un'applicazione ASP.NET relying party, completare la procedura seguente:

  • Passaggio 1 - Creare uno spazio dei nomi Access Control

  • Passaggio 2 - Avviare il portale di gestione ACS

  • Passaggio 3 - Aggiungere i provider di identità

  • Passaggio 4 : Aggiungere un'applicazione Relying Party

  • Passaggio 5 - Creare regole

  • Passaggio 6 - Rivedere le informazioni di integrazione dell'applicazione

  • Passaggio 7 - Creare un'applicazione relying party ASP.NET

  • Passaggio 8 - Configurare i criteri di attendibilità tra ACS e l'applicazione relying party ASP.NET

  • Passaggio 9 - Testare l'integrazione tra ACS e l'applicazione relying party ASP.NET

Passaggio 1 - Creare uno spazio dei nomi Access Control

Per istruzioni dettagliate su come creare uno spazio dei nomi Controllo di accesso, vedere Procedura: Creare uno spazio dei nomi Controllo di accesso.

Passaggio 2 - Avviare il portale di gestione ACS

Il portale di gestione di ACS consente di configurare lo spazio dei nomi Controllo di accesso aggiungendo provider di identità, configurando applicazioni di relying party, definendo regole e gruppi di regole e definendo le credenziali attendibili dell'applicazione relying party.

Per avviare il portale di gestione ACS

  1. Passare al portale di gestione Microsoft Azure (https://manage.WindowsAzure.com), accedere e quindi fare clic su Active Directory. (Suggerimento per la risoluzione dei problemi: l'elemento "Active Directory" non è disponibile o meno)

  2. Per gestire uno spazio dei nomi di Controllo di accesso, selezionare lo spazio dei nomi, quindi fare clic su Gestisci. Altrimenti, fare clic su Spazi dei nomi controllo di accesso, selezionare lo spazio dei nomi, quindi fare clic su Gestisci.

Passaggio 3 - Aggiungere i provider di identità

Questa sezione descrive come aggiungere i provider di identità da usare con l'applicazione relying party per l'autenticazione. Per altre informazioni sui provider di identità, vedere Provider di identità.

Per aggiungere i provider di identità

  1. Nel portale di gestione di ACS fare clic su Provider di identità nell'albero sul lato sinistro oppure fare clic sul collegamento Provider di identità nella sezione Introduzione.

  2. Nella pagina Identity Providers fare clic su Add, selezionare Google come provider di identità, quindi fare clic su Next.

  3. Nella pagina Add Google Identity Provider viene richiesto all'utente di immettere il testo del collegamento di accesso (il testo predefinito è Google) e un URL immagine. Questo URL punta a un file di immagine che può essere usato come collegamento di accesso per il provider di identità. Se lo si desidera, questi campi possono essere modificati. Per questo esercizio, non modificare i campi e fare clic su Save.

Passaggio 4 : Aggiungere un'applicazione Relying Party

Questa sezione descrive come aggiungere e configurare un'applicazione relying party. Per altre informazioni sulle applicazioni di relying party, vedere Relying Party Applications.

Per configurare un'applicazione relying party

  1. Nel portale di gestione ACS fare clic su Relying Party Applications nell'albero sul lato sinistro oppure fare clic sul collegamento Relying Party Applications nella sezione Introduzione.

  2. Nella pagina Relying Party Applications fare clic su Add.

  3. Nella pagina Add Relying Party Application effettuare le seguenti operazioni:

    • In Name digitare il nome dell'applicazione relying party. Per questo esercizio, digitare TestApp.

    • In Mode selezionare Enter settings manually.

    • Nell'area di autenticazione digitare l'URI a cui si applica il token di sicurezza emesso da ACS. Per questo esercizio digitare https://localhost:7777/.

    • In URL restituito digitare l'URL a cui ACS restituisce il token di sicurezza. Per questo esercizio digitare https://localhost:7777/.

    • In URL errore (facoltativo) immettere l'URL che ACS può pubblicare se si verifica un errore durante l'accesso. Per questo esercizio, lasciare vuoto questo campo.

    • In Formato token selezionare un formato token per ACS da usare durante l'emissione di token di sicurezza a questa applicazione di relying party. Per questo esercizio, selezionare SAML 2.0. Per altre informazioni sui token e sui formati di token, vedere Formati di token supportati in ACS e "Formato token" nelle applicazioni relying party.

    • In Criteri di crittografia token selezionare un criterio di crittografia per i token rilasciati da ACS per questa applicazione relying party. Per questo esercizio, accettare il valore predefinito None. Per altre informazioni sui criteri di crittografia dei token, vedere "Criteri di crittografia dei token" nelle applicazioni relying party.

    • In Token lifetime (secs) specificare la durata della validità di un token di sicurezza rilasciato da ACS. Per questo esercizio, accettare il valore predefinito 600. Per altre informazioni, vedere "Durata token" in Applicazioni relying party.

    • In Identity Providers selezionare i provider di identità da usare con l'applicazione relying party. Per questo esercizio accettare le impostazioni predefinite controllate (Google e Windows Live ID).

    • In Rule groups selezionare i gruppi di regole che l'applicazione relying party deve usare durante l'elaborazione delle attestazioni. Per questo esercizio, accettare il valore Create New Rule Group selezionato per impostazione predefinita. Per altre informazioni sui gruppi di regole, vedere Gruppi di regole e regole.

    • Nella sezione Firma token Impostazioni selezionare se firmare i token SAML con il certificato per lo spazio dei nomi Controllo di accesso o con un certificato personalizzato specifico per questa applicazione. Per questo esercizio, accettare il valore predefinito Use service namespace certificate (standard). Per altre informazioni sulla firma dei token, vedere "Firma token" in Applicazioni relying party.

  4. Fare clic su Salva.

Passaggio 5 - Creare regole

Questa sezione descrive come definire le regole che determinano la modalità di passaggio delle attestazioni dai provider di identità all'applicazione relying party. Per altre informazioni sulle regole e sui gruppi di regole, vedere Gruppi di regole e regole.

Per creare le regole

  1. Nella home page del portale di gestione ACS fare clic su Gruppi di regole nell'albero sul lato sinistro oppure fare clic sul collegamento Gruppi di regole nella sezione Introduzione.

  2. Nella pagina Rule Groups fare clic su Default Rule Group for TestApp (TestApp è infatti il nome che è stato assegnato all'applicazione relying party).

  3. Nella pagina Edit Rule Group fare clic su Generate.

  4. Nella pagina Genera regole: gruppo di regole predefinito per TestApp accettare i provider di identità selezionati per impostazione predefinita (in questo esercizio, Google e Windows Live ID) e quindi fare clic sul pulsante Genera.

  5. Nella pagina Edit Rule Group fare clic su Save.

Passaggio 6 - Rivedere le informazioni di integrazione dell'applicazione

È possibile trovare tutte le informazioni e il codice necessari per modificare l'applicazione relying party in modo che funzioni con ACS nella pagina di integrazione dell'applicazione del portale di gestione di ACS.

Per rivedere le informazioni di integrazione dell'applicazione

  • Nella home page del portale di gestione ACS fare clic su Integrazione dell'applicazione nell'albero sul lato sinistro oppure fare clic sul collegamento Integrazione applicazione nella sezione Introduzione.

    Gli URI ACS visualizzati nella pagina Di integrazione dell'applicazione sono univoci per lo spazio dei nomi Controllo di accesso.

    Per questo esercizio, è consigliabile mantenere aperta questa pagina per eseguire rapidamente i passaggi rimanenti.

Passaggio 7 - Creare un'applicazione relying party ASP.NET

Questa sezione descrive come creare un'applicazione ASP.Net Relying Party che si vuole integrare eventualmente con ACS.

Per creare un'applicazione relying party ASP.NET

  1. Per eseguire Visual Studio 2010, fare clic su Start, fare clic su Esegui, digitare il testo seguente e quindi premere INVIO:
    devenv.exe

  2. In Visual Studio fare clic su File, quindi su Nuovo progetto.

  3. Nella finestra Nuovo progetto scegliere il modello Visual Basic o Visual C#, quindi selezionare Applicazione Web ASP.NET MVC 2.

  4. In Nome digitare il seguente testo, quindi fare clic su OK:
    TestApp

  5. In Creazione progetto unit test selezionare No, non creare un progetto di unit test, quindi fare clic su OK.

  6. In Esplora soluzioni fare clic con il pulsante destro del mouse su TestApp, quindi scegliere Proprietà.

  7. Nella finestra Proprietà TestApp fare clic sulla scheda Web, in Usa Visual Studio Development Server fare clic su Porta specifica, quindi modificare il valore impostandolo su 7777.

  8. Premere F5 per l'esecuzione e il debug dell'applicazione creata. Se non vengono rilevati errori, il browser restituisce un progetto MVC vuoto.

    Tenere aperto Visual Studio 2010 per eseguire il passaggio successivo.

Passaggio 8 - Configurare i criteri di attendibilità tra ACS e l'applicazione relying party ASP.NET

Questa sezione descrive come integrare ACS con l'applicazione ASP.NET Relying Party creata nel passaggio precedente.

Per configurare i criteri di attendibilità tra ACS e l'applicazione relying party ASP.NET

  1. In Visual Studio 2010 fare clic con il pulsante destro del mouse su TestApp in Esplora soluzioni per TestApp, quindi scegliere Add STS Reference.

  2. Nella procedura guidata Federation Utility effettuare le seguenti operazioni:

    1. Nella pagina Welcome to the Federation Utility Wizard immettere l'URI dell'applicazione in Application URI, quindi fare clic su Next. In questa demo l'URI dell'applicazione è https://localhost:7777/.

      Nota

      La barra finale è importante perché corrisponde al valore immesso nel portale di gestione di ACS per l'applicazione relying party. Per altre informazioni, vedere Passaggio 4 : Aggiungere un'applicazione Relying Party.

    2. Viene visualizzato un avviso: ID 1007: l'applicazione non è ospitata in una connessione https sicura. Vuoi continuare? Per questa demo fare clic su .

      Nota

      In un ambiente di produzione l'avviso visualizzato relativo all'uso di SSL è valido e non deve essere ignorato.

    3. Nella pagina Servizio token di sicurezza selezionare Usa stS esistente, immettere l'URL dei metadati WS-Federation pubblicato da ACS e quindi fare clic su Avanti.

      Nota

      È possibile trovare il valore dell'URL dei metadati di WS-Federation nella pagina integrazione dell'applicazione del portale di gestione ACS. Per altre informazioni, vedere Passaggio 6 - Esaminare le informazioni di integrazione dell'applicazione.

    4. Nella pagina STS signing certificate chain validation error fare clic su Next.

    5. Nella pagina Security token encryption fare clic su Next.

    6. Nella pagina Offerto attestazioni fare clic su Avanti.

    7. Nella pagina Summary fare clic su Finish.

    Al termine della procedura guidata Federation Utility, viene aggiunto un riferimento all'assembly Microsoft.IdentityModel.dll e vengono scritti alcuni valori nel file Web.config per la configurazione di Windows Identity Foundation nell'applicazione Web ASP.NET MVC 2 (TestApp).

  3. Aprire Web.config e individuare l'elemento system.web principale. Potrebbe essere simile al seguente frammento:

    <system.web>
        <authorization>
          <deny users="?" />
        </authorization>
    

    Abilitare la convalida delle richieste modificando Web.config con l'aggiunta del seguente codice sotto l'elemento system.web principale:

        <!--set this value-->
        <httpRuntime requestValidationMode="2.0"/>
    
    

    Al termine dell'aggiornamento, il frammento di codice riportato in precedenza dovrà avere il seguente aspetto:

    
       <system.web>
        <!--set this value-->
        <httpRuntime requestValidationMode="2.0"/>
        <authorization>
        <deny users="?" />
        </authorization>
    

Passaggio 9 - Testare l'integrazione tra ACS e l'applicazione relying party ASP.NET

In questa sezione viene descritto come testare l'integrazione tra l'applicazione relying party e L'ACS.

Per eseguire i test dell'integrazione tra ACS e l'applicazione relying party ASP.NET

  1. Tenendo aperto Visual Studio 2010, premere F5 per avviare il debug dell'applicazione relying party ASP.NET.

    Se non vengono trovati errori, invece di aprire l'applicazione MVC predefinita, il browser viene reindirizzato a una pagina di individuazione dell'area di autenticazione home ospitata da ACS che chiede di scegliere un provider di identità.

  2. Selezionare Google.

    Verrà quindi caricata la pagina di accesso di Google.

  3. Immettere le credenziali di Google di test e accettare l'interfaccia utente di consenso visualizzata nel sito Web di Google.

    Il browser esegue quindi il post a ACS, ACS rilascia un token e pubblica tale token nel sito MVC.

Vedere anche

Concetti

Procedure di ACS