Share via


Rinnovo autorità di certificazione

Servizi certificati supporta il rinnovo di un'autorità di certificazione (CA). Il rinnovo è il rilascio di un nuovo certificato per la CA per estendere la durata della CA oltre la data di fine del certificato originale. È possibile rinnovare una CA come attività nello snap-in MMC dell'autorità di certificazione o usando lo strumento Certutil.exe (con il comando -renewCert ).

Ogni rinnovo comporta un nuovo certificato CA; Tuttavia, l'amministratore può generare una nuova coppia di chiavi pubblica/privata o riutilizzare la coppia di chiavi pubblica/privata esistente per il certificato CA. Per coerenza e integrità, i certificati ca e gli elenchi di revoche di certificati rilasciati dalla CA prima del rinnovo saranno disponibili dopo il rinnovo della CA. Per renderli disponibili, Servizi certificati gestisce un indice di certificati CA, CCL e chiavi.

Gli indici e i nomi suffisso dei certificati CA e degli elenchi di controllo di accesso durante varie operazioni di rinnovo della CA sono i seguenti.

Operazione Indice certificato CA Suffisso del nome file del certificato CA CRL e indice chiave Suffisso CRL e nome contenitore chiave
Installazione ca originale 0 "" 0 ""
Rinnovo con nuova chiave 1 "(1)" 1 "(1)"
Rinnovo della chiave di riutilizzo 2 "(2)" 1 "(1)"
Rinnovo della chiave di riutilizzo 3 "(3)" 1 "(1)"
Rinnovo con nuova chiave 4 "(4)" 4 "(4)"
Rinnovo della chiave di riutilizzo 5 "(5)" 4 "(4)"
Rinnovo con nuova chiave 6 "(6)" 6 "(6)"
Rinnovo della chiave di riutilizzo 7 "(7)" 6 "(6)"

 

Quando viene installata una CA, l'indice del certificato è zero e il suffisso del certificato è "" (una stringa vuota). Ogni volta che il certificato viene rinnovato (se le chiavi vengono riutilizzate), l'indice del certificato viene incrementato di uno e il suffisso del nome del file di certificato diventa una stringa del modulo "(n)", dove n rappresenta il numero di volte in cui il certificato CA è stato rinnovato. Dopo il primo rinnovo, l'indice del certificato è 1 e il suffisso del nome del file di certificato è "(1)". Dopo il secondo rinnovo, l'indice del certificato è 2 e il suffisso del nome del file certificato è "(2)" e così via.

Anche se l'indice e il suffisso ca vengono incrementati di uno ogni volta che l'autorità di certificazione viene rinnovata, gli indici CRL e chiave e i suffissi del nome file vengono impostati sull'indice del certificato CA solo se il processo di rinnovo include una nuova coppia di chiavi pubblica/privata. In caso contrario, i valori di questi indici e suffissi rimangono invariati per l'ultimo indice. Durante il rinnovo, un amministratore specifica se viene generata una nuova coppia di chiavi o la coppia di chiavi esistente. Nello snap-in MMC dell'autorità di certificazione, un'opzione nell'interfaccia utente specifica una coppia di chiavi nuova o esistente. Nello strumento Certutil.exe il comando certutil -renewCert rinnova la CA con una nuova coppia di chiavi, mentre il comando certutil -renewCertRiusKeys rinnova la CA con la coppia di chiavi esistente.

L'indice CRL è direttamente collegato all'indice della chiave, impostato sull'indice del certificato CA solo quando viene usata una nuova coppia di chiavi per il rinnovo. Dopo il primo rinnovo (che ha usato una nuova coppia di chiavi), l'indice della CRL e della chiave è impostato su 1 e il suffisso del nome del contenitore CRL e chiave è "(1)". Dopo il secondo rinnovo, tuttavia, l'indice della CRL e della chiave rimane 1 e il suffisso del nome del contenitore CRL e chiave rimane anche "(1)".; questo avviene perché il secondo rinnovo ha usato la coppia di chiavi esistente e viene rilasciata una sola CRL per ogni coppia di chiavi CA.

È possibile recuperare i certificati ca indicizzati e gli elenchi di controllo di controllo chiamando il metodo GetCertificateProperty (sia nelle interfacce ICertServerExit che ICertServerPolicy). Quando si recuperano determinate proprietà correlate al certificato CA o al CRL, è possibile aggiungere l'indice in base zero del certificato CA ai nomi delle proprietà. Ad esempio, per recuperare l'indice CRL corrispondente al terzo certificato della CA, passare la proprietà "CRLIndex.2" a ICertServerPolicy::GetCertificateProperty; per la tabella, il valore della proprietà "CRLIndex.2" recuperato sarà 1. Una proprietà denominata "CertCount" può essere usata per determinare il numero di volte in cui è stato rilasciato un certificato CA.

Certificati CA e CCL contengono un'estensione che fornisce informazioni sul certificato e sull'indice delle chiavi. L'estensione è definita in Wincrypt.h come szOID_CERTSRV_CA_VERSION con un valore "1.3.6.1.4.1.311.21.1". I dati dell'estensione sono un valore DWORD (codificato come X509_INTEGER nell'estensione); i 16 bit bassi sono l'indice del certificato e i 16 bit elevati sono l'indice chiave.

L'installazione iniziale di una CA produce un indice di certificato pari a zero e un indice chiave pari a zero. Il rinnovo di un certificato CA causerà l'incremento dell'indice del certificato. Se la chiave viene riutilizzata nel rinnovo, l'indice della chiave sarà uguale all'indice chiave precedente. Se la chiave non viene riutilizzata, l'indice della chiave corrisponderà al nuovo indice del certificato.

ICertServerPolicy::GetCertificateProperty

ICertServerExit::GetCertificateProperty