Attestazione chiave TPM

Si applica a: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012

Autore: Justin Turner, Senior Support Escalation Engineer del gruppo Windows

Nota

Questo contenuto è stato redatto da un ingegnere del Supporto tecnico Microsoft ed è destinato ad amministratori esperti e architetti di sistemi che desiderano una spiegazione tecnica delle funzionalità e delle soluzioni relative a Windows Server 2012 R2 più approfondita rispetto agli argomenti solitamente disponibili su TechNet. Non è stato tuttavia sottoposto agli stessi passaggi redazionali e, di conseguenza, per alcune lingue potrebbe essere meno accurato della documentazione che si trova in genere su TechNet.

Panoramica

Mentre il supporto per le chiavi protette da TPM esistente dal Windows 8, non vi sono alcun meccanismo per le CA a livello di crittografia attestare che la chiave privata del certificato richiedente è effettivamente protetto da un modulo TPM (Trusted Platform). Questo aggiornamento consente a un'autorità di certificazione per eseguire tale attestazione e per riflettere tale attestazione nel certificato emesso.

Nota

Questo articolo si presuppone che il lettore abbia familiarità con il concetto di modello certificato (per riferimento, vedere modelli di certificato). Si presuppone inoltre che il lettore abbia familiarità con le procedure per configurare le CA dell'organizzazione per rilasciare certificati basati su modelli di certificato (per riferimento, vedere elenco di controllo: configurare le CA di rilascio e gestione certificati).

Terminologia

Termine Definizione
VERIFICA DELL'AUTENTICITÀ Chiave di verifica dell'autenticità. Si tratta di una chiave asimmetrica contenuta all'interno del TPM (introdotto in fase di produzione). La verifica dell'AUTENTICITÀ è univoco per ogni TPM e possibile identificarlo. La verifica dell'AUTENTICITÀ non può essere modificata o rimossa.
EKpub Fa riferimento alla chiave pubblica della verifica dell'AUTENTICITÀ.
EKPriv Fa riferimento alla chiave privata della verifica dell'AUTENTICITÀ.
EKCert Certificato di verifica dell'AUTENTICITÀ. Certificato emesso dal produttore TPM per EKPub. TPM non tutti sono EKCert.
TPM Trusted Platform Module. Un TPM è progettato per fornire funzioni basate su hardware, relative alla sicurezza. Un chip TPM è un livello di crittografia-processore protetto che è progettato per eseguire le operazioni di crittografia. Il chip include diversi meccanismi di sicurezza fisica per renderlo di manomissione e di software dannoso è in grado di alterare le funzioni di protezione del TPM.

Background

A partire da Windows 8, un modulo TPM (Trusted Platform) può essere utilizzato per proteggere la chiave privata del certificato. Il Microsoft Platform Crypto Provider di archiviazione Provider chiavi (KSP) abilita questa funzionalità. Sono presenti due problemi con l'implementazione:

  • Non vi è alcuna garanzia che una chiave sia effettivamente protetta da un TPM (un utente può facilmente effettuare lo spoofing KSP di software come un KSP TPM con credenziali di amministratore locale).

  • Non è stato possibile limitare l'elenco dei moduli TPM che sono autorizzati a proteggere i certificati rilasciati dall’azienda (nel caso in cui l'amministratore dell'infrastruttura PKI desideri controllare i tipi di dispositivi che possono essere utilizzati per ottenere i certificati nell'ambiente).

Attestazione chiave TPM

Attestazione chiave TPM è la possibilità della persona giuridica che richiede un certificato di crittografia dimostrare a un'autorità di certificazione che la chiave RSA nella richiesta di certificato è protetta da "un" o "il" TPM che l'autorità di certificazione considera attendibile. Il modello di trust TPM verrà approfondito nella sezione Cenni preliminari sulla distribuzione di questo articolo.

Perché è importante attestazione chiave TPM?

Un certificato utente con una chiave attestata TPM garantisce maggiore sicurezza, supportata da esportabilità, anti-hammering, e isolamento delle chiavi fornite dal TPM.

Grazie all’attestazione chiave TPM è ora possibile un nuovo paradigma di gestione: un amministratore può definire il set di dispositivi utilizzati dagli utenti per accedere alle risorse aziendali (ad esempio, VPN o punto di accesso wireless) e dispone di forti garanzie che nessun altro dispositivo possa essere utilizzato per accedervi. Questo nuovo paradigma di controllo dell’accesso è forte perché è legato a un'identità utente associata all'hardware, che è più robusta di una credenziale basata su software.

Come funziona l'attestazione chiave TPM?

In generale, un’attestazione chiave TPM si basa sulle aree seguenti:

  1. Ogni TPM viene fornito con una chiave asimmetrica univoca, denominata Verifica dell'autenticità della chiave (EK), masterizzata dal produttore. Si fa riferimento alla parte pubblica di questa chiave come EKPub e alla chiave privata associata come EKPriv. Alcuni chip TPM dispone anche di un certificato di verifica dell'AUTENTICITÀ rilasciato dal produttore per il EKPub. Si fa riferimento a questo certificato come EKCert.

  2. Un'autorità di certificazione stabilisce l’attendibilità del TPM mediante EKPub o EKCert.

  3. Un utente tenta l'autorità di certificazione che la chiave RSA per cui viene richiesto il certificato di crittografia è correlata al EKPub e che l'utente proprietario di EKpriv.

  4. L'autorità di certificazione emette un certificato con un criterio di rilascio speciale OID per indicare che la chiave viene attestata ora possono essere protette da un TPM.

Cenni preliminari sulla distribuzione

In questa distribuzione, si presuppone che sia configurata una CA dell'organizzazione di Windows Server 2012 R2. Inoltre, i client (Windows 8.1) sono configurati per registrare in tale CA dell'organizzazione utilizzando modelli di certificato.

Esistono tre passaggi per la distribuzione di attestazione chiave TPM:

  1. Pianificare il modello di trust TPM: il primo passaggio consiste nel decidere quale modello di protezione TPM da utilizzare. Sono disponibili 3 modi per eseguire questa operazione:

    • Attendibilità in base alle credenziali dell'utente: Considera attendibile la CA dell'organizzazione l'EKPub fornito dall'utente come parte della richiesta di certificato e viene eseguita alcuna convalida diverso da credenziali di dominio dell'utente.

    • Attendibilità in base a EKCert: la CA dell'organizzazione consente di convalidare la catena di EKCert che viene fornita come parte della richiesta di certificato in un elenco di gestite dall'amministratore di accettabile catene di certificati di verifica dell'AUTENTICITÀ. Queste catene accettabili sono definite per produttore e sono espresse tramite due archivi di certificati personalizzati nella CA emittente, uno per intermedio e uno per il certificato CA radice. Questa modalità di attendibilità significa che tutti TPM di un determinato produttore sono attendibili. Si noti che in questa modalità, TPM in uso nell'ambiente deve contenere EKCerts.

    • Attendibilità in base a EKPub: convalida la CA dell'organizzazione che di EKPub fornito come parte della richiesta del certificato viene visualizzato un elenco gestite dall'amministratore di consentito EKPubs. Questo elenco viene espresso come una directory di file in cui il nome di ogni file in questa directory è l'hash SHA-2 EKPub consentiti. Questa opzione offre il livello di garanzia più alto, ma richiede più lavoro amministrativo, perché ogni dispositivo viene identificato singolarmente. In questo modello di trust, sono consentiti solo i dispositivi che hanno avuto la EKPub TPM aggiunta all'elenco consentito di EKPub per registrare un certificato attestato TPM.

    In base al metodo utilizzato, la CA applicherà criteri OID di rilascio diversi nel certificato emesso. Per ulteriori informazioni sui criteri OID di rilascio, vedere la tabella OID dei criteri di rilascio nella sezione Configurare un modello di certificato in questo articolo.

    Si noti che è possibile scegliere una combinazione di modelli di protezione TPM attendibile. In questo caso, l'autorità di certificazione accetterà qualsiasi dei metodi attestazione e il criterio di rilascio OID rifletterà tutti i metodi di un'attestazione che ha avuto esito positivo.

  2. Configurare il modello di certificato: la configurazione del modello di certificato è descritto nella sezione Informazioni dettagliate sulla distribuzione in questo articolo. Questo articolo non illustra il modo in cui questo modello di certificato viene assegnato alla CA globale (enterprise) o come viene concesso l'accesso alla registrazione a un gruppo di utenti. Per ulteriori informazioni, vedere elenco di controllo: configurare le CA di rilascio e gestione certificati.

  3. Configurare la CA per il modello di attendibilità TPM

    1. Attendibilità in base alle credenziali dell'utente: non è richiesta alcuna configurazione specifica.

    2. Attendibilità in base a EKCert: l'amministratore deve ottenere i certificati della catena EKCert dai produttori TPM e importarle in due nuovi archivi certificati, creati dall’amministratore, nella CA che esegue l’attestazione chiave TPM. Per ulteriori informazioni, vedere la sezione Configurazione CA di questo articolo.

    3. Attendibilità in base a EKPub: l'amministratore deve ottenere EKPub per ogni dispositivo che richiedono certificati attestata TPM e aggiungerli all'elenco di EKPubs consentiti. Per ulteriori informazioni, vedere la sezione Configurazione CA di questo articolo.

    Nota

    • Questa funzionalità richiede Windows 8.1/Windows Server 2012 R2.
    • Attestazione chiave TPM per provider di archiviazione di terze parti smart card non è supportata. È necessario utilizzare Microsoft piattaforma Crypto Provider KSP.
    • Attestazione chiave TPM funziona solo per le chiavi RSA.
    • Attestazione chiave TPM non è supportata per una CA autonoma.
    • Attestazione chiave TPM non supporta l'elaborazione di certificati non permanenti.

Dettagli della distribuzione

Configurare un modello di certificato

Per configurare il modello di certificato per l'attestazione chiave TPM, eseguire i passaggi di configurazione seguenti:

  1. Compatibilità scheda

    Nel le impostazioni di compatibilità sezione:

    • Verificare Windows Server 2012 R2 è selezionata per il autorità di certificazione.

    • Verificare Windows 8.1 / Windows Server 2012 R2 è selezionata per il destinatario certificato.

    Screenshot that highlights the Certificate recipient list.

  2. Crittografia scheda

    Verificare Provider di archiviazione chiavi è selezionata per il categoria Provider e RSA è selezionata per il nome dell'algoritmo. Verificare che la voce Le richieste devono utilizzare uno dei provider seguenti sia selezionata, così come l’opzione Provider di crittografia della piattaforma Microsoft in Provider.

    Screenshot that highlights the Provider Category and Algorithm name lists.

  3. Attestazione chiave scheda

    Si tratta di una nuova scheda per Windows Server 2012 R2:

    Screenshot that shows the Key Attestation tab.

    Scegliere una modalità di attestazione dalle tre opzioni possibili.

    Screenshot that shows the attestation modes.

    • None: implica che non deve essere utilizzata attestazione chiave

    • Obbligatorio, se il client è in grado di: acconsentire che gli utenti di un dispositivo che non supporta l'attestazione della chiave TPM proseguano la registrazione per tale certificato. Gli utenti possono eseguire un'attestazione verranno distinto con un criterio di rilascio speciale OID. Alcuni dispositivi potrebbero non essere in grado di eseguire l'attestazione a causa di un TPM precedente che non supporta l'attestazione della chiave o che il dispositivo non disponga affatto di un TPM.

    • Richiesta: il client deve eseguire l’attestazione chiave TPM; in caso contrario, la richiesta di certificato avrà esito negativo.

    Scegliere il modello di protezione TPM. Anche in questo caso sono disponibili tre opzioni:

    Screenshot that shows the TPM trust models.

    • Le credenziali dell'utente: consentire a un utente che esegue l'autenticazione garantire un TPM valido specificando le credenziali di dominio.

    • Certificato di verifica dell'autenticità: il EKCert del dispositivo deve convalidare mediante certificati CA intermedi a TPM gestite dall'amministratore per un certificato CA radice gestite dall'amministratore. Se si sceglie questa opzione, è necessario configurare gli archivi certificati EKCA ed EKRoot nella CA emittente come descritto nella sezione Configurazione CA di questo articolo.

    • Chiave di verifica dell'autenticità: l’EKPub del dispositivo deve essere visualizzato in un elenco PKI gestito dall'amministratore. Questa opzione offre il massimo livello di garanzia, ma richiede uno sforzo amministrativo. Se si sceglie tale opzione, è necessario impostare un elenco di EKPub nella CA emittente come descritto nella sezione Configurazione CA di questo articolo.

    Infine, decidere quali criteri di rilascio per visualizzare il certificato emesso. Per impostazione predefinita, ogni tipo di applicazione ha un identificatore di oggetto associato (OID) che verrà inserito nel certificato se passa tale tipo di imposizione, come descritto nella tabella seguente. Si noti che è possibile scegliere una combinazione di metodi di imposizione. In questo caso, l'autorità di certificazione accetterà uno dei metodi di attestazione e l’OID di criteri di rilascio rifletterà tutti i metodi di un'attestazione che hanno avuto esito positivo.

    OID di criteri di rilascio

    OID Tipo di attestazione chiave Descrizione Livello di garanzia
    1.3.6.1.4.1.311.21.30 VERIFICA DELL'AUTENTICITÀ "Verifica dell'AUTENTICITÀ Verified": per elenco gestite dall'amministratore di verifica dell'AUTENTICITÀ Alta
    1.3.6.1.4.1.311.21.31 Certificato di verifica dell'autenticità "Verifica dell'AUTENTICITÀ certificato Verified": quando viene convalidata la catena di certificati verifica dell'AUTENTICITÀ Medio
    1.3.6.1.4.1.311.21.32 Credenziali dell'utente "Verifica dell'AUTENTICITÀ Trusted in uso": per la verifica dell'AUTENTICITÀ con attestazione dell'utente Bassa

    L'OID verrà inserito nel certificato emesso se includere criteri di rilascio è selezionata (configurazione predefinita).

    TPM Key attestation

    Suggerimento

    Un potenziale uso dell'OID presente nel certificato consiste nel limitare l'accesso alla rete VPN o wireless a determinati dispositivi. Ad esempio, i criteri di accesso potrebbero consentire la connessione (o l'accesso a una VLAN diversa) se OID 1.3.6.1.4.1.311.21.30 è presente nel certificato. Ciò consente di limitare l'accesso ai dispositivi cui EK TPM è presente nell'elenco EKPUB.

Configurazione della CA

  1. Configurare archivi certificati EKCA e EKROOT in una CA emittente

    Se si sceglie certificato di verifica dell'autenticità per le impostazioni del modello, effettuare i passaggi di configurazione seguenti:

    1. Utilizzare Windows PowerShell per creare due nuovi archivi certificati nel server di autorità di (certificazione CA) di certificazione che eseguirà l'attestazione chiave TPM.

    2. Ottenere i certificati CA intermedi e radice dai produttori che si desidera consentire nell'ambiente aziendale. Tali certificati devono essere importati negli archivi certificati creati in precedenza (EKCA e EKROOT) in base alle esigenze.

    Il seguente script Windows PowerShell esegue entrambe queste operazioni. Nell'esempio seguente, il produttore del TPM Fabrikam ha fornito un certificato radice FabrikamRoot.cer e un certificato della CA emittente Fabrikamca.cer.

    PS C:>\cd cert:
    PS Cert:\>cd .\\LocalMachine
    PS Cert:\LocalMachine> new-item EKROOT
    PS Cert:\ LocalMachine> new-item EKCA
    PS Cert:\EKCA\copy FabrikamCa.cer .\EKCA
    PS Cert:\EKROOT\copy FabrikamRoot.cer .\EKROOT
    
  2. Elenco EKPUB di installazione se si utilizza il tipo di attestazione di verifica dell'AUTENTICITÀ

    Se si sceglie Chiave di verifica per le impostazioni del modello, i successivi passaggi di configurazione sono per creare e configurare una cartella nella CA emittente, contenente i file a 0 byte, ognuno denominato per l'hash SHA-2 di un EK consentito. Questa cartella funge da "allowlist" di dispositivi autorizzati a ottenere certificati con attestazione della chiave TPM. Poiché è necessario aggiungere manualmente il EKPUB per ogni dispositivo che richiede un certificato attested, fornisce dell'azienda con una garanzia dei dispositivi autorizzati per ottenere i certificati di attestata chiave TPM. La configurazione di un'autorità di certificazione per questa modalità richiede due passaggi:

    1. Creare la voce del Registro di sistema EndorsementKeyListDirectories: utilizzare lo strumento da riga di comando Certutil per configurare i percorsi delle cartelle in cui gli EKpub attendibili sono definiti come descritto nella tabella seguente.

      Operation Sintassi del comando
      Aggiungere percorsi di cartelle certutil.exe - setreg CA\EndorsementKeyListDirectories +"<cartella>"
      Rimuovere i percorsi delle cartelle certutil.exe - setreg CA\EndorsementKeyListDirectories -"<cartella>"

      EndorsementKeyListDirectories nel comando certutil è un'impostazione del Registro di sistema come descritto nella tabella seguente.

      Nome valore Tipo Dati
      EndorsementKeyListDirectories REG_MULTI_SZ <Percorso LOCALE o UNC per gli elenchi consentiti EKPUB>

      Esempio

      \\blueCA.contoso.com\ekpub

      \\bluecluster1.contoso.com\ekpub

      D:\ekpub

      HKLM\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\<CA Sanitized Name>

      EndorsementKeyListDirectories conterrà un elenco di percorsi UNC o locale di file, ognuno dei quali punta a una cartella di Windows alla quale l'autorità di certificazione ha accesso in lettura. Ogni cartella può contenere zero o più consentire le voci dell'elenco, in cui ogni voce è un file con un nome di SHA-2 hash di un EKpub attendibile, con nessuna estensione di file. Creare o modificare la configurazione della chiave del Registro di sistema richiede il riavvio della CA, proprio come le impostazioni di configurazione del Registro di sistema delle CA esistenti. Tuttavia, le modifiche alle impostazioni della configurazione avranno effetto immediato e non richiederà il riavvio della CA.

      Importante

      Proteggere le cartelle nell'elenco da eventuali manomissioni e accessi non autorizzati tramite la configurazione delle autorizzazioni in modo che solo gli amministratori autorizzati lettura e l'accesso in scrittura. L'account computer della CA richiede accesso in sola lettura.

    2. Popolare l'elenco EKPUB: utilizzare il seguente cmdlet Windows PowerShell per ottenere l'hash della chiave pubblica di EK il TPM utilizzando Windows PowerShell su ogni dispositivo e quindi inviare questa pubblico chiave hash per l'autorità di certificazione e archiviarlo nella cartella EKPubList.

      PS C:>\$a=Get-TpmEndorsementKeyInfo -hashalgorithm sha256
      PS C:>$b=new-item $a.PublicKeyHash -ItemType file
      

Risoluzione dei problemi

Attestazione chiave campi non sono disponibili in un modello di certificato

I campi chiave attestazione non sono disponibili se le impostazioni del modello non soddisfano i requisiti per l'attestazione. Cause comuni sono:

  1. Le impostazioni di compatibilità non sono configurate correttamente. Assicurarsi che siano configurate come indicato di seguito:

    1. Autorità di certificazione: Windows Server 2012 R2

    2. Destinatario del certificato: Windows 8.1 e Windows Server 2012 R2

  2. Le impostazioni di crittografia non sono configurate correttamente. Assicurarsi che siano configurate come indicato di seguito:

    1. Categoria provider: Provider di archiviazione chiavi

    2. Nome dell'algoritmo: RSA

    3. Provider: del Provider di crittografia della piattaforma Microsoft

  3. Le impostazioni di gestione delle richieste non sono configurate correttamente. Assicurarsi che siano configurate come indicato di seguito:

    1. Il Rendi la chiave privata esportabile opzione non deve essere selezionato.

    2. Il Archivia chiave privata di crittografia del soggetto opzione non deve essere selezionato.

Verifica del dispositivo TPM per l'attestazione

Utilizzare il cmdlet Windows PowerShell, Conferma CAEndorsementKeyInfo, per verificare che un determinato dispositivo TPM sia attendibile per l'attestazione dalle autorità di certificazione. Sono disponibili due opzioni: uno per la verifica di EKCert e l'altro per la verifica di un EKPub. Il cmdlet sia eseguito localmente su una CA o in remoto CAs usando la comunicazione remota di Windows PowerShell.

  1. Per la verifica dell'attendibilità in un EKPub, eseguire i due passaggi seguenti:

    1. Estrarre il EKPub dal computer client: EKPub il può essere estratto da un computer client tramite Get-TpmEndorsementKeyInfo. Da un prompt dei comandi con privilegi elevati, eseguire le operazioni seguenti:

      PS C:>\$a=Get-TpmEndorsementKeyInfo -hashalgorithm sha256
      
    2. Verificare i trust in un EKCert in un computer della CA: copiare la stringa estratta (l'hash SHA-2 di EKPub) al server (ad esempio, tramite posta elettronica) e passarla al cmdlet Confirm-CAEndorsementKeyInfo. Si noti che questo parametro deve essere di 64 caratteri.

      Confirm-CAEndorsementKeyInfo [-PublicKeyHash] <string>
      
  2. Per la verifica dell'attendibilità in un EKCert, eseguire i due passaggi seguenti:

    1. Estrarre il EKCert dal computer client: EKCert il può essere estratto da un computer client tramite Get-TpmEndorsementKeyInfo. Da un prompt dei comandi con privilegi elevati, eseguire le operazioni seguenti:

      PS C:>\$a=Get-TpmEndorsementKeyInfo
      PS C:>\$a.manufacturerCertificates|Export-Certificate -filepath c:\myEkcert.cer
      
    2. Verificare l’attendibilità in un EKCert all’interno di un computer CA: copiare l'estratto EKCert (EkCert.cer) nella CA (ad esempio, tramite posta elettronica o xcopy). Ad esempio, se si copia il file del certificato nella cartella "c:\diagnose" nel server CA, eseguire il comando seguente per completare la verifica:

      PS C:>new-object System.Security.Cryptography.X509Certificates.X509Certificate2 "c:\diagnose\myEKcert.cer" | Confirm-CAEndorsementKeyInfo
      

Vedi anche

Panoramica della tecnologia Trusted Platform ModuleRisorsa esterna: Trusted Platform Module