DetailPage-MSS-KB

Microsoft Knowledge Base

Identificativo articolo: 315588 - Ultima modifica: lunedì 3 dicembre 2007 - Revisione: 4.6

 

In questa pagina

Sommario

Per le applicazioni Web altamente protette, ad esempio siti Internet banking, è possibile che si desidera implementare una soluzione più sicura per l'autenticazione utente più il combinazione di nome utente e password. È possibile utilizzare i certificati digitali lato client per verificare l'identità dell'utente. Inoltre, è possibile associare i certificati digitali client agli account di Windows sul server, se necessario.


Requisiti

Nell'elenco seguente sono indicati hardware, software, infrastruttura di rete e i service pack è necessario:
  • Server di Windows 2000 Service Pack 2
  • Microsoft Internet Explorer 6.0
  • Microsoft Visual Studio .NET
  • Servizi certificati di Microsoft (se è necessario generare certificati personalizzati)
In questo articolo si presume la conoscenza dei seguenti argomenti:
  • Sviluppo di ASP.NET con Visual Basic o Visual C#
  • Configurazione Internet Information Services (IIS)

Creare l'applicazione Web ASP.NET

In questa sezione, è possibile creare una semplice applicazione di ASP.NET. Nelle sezioni a seguire, si utilizzerà l'autenticazione dei certificati lato client per proteggere l'applicazione.
  1. Avviare Visual Studio .NET e creare un nuovo progetto applicazione Web ASP.NET denominato SecureSite.
  2. Trascinare un controllo Label dalla casella degli strumenti nel form Web WebForm1.aspx e quindi impostarne la proprietà ID per greetingLabel .
  3. Trascinare un secondo controllo Label WebForm1.aspx e quindi impostarne la proprietà ID per certDataLabel .
  4. Aggiungere il seguente codice alla routine dell'evento Page_Load :
    'Visual Basic
    Dim username As String
    userName = User.Identity.Name
    greetingLabel.Text = "Welcome " & userName
    Dim cert As HttpClientCertificate = Request.ClientCertificate
    If cert.IsPresent Then
    	'Get the Organization (O) field from the Subject section.
    	certDataLabel.Text = cert.Get("Subject O")
    Else
    	certDataLabel.Text = "No certificate was found."
    End If
    					
    //Visual C#
    string userName;
    userName = User.Identity.Name;
    greetingLabel.Text = "Welcome " + userName;
    HttpClientCertificate cert = Request.ClientCertificate;
    if (cert.IsPresent)
        certDataLabel.Text = cert.Get("SUBJECT O");
    else
        certDataLabel.Text="No certificate was found.";
    					
  5. Creare e salvare il progetto e quindi chiudere Visual Studio.
  6. Avviare Internet Explorer e quindi individuare la seguente pagina:
    http://localhost/SecureSite/WebForm1.aspx
    Si noti che la pagina Visualizza "Welcome" e "è stato trovato nessun certificato" messaggi. Si noti che la pagina non viene visualizzato un nome utente perché l'utente non è stato autenticato.
  7. Chiudere Internet Explorer.

Configurazione del Server Web per l'autenticazione basata su certificati

In questa sezione, è possibile configurare il progetto SecureSite per utilizzare i certificati per l'autenticazione. Per utilizzare i certificati del lato client, è necessario installare un certificato sul lato server. È possibile utilizzare un certificato server esistente da qualsiasi autorità di certificazione, oppure è possibile generare un certificato sul lato server tramite Servizi certificati Microsoft.


Per creare una richiesta di certificato del server

  1. Dal menu di avvio , scegliere programmi , Strumenti di amministrazione, quindi Gestione servizi Internet .
  2. Espandere il nodo del server, quindi sito Web predefinito .
  3. Nel menu azione , fare clic su Proprietà .
  4. Nella scheda di Protezione Directory fare clic su Certificato Server . Attenersi ai passaggi della procedura guidata:
    1. Fare clic su Avanti nella prima pagina della procedura guidata.
    2. Nella pagina Certificato Server , fare clic su Crea un nuovo certificato e quindi fare clic su Avanti .
    3. Nella pagina richiesta con invio immediato o posticipato fare clic su preparare la richiesta, per l'invio posticipato , quindi Avanti .
    4. Nella pagina nome e impostazioni di protezione , accettare le impostazioni predefinite e scegliere Avanti .
    5. Nella pagina Organization Information digitare MSDN per l'organizzazione, digitare Procedure per articoli per l'unità organizzativa e quindi fare clic su Avanti .
    6. Nella pagina Nome comune del sito , digitare localhost e quindi fare clic su Avanti .
    7. Nella pagina Informazioni geografici , digitare il paese, regione e città dettagli e quindi fare clic su Avanti .
    8. Nella pagina Nome File richiesta di certificato , accettare il nome di file predefinito (in genere c:\certreq.txt) e scegliere Avanti .
    9. Nella pagina Riepilogo File richiesta , verificare che tutti i dettagli siano corretti e quindi fare clic su Avanti .
    10. Fare clic su Fine per chiudere la procedura guidata.
  5. Aprire il file del certificato viene generato e quindi copiare l'intero contenuto del file di certificato negli Appunti.

Per inviare una richiesta di certificato del server

  1. Avviare Internet Explorer e quindi individuare la seguente pagina:
    http://localhost/CertSrv
    Nota : I servizi certificati di Microsoft deve essere installato.
  2. Attenersi ai passaggi della procedura guidata:
    1. Fare clic su richiedere un certificato e quindi fare clic su Avanti .
    2. Nella pagina Scegli tipo di certificato , fare clic su richiesta avanzata e quindi fare clic su Avanti .
    3. Nella pagina Richieste avanzate di certificati , fare clic su Invia una richiesta di certificato utilizzando un base64 codificata file PKCS # 10 e quindi fare clic su Avanti .
    4. Nella pagina Invia una richiesta salvata , fare clic nella casella richiesta di certificato codificato Base64 (PKCS # 10 o # 7) e quindi premere la combinazione di tasti CTRL+V per incollare la richiesta di certificato copiato negli Appunti precedenti. Fare clic su Invia .
  3. Chiudere Internet Explorer.

Per il numero di un certificato del server

  1. Dal menu di avvio , scegliere programmi , Strumenti di amministrazione, quindi Autorità di certificazione .
  2. Espandere il nodo per l'autorità di certificazione e quindi selezionare Richieste in sospeso .
  3. Selezionare la richiesta di certificato appena inviata. Dal menu azione , scegliere tutte le attività , quindi Invia .
  4. Verificare che il certificato nella cartella certificati emessi e quindi fare doppio clic sul certificato per la visualizzazione.
  5. Nella scheda Dettagli , fare clic su Copia su file . Salvare il certificato come certificato X.509 da C:\Servercert.cer di codificato base 64.
  6. Chiudere la finestra di dialogo Proprietà per il certificato.
  7. Chiudere lo strumento Autorità di certificazione.

Per installare un certificato del server

  1. Dal menu di avvio , scegliere programmi , Strumenti di amministrazione, quindi Gestione servizi Internet .
  2. Espandere il nodo del server, quindi sito Web predefinito .
  3. Nel menu azione , fare clic su Proprietà .
  4. Nella scheda di Protezione Directory fare clic su Certificato Server . Attenersi ai passaggi della procedura guidata:
    1. Fare clic su Avanti nella prima pagina della procedura guidata.
    2. Fare clic su Elabora la richiesta in sospeso per installare il certificato e quindi fare clic su Avanti .
    3. Individuare il file di certificato C:\Servercert.cer salvata in precedenza. Fare clic due volte su Avanti , quindi scegliere Fine .
  5. Fare clic su OK per chiudere la finestra di dialogo Proprietà .

Configurazione sito SecureSite per SSL e certificati del lato client

  1. In Gestione servizi Internet, selezionare il Web secondario SecureSite e visualizzarne le proprietà.
  2. Attenersi ai passaggi della procedura guidata:
    1. Nella scheda Protezione Directory , fare clic su Modifica nella sezione comunicazioni protette .
    2. Selezionare la casella di controllo Richiedi un canale protetto (SSL) . Questo per assicurare che comunicazioni per questo Web secondario sono crittografate.
    3. Selezionare la casella di controllo Richiedi certificati client . In questo modo che il sito solo può essere visualizzato dagli utenti che hanno installato un certificato client.
    4. Selezionare la casella di controllo Attiva mapping di certificato del client . Questo è utilizzato per il mapping dei certificati client agli account utente di Windows.
    5. Fare clic su Modifica . Si noti che è possibile associare ogni certificato a un singolo account di Windows oppure è possibile associare più certificati allo stesso account di Windows.
    6. Nella scheda molti a 1 , fare clic su Aggiungi per aggiungere una regola di mapping. Denominare la regola di Mapping regola e quindi fare clic su Avanti .
    7. In questo fare clic su Nuovo per creare una nuova regola in cui il campo di sub O (organizzazione) della sezione oggetto del certificato ha i criteri "MSDN". Scegliere OK per applicare il mapping agli utenti i cui certificati contengono un attributo di organizzazione di "MSDN". In un ambiente di produzione, la regola di mapping è più restrittiva e spesso convalida l'emittente del certificato, nonché l'oggetto. Fare clic su Avanti .
    8. Nella pagina mapping , selezionare accetta il certificato di autenticazione di accesso . Scegliere l'opzione Sfoglia per selezionare l'account di Windows si desidera associare agli utenti MSDN. Per questo esempio, utilizzare l'account Administrator. (In un'applicazione reale, viene creato un account di Windows dedicato con privilegi limitati.) Assicurarsi di digitare la password corretta.
    9. Fare clic su Fine e quindi confermare la password.
  3. Fare clic su OK per chiudere la finestra di dialogo Mapping Account .
  4. Fare clic su OK per chiudere la finestra di dialogo Comunicazioni protette . Se viene chiesto di applicare le impostazioni a figlio file e cartelle, scegliere Seleziona tutto e quindi fare clic su OK .
  5. Fare clic su OK per chiudere la finestra di dialogo Proprietà SecureSite .

Per verificare l'autenticazione basata su certificati

  1. Avviare Internet Explorer e quindi individuare la seguente pagina:
    https://localhost/SecureSite/WebForm1.aspx
    Si noti che è necessario utilizzare il protocollo protetto https.
  2. Verificare che viene visualizzato un messaggio che la pagina richiede un certificato client.
  3. Chiudere Internet Explorer.

Installare un certificato client

In questa sezione, è necessario installare un certificato sul lato client. È possibile utilizzare un certificato da qualsiasi autorità di certificazione, oppure è possibile utilizzare Servizi certificati Microsoft per generare il proprio certificato.


Per richiedere un certificato sul lato client con

  1. Avviare Internet Explorer e quindi individuare la seguente pagina:
    http://localhost/CertSrv
  2. Attenersi ai passaggi della procedura guidata:
    1. Fare clic su richiedere un certificato e quindi fare clic su Avanti .
    2. Nella pagina Scegli tipo di certificato , fare clic su Certificato Browser Web e quindi fare clic su Avanti .
    3. Digitare le informazioni necessarie. Assicurarsi che nella casella di testo società si digitare MSDN .
    4. Fare clic su Invia per completare la richiesta.
  3. Chiudere Internet Explorer.

Per il numero di un certificato del lato client

  1. Avviare lo strumento di autorità di certificazione dal gruppo di programmi Strumenti di amministrazione .
  2. Espandere il nodo per l'autorità di certificazione e quindi selezionare Richieste in sospeso .
  3. Selezionare la richiesta di certificato appena inviata. Dal menu azione , scegliere tutte le attività , quindi Invia .
  4. Verificare che il certificato nella cartella certificati emessi e quindi fare doppio clic sul certificato per la visualizzazione.
  5. Nella scheda Dettagli , fare clic su Copia su file . Salvare il certificato come certificato X.509 da C:\Clientcert.cer di codificato base 64.
  6. Chiudere la finestra di dialogo Proprietà per il certificato.
  7. Chiudere lo strumento Autorità di certificazione.

Per installare un certificato del lato client

  1. Aprire Esplora risorse e fare doppio clic su Clientcert.cer per visualizzare il file del certificato.
  2. Seguire la procedura Importazione guidata certificati:
    1. Nella prima pagina della procedura guidata, fare clic su Installa certificato e scegliere Avanti .
    2. Selezionare la casella di controllo Selezionare automaticamente l'archivio di certificati in base al tipo di certificato e quindi fare clic su Avanti .
    3. Fare clic su Fine per completare la procedura guidata.
  3. Chiudere la finestra di messaggio di conferma e quindi fare clic su OK per chiudere il certificato.

Verifica del funzionamento

In questa sezione, è possibile verificare che le applicazioni client con i certificati che specificano "MSDN" come il può società visualizzare il sito SecureSite. Gli utenti vengono mappati all'account specificato nella regola di mapping.
  1. Avviare Internet Explorer e quindi individuare la seguente pagina:
    https://localhost/SecureSite/WebForm1.aspx
  2. Assicurarsi che sia selezionata l'opzione:
    • Verrà visualizzata la pagina Web.
    • L'account di Windows appropriato viene utilizzato.
    • L'organizzazione "MSDN" viene letto dal certificato.

Riferimenti

Per ulteriori informazioni sull'utilizzo di SSL (Secure Sockets Layer) per proteggere un sito Web, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
298805  (http://support.microsoft.com/kb/298805/EN-US/ ) HOW TO: Attivare SSL per tutti i clienti che interagiscono con il sito Web in Internet Information Services

Le informazioni in questo articolo si applicano a:
  • Microsoft ASP.NET 1.0
  • Microsoft Internet Information Services 5.0
  • Microsoft ASP.NET 1.1
  • Microsoft Internet Information Services 6.0
Chiavi: 
kbmt kbhowtomaster kbsecurity KB315588 KbMtit
Traduzione automatica articoliTraduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell’articolo: 315588  (http://support.microsoft.com/kb/315588/en-us/ )
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.
Condividi
Altre opzioni per il supporto
Forum del supporto di Microsoft Community
Contattaci direttamente
Ricerca di un partner certificato Microsoft
Microsoft Store