Uso Windows 2003 server, che ha un certificato ed è configurato per richiedere i certificati dei client per il sito Web. Ho seguito la procedura Microsoft per mappare i certificati dei client e per ricercarli al fine di sostituire quelli scaduti tra qu …
Uso Windows 2003 server, che ha un certificato ed
è configurato per richiedere i certificati dei client per il sito Web. Ho
seguito la procedura Microsoft per mappare i certificati dei client e per
ricercarli al fine di sostituire quelli scaduti tra quelli memorizzati. Ho
provato a spostare i certificati in differenti contenitori per far funzionare i
certificati dei client. Quando tento di accedere a un sito, ricevo l’errore
“client certificates required”. Se metto il flag su “accept client certificates”
posso collegarmi dal client, ma se seleziono “require client certificates” non
posso più connettermi. Ogni sito che visito mi dà una risposta differente: uno
visualizza il messaggio che ho bisogno di un certificato e l’altro mi informa
che devo usare uno dei certificati nella lista, ma la lista è vuota. Ho i
certificati per il client sulla mia workstation e ho persino provato
l’esportazione/importazione nel mio root store sicuro sul client. Sono sulla
stessa rete interna del server, il quale ha due NIC (per l’interno e per
l’esterno) e ottengo la stessa risposta sia che provi a collegarmi internamente
sia esternamente. Ho il medesimo problema con Windows 2000 e con Windows Xp.
Se sta usando Windows Server 2003, presupponiamo che
si stia anche avvalendo di Internet Information Service (IIS) release 6.00 che è
più sicuro della precedente versione. Il motivo per cui può collegarsi al server
dal client quando seleziona l’opzione “Accept client certificates” risiede nel fatto che il
suo server la lascia accedere alla risorsa, anche se non ha un certificato del
client valido.
Quando seleziona l’opzione
“Require client certificates”, il suo server le chiederà di vedere un certificato del
client prima del collegamento alla risorsa. Se non viene presentato un
certificato valido, l’accesso è negato.
Se sta mappando i
certificati dagli account degli utenti Windows, usi l’opzione “Enable client
certificate mapping”. Il
server confronterà i suoi certificati del client con quelli inviati dal browser
e se la mappatura risulta identica procede. Di conseguenza, se un utente ottiene
un nuovo certificato deve essere rimappato, anche se questo non modifica alcuna
informazione sull’utente.
Inoltre, alcuni certificati del client dovranno essere esportati al fine di
usare la funzionalità di mappatura one-to-one dell’IIS. Per esportare un
certificato del client al fine di avere il mapping one-to-one, apra Internet
Explorer, vada al menu dei tool, selezioni Internet Options e quindi la tab
Content.
Fatto ciò, selezioni i certificati che desidera e clicchi su
Export. In tal modo avvierà il Certificate Export Wizard.
Una volta che
questo processo è partito, è importante selezionare le seguenti opzioni:
“No, do not include any private keys in the export” e “Base64
Encoded X.509 (*.CER)”.
Il certificato esportato dovrà essere copiato in una posizione sicura sul
server Web in modo che possa essere mappato a un account utente sul server Web.
Potrebbe ricevere il messaggio di errore anche nel caso in cui il certificato
del cliente della Certificate Authority (CA) non sia stato installato. Il suo
server Web ha una lista di CA e stabilisce quali certificati il server può
accettare. Se il CA che ha emesso il certificato del client non è su questa
lista, il client non sarà autenticato.
Una nota finale: ha accennato che c’è più di un sito sul server e che ogni
sito ha bisogno del proprio certificato. Suggeriamo di controllare la validità
della data di emissione e di scadenza del certificato del client e di
controllare che non sia stato revocato.