Esporta (0) Stampa
Espandi tutto
Espandi Riduci a icona

Procedura: Creare mediante ACS la prima applicazione ASP.NET in grado di riconoscere attestazioni

Pubblicato: aprile 2011

Aggiornamento: giugno 2014

Si applica a: Azure

ImportantImportante
A partire dal 19 maggio 2014 i nuovi spazi dei nomi ACS non potranno più usare Google come provider di identità. Gli spazi dei nomi ACS registrati prima di tale data potranno continuare a usare Google come provider di identità. Per altre informazioni, vedere Note sulla versione. Questa esercitazione può essere completata usando un altro provider di identità, ad esempio Facebook.

  • Microsoft Azure Active Directory Access Control (anche noto come Access Control Service o ACS)

Questo argomento descrive lo scenario di integrazione di ACS con un'applicazione relying party ASP.NET. Attraverso l'integrazione dell'applicazione Web con ACS, le funzionalità di autenticazione e autorizzazione vengono separate dal codice. In altri termini, il meccanismo di autenticazione e autorizzazione degli utenti per l'accesso all'applicazione Web viene fornito da ACS. Per altre informazioni, vedere Web Applications and ACS.

In questo scenario operativo ACS esegue l'autenticazione degli utenti con un'identità Google in un'applicazione relying party ASP.NET di test.

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

Il portale di gestione ACS consente di configurare lo Spazio dei nomi di Access Control mediante l'aggiunta di provider di identità, la configurazione di applicazioni relying party, la creazione di regole e gruppi di regole e la definizione delle credenziali considerate attendibili dall'applicazione relying party.

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

  2. Per gestire uno spazio dei nomi di Access Control, selezionare lo spazio dei nomi, quindi fare clic su Gestisci. Altrimenti, fare clic su Spazi dei nomi di Access Control, selezionare lo spazio dei nomi, quindi fare clic su Gestisci.

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à.

  1. Nel portale di gestione ACS fare clic su Identity Providers nell'albero visualizzato sul lato sinistro. In alternativa, fare clic sul collegamento Identity Providers disponibile nella sezione Getting Started.

  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.

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

  1. Nel portale di gestione ACS fare clic su Relying Party Applications nell'albero visualizzato sul lato sinistro. In alternativa, fare clic sul collegamento Relying Party Applications disponibile nella sezione Getting Started.

  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.

    • In Realm digitare l'URI valido per il token di sicurezza rilasciato da ACS. Per questo esercizio, digitare http://localhost:7777/.

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

    • In Error URL (optional) immettere l'URL di destinazione di ACS in caso di errore durante l'accesso. Per questo esercizio, lasciare vuoto questo campo.

    • In Token format selezionare il formato di token che deve essere usato da ACS per l'invio dei token di sicurezza all'applicazione relying party. Per questo esercizio, selezionare SAML 2.0. Per altre informazioni sui token e sui relativi formati, vedere Formati di token supportati in ACS e la sezione relativa al formato del token in Applicazioni relying party.

    • In Token encryption policy selezionare i criteri di crittografia per i token rilasciati da ACS per l'applicazione relying party. Per questo esercizio, accettare il valore predefinito None. Per altre informazioni sui criteri di crittografia dei token, vedere la sezione specifica in 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 la sezione "Token lifetime" 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 selezionate (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 Token Signing Settings scegliere se firmare i token SAML con il certificato dello Spazio dei nomi di Access Control o con un certificato personalizzato specifico dell'applicazione. Per questo esercizio, accettare il valore predefinito Use service namespace certificate (standard). Per altre informazioni sulla firma dei token, vedere la sezione "Token signing" in Applicazioni relying party.

  4. Fare clic su Salva.

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.

  1. Nella home page del portale di gestione ACS fare clic su Rule Groups nell'albero visualizzato sul lato sinistro. In alternativa, fare clic sul collegamento Rule Groups disponibile nella sezione Getting Started.

  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 Generate Rules: Default Rule Group for TestApp accettare i provider di identità selezionati per impostazione predefinita (in questo esercizio, Google e Windows Live ID), quindi fare clic sul pulsante Generate.

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

Tutte le informazioni e il codice necessari per modificare l'applicazione relying party per l'uso con ACS sono disponibili nella pagina Application Integration del portale di gestione ACS.

  • Nella home page del portale di gestione ACS fare clic su Application Integration nell'albero visualizzato sul lato sinistro. In alternativa, fare clic sul collegamento Application Integration disponibile nella sezione Getting Started.

    Gli URI di ACS visualizzati nella pagina Application Integration sono univoci per lo Spazio dei nomi di Access Control.

    Per questo esercizio, è consigliabile tenere aperta questa pagina per poter eseguire i passaggi rimanenti con la massima rapidità.

Questa sezione descrive come creare un'applicazione relying party ASP.NET da integrare successivamente con ACS.

  1. Per eseguire Visual Studio 2010, fare clic sul pulsante Start, scegliere Esegui, digitare il seguente testo, 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.

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

  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. Per questa dimostrazione, l'URI dell'applicazione è http://localhost:7777/.

      noteNota
      La barra finale è importante perché assicura la corrispondenza con il valore immesso nel portale di gestione ACS per l'applicazione relying party. Per altre informazioni, vedere Passaggio 4 - Aggiungere un'applicazione relying party.

    2. Verrà visualizzato il seguente messaggio: ID 1007: The Application is not hosted on a secure https connection. Do you wish to continue? Per questa dimostrazione, fare clic su Yes.

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

    3. Nella pagina Security Token Service selezionare Use Existing STS, immettere l'URL dei metadati WS-Federation pubblicato da ACS, quindi fare clic su Next.

      noteNota
      Il valore dell'URL dei metadati WS-Federation è disponibile nella pagina Application Integration del portale di gestione ACS. Per altre informazioni, vedere Passaggio 6 - Rivedere 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 Offered claims fare clic su Next.

    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>
    

Questa sezione descrive come eseguire i test dell'integrazione tra ACS e l'applicazione relying party.

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

    Se non vengono rilevati errori, il browser, anziché procedere all'apertura dell'applicazione MVC predefinita, viene reindirizzato alla pagina Home Realm Discovery ospitata da ACS. In questa pagina viene chiesto all'utente 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.

    Verrà quindi eseguito il postback a ACS, ACS rilascerà un token e quest'ultimo verrà inviato al sito MVC.

Vedere anche

Concetti

Procedure di ACS

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft