Impostazioni di sincronizzazione e durabilità delle chiavi in AWS CloudHSM - AWS CloudHSM

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Impostazioni di sincronizzazione e durabilità delle chiavi in AWS CloudHSM

Questo argomento descrive le impostazioni di sincronizzazione delle chiavi in AWS CloudHSM, i problemi comuni che i clienti riscontrano durante l'utilizzo delle chiavi in un cluster e le strategie per incrementare la durabilità delle chiavi.

Concetti

Chiavi token

Chiavi persistenti create durante le operazioni di generazione, importazione o annullamento del wrapping delle chiavi. AWS CloudHSM sincronizza le chiavi dei token di un cluster.

Chiavi di sessione

Chiavi effimere che esistono solo su un modulo di sicurezza hardware (HSM, Hardware Security Module) nel cluster. AWS CloudHSM non sincronizza le chiavi di sessione di un cluster.

Sincronizzazione delle chiavi lato client

Un processo lato client che clona le chiavi token create durante le operazioni di generazione, importazione o annullamento del wrapping delle chiavi. È possibile incrementare la durabilità delle chiavi token eseguendo un cluster con un minimo di due HSM.

Sincronizzazione delle chiavi lato server

Clona periodicamente le chiavi su ogni HSM del cluster. Non richiede alcuna gestione.

Impostazioni di durabilità delle chiavi del client

Impostazioni che si configurano sul client che influiscono sulla durabilità delle chiavi. Queste impostazioni funzionano in modo diverso in Client SDK 5 e Client SDK 3.

  • In Client SDK 5, questa impostazione serve a eseguire un singolo cluster HSM.

  • In Client SDK 3, questa impostazione serve a specificare il numero di HSM necessari per la riuscita delle operazioni di creazione delle chiavi.

Informazioni sulla sincronizzazione delle chiavi

AWS CloudHSM utilizza la sincronizzazione delle chiavi per clonare le chiavi token su tutti gli HSM di un cluster. Le chiavi token vengono create come chiavi persistenti durante le operazioni di generazione, importazione o annullamento del wrapping delle chiavi. Per distribuire le chiavi nel cluster, CloudHSM offre la sincronizzazione delle chiavi lato client e lato server.

Key synchronization diagram showing client-side and server-side sync across CloudHSM cluster.

L'obiettivo della sincronizzazione delle chiavi, sia lato server che lato client, è quello di distribuire nuove chiavi nel cluster il più rapidamente possibile dopo averle create. Questo è importante perché le successive chiamate effettuate per utilizzare nuove chiavi possono essere indirizzate a qualsiasi HSM disponibile nel cluster. Se la chiamata effettuata viene indirizzata a un HSM senza la chiave, la chiamata ha esito negativo. È possibile attenuare errori di questo tipo specificando che le applicazioni eseguiranno un nuovo tentativo per le chiamate successive effettuate dopo le operazioni di creazione delle chiavi. Il tempo necessario per la sincronizzazione può variare a seconda del carico di lavoro del cluster e di altri elementi indefiniti. Utilizzate le CloudWatch metriche per determinare la tempistica che l'applicazione deve impiegare in questo tipo di situazione. Per ulteriori informazioni, consulta Metriche. CloudWatch

La difficoltà della sincronizzazione delle chiavi in un ambiente cloud è la durabilità delle chiavi. Le chiavi vengono create su un singolo HSM e spesso si inizia a utilizzarle immediatamente. Se l'HSM su cui vengono create le chiavi dovesse dare errore prima che le chiavi siano state clonate su un altro HSM del cluster, si perdono le chiavi e l'accesso a tutto ciò che è crittografato dalle chiavi. Per attenuare questo rischio, è disponibile la sincronizzazione lato client. La sincronizzazione lato client è un processo lato client che clona le chiavi create durante le operazioni di generazione, importazione o annullamento del wrapping delle chiavi. Clonare le chiavi man mano che vengono create ne migliora la durabilità. Chiaramente, non è possibile clonare le chiavi di un cluster con un singolo HSM. Per incrementare la durabilità delle chiavi, si consiglia inoltre di configurare il cluster per l'utilizzo di un minimo di due HSM. Con la sincronizzazione lato client e un cluster con due HSM, è possibile affrontare la difficoltà legata alla durabilità delle chiavi in un ambiente cloud.

Utilizzo delle impostazioni di durabilità delle chiavi del client

La sincronizzazione delle chiavi è un processo prevalentemente automatico, ma è possibile gestire le impostazioni di durabilità delle chiavi lato client. Il funzionamento delle impostazioni di durabilità delle chiavi lato client è diverso in Client SDK 5 e Client SDK 3.

  • In Client SDK 5, viene introdotto il concetto di quorum di disponibilità delle chiavi che richiede l'esecuzione dei cluster con un minimo di due HSM. È possibile modificare le impostazioni di durabilità delle chiavi lato client per disattivare il requisito di utilizzo di due HSM. Per ulteriori informazioni sui quorum, consulta la pagina Concetti relativi a Client SDK 5.

  • In Client SDK 3, si interviene sulle impostazioni di durabilità delle chiavi lato client per stabilire il numero di HSM su cui la creazione della chiave deve avere esito positivo per la riuscita dell'operazione complessiva.

In Client SDK 5, la sincronizzazione delle chiavi è un processo completamente automatico. Con il quorum di disponibilità delle chiavi, le nuove chiavi create devono essere presenti su due HSM del cluster prima che l'applicazione possa utilizzare la chiave. Per utilizzare il quorum di disponibilità delle chiavi, il cluster deve avere almeno due HSM.

Se la configurazione del cluster non soddisfa i requisiti di durabilità delle chiavi, qualsiasi tentativo di creare o utilizzare una chiave token avrà esito negativo e nei log verrà visualizzato il seguente messaggio di errore:

Key <key handle> does not meet the availability requirements - The key must be available on at least 2 HSMs before being used.

È possibile utilizzare le impostazioni di configurazione del client per disattivare il quorum di disponibilità delle chiavi. Ad esempio, potresti volerlo disattivare per eseguire un cluster con un singolo HSM.

Concetti relativi a Client SDK 5

Quorum di disponibilità delle chiavi

AWS CloudHSM specifica il numero di HSM di un cluster su cui devono essere presenti delle chiavi prima che l'applicazione possa utilizzare la chiave. Richiede cluster con un minimo di due HSM.

Gestire le impostazioni di durabilità delle chiavi del client

Per gestire le impostazioni di durabilità delle chiavi del client è necessario utilizzare lo strumento di configurazione per Client SDK 5.

PKCS #11 library
Per disabilitare la durabilità delle chiavi del client per Client SDK 5 su Linux
  • Utilizza lo strumento di configurazione per disabilitare le impostazioni di durabilità delle chiavi del client.

    $ sudo /opt/cloudhsm/bin/configure-pkcs11 --disable-key-availability-check
Per disabilitare la durabilità delle chiavi del client per Client SDK 5 su Windows
  • Utilizza lo strumento di configurazione per disabilitare le impostazioni di durabilità delle chiavi del client.

    "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" --disable-key-availability-check
OpenSSL Dynamic Engine
Per disabilitare la durabilità delle chiavi del client per Client SDK 5 su Linux
  • Utilizza lo strumento di configurazione per disabilitare le impostazioni di durabilità delle chiavi del client.

    $ sudo /opt/cloudhsm/bin/configure-dyn --disable-key-availability-check
JCE provider
Per disabilitare la durabilità delle chiavi del client per Client SDK 5 su Linux
  • Utilizza lo strumento di configurazione per disabilitare le impostazioni di durabilità delle chiavi del client.

    $ sudo /opt/cloudhsm/bin/configure-jce --disable-key-availability-check
Per disabilitare la durabilità delle chiavi del client per Client SDK 5 su Windows
  • Utilizza lo strumento di configurazione per disabilitare le impostazioni di durabilità delle chiavi del client.

    "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" --disable-key-availability-check
CloudHSM CLI
Per disabilitare la durabilità delle chiavi del client per Client SDK 5 su Linux
  • Utilizza lo strumento di configurazione per disabilitare le impostazioni di durabilità delle chiavi del client.

    $ sudo /opt/cloudhsm/bin/configure-cli --disable-key-availability-check
Per disabilitare la durabilità delle chiavi del client per Client SDK 5 su Windows
  • Utilizza lo strumento di configurazione per disabilitare le impostazioni di durabilità delle chiavi del client.

    "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" --disable-key-availability-check

In Client SDK 3, la sincronizzazione delle chiavi è un processo prevalentemente automatico, ma è possibile incrementare la durabilità delle chiavi tramite le impostazioni di durabilità delle chiavi del client. Si stabilisce il numero di HSM su cui la creazione della chiave deve avere esito positivo per la riuscita dell'operazione complessiva. La sincronizzazione lato client tenta sempre, al massimo delle proprie capacità, di clonare le chiavi su ogni HSM del cluster, indipendentemente dall'impostazione scelta. L'impostazione impone la creazione delle chiavi sul numero di HSM specificato. Se viene specificato un valore e il sistema non è in grado di replicare la chiave su tale numero di HSM, il sistema pulisce automaticamente qualsiasi materiale della chiave indesiderato ed è quindi possibile riprovare.

Importante

Se non vengono configurate le impostazioni di durabilità delle chiavi del client (o se si utilizza il valore predefinito 1), le chiavi sono vulnerabili alla perdita. Se l'HSM attuale dovesse dare errore prima che il servizio lato server abbia clonato la chiave su un altro HSM, il materiale della chiave andrà perso.

Per massimizzare la durabilità delle chiavi, valuta la possibilità di specificare almeno due HSM per la sincronizzazione lato client. Si noti che, indipendentemente dal numero di HSM specificato, il carico di lavoro sul cluster rimane invariato. La sincronizzazione lato client tenta sempre, al massimo delle proprie capacità, di clonare le chiavi su ogni HSM del cluster.

Raccomandazioni

  • Minimo: due HSM per cluster

  • Massimo: un HSM in meno rispetto al numero totale di HSM del cluster

Se la sincronizzazione lato client dà errore, il servizio client pulisce tutte le chiavi indesiderate che potrebbero essere state create e che sono ora indesiderate. La pulizia viene eseguita al massimo delle capacità e potrebbe non sempre funzionare. Se pulizia non riesce, potrebbe essere necessario eliminare il materiale della chiave indesiderato. Per ulteriori informazioni, consulta la pagina Errori di sincronizzazione delle chiavi.

Impostare il file di configurazione per la durabilità delle chiavi del client

Per specificare le impostazioni di durabilità delle chiavi del client, è necessario modificare cloudhsm_client.cfg.

Per modificare il file di configurazione del client
  1. Aprire cloudhsm_client.cfg.

    Linux:

    /opt/cloudhsm/etc/cloudhsm_client.cfg

    Windows:

    C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_client.cfg
  2. Nel nodo client del file, aggiungi create_object_minimum_nodes e specifica un valore relativo al numero minimo di HSM su cui AWS CloudHSM deve creare le chiavi affinché le operazioni di creazione delle chiavi abbiano esito positivo.

    "create_object_minimum_nodes" : 2
    Nota

    Lo strumento a riga di comando key_mgmt_util (KMU) presenta un'ulteriore impostazione per la durabilità delle chiavi del client. Per ulteriori informazioni, consultare Sincronizzazione lato client e KMU

Informazioni di riferimento sulla configurazione

A seguire sono mostrate le proprietà di sincronizzazione lato client, in un estratto di cloudhsm_client.cfg:

{ "client": { "create_object_minimum_nodes" : 2, ... }, ... }
create_object_minimum_nodes

Specifica il numero minimo di HSM necessari per garantire la riuscita delle operazioni di generazione, importazione o annullamento del wrapping delle chiavi. Se impostato, il valore predefinito è "1". Ciò significa che per ogni operazione di creazione di chiavi, il servizio lato client tenta di creare chiavi su ogni HSM del cluster, ma per la riuscita dell'operazione, il servizio deve creare solamente una singola chiave su un HSM del cluster.

Sincronizzazione lato client e KMU

Se si creano chiavi con lo strumento a riga di comando key_mgmt_util (KMU), si utilizza un parametro opzionale della riga di comando (-min_srv) per limitare il numero di HSM su cui clonare le chiavi. Se si specifica il parametro della riga di comando e un valore nel file di configurazione, AWS CloudHSM rispetta il valore MAGGIORE.

Per ulteriori informazioni, consulta i seguenti argomenti:

Sincronizzare le chiavi in cluster clonati

La sincronizzazione lato client e lato server serve solo a sincronizzare le chiavi all'interno dello stesso cluster. Se si copia un backup di un cluster in un'altra regione, è possibile utilizzare il comando SyncKey di cloudhsm_mgmt_util (CMU) per sincronizzare le chiavi tra i cluster. È possibile utilizzare cluster clonati per la ridondanza tra regioni o per semplificare il processo di ripristino di emergenza. Per ulteriori informazioni, consulta la pagina syncKey.