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à.
Attributi chiave Java supportati per AWS CloudHSM Client SDK 5
Questo argomento fornisce informazioni sugli attributi chiave Java supportati per il AWS CloudHSM Client SDK 5. Questo argomento descrive come utilizzare un'estensione proprietaria per il JCE provider per impostare gli attributi chiave. Utilizzare questa estensione per impostare gli attributi della chiave supportati e i relativi valori durante le operazioni seguenti:
Generazione delle chiavi
Importazione delle chiavi
Per esempi di utilizzo degli attributi chiave, vedi Esempi di codice per la libreria AWS CloudHSM software per Java for Client SDK 5.
Comprensione degli attributi
Gli attributi chiave vengono utilizzati per specificare le operazioni consentite su oggetti chiave, incluse le chiavi pubbliche, private o segrete. Gli attributi e i valori della chiave vengono definiti durante le operazioni di creazione degli oggetti chiave.
L'estensione di crittografia Java (JCE) non specifica come impostare i valori sugli attributi chiave, quindi la maggior parte delle azioni era consentita per impostazione predefinita. Al contrario, lo standard PKCS n. 11 definisce un set completo di attributi con impostazioni predefinite più restrittive. A partire dal JCE provider 3.1, AWS CloudHSM fornisce un'estensione proprietaria che consente di impostare valori più restrittivi per gli attributi di uso comune.
Attributi supportati
Puoi impostare i valori per gli attributi elencati nella tabella sottostante. Come best practice, imposta i valori solo per gli attributi che desideri rendere restrittivi. Se non si specifica un valore, AWS CloudHSM utilizza il valore predefinito specificato nella tabella seguente. Una cella vuota nella colonna Valore predefinito indica che all'attributo non è stato assegnato alcun valore predefinito specifico.
Attributo | Valore predefinito | Note | ||
---|---|---|---|---|
Chiave simmetrica | Chiave pubblica in una coppia di chiavi | Chiave privata in una coppia di chiavi | ||
DECRYPT |
TRUE |
TRUE |
Il valore Vero indica che è possibile utilizzare la chiave per decodificare qualsiasi buffer. In genere lo si imposta su FALSE una chiave WRAP impostata su true. | |
DERIVE |
Consente di utilizzare una chiave per derivare altre chiavi. | |||
ENCRYPT |
TRUE |
TRUE |
Il valore Vero indica che è possibile utilizzare la chiave per crittografare qualsiasi buffer. | |
EXTRACTABLE |
TRUE |
TRUE |
Il valore True indica che è possibile esportare questa chiave daHSM. | |
ID |
|
|
Un valore definito dall'utente utilizzato per identificare la chiave. | |
KEY_TYPE |
Utilizzato per identificare il tipo di chiave (AES,DESede, segreto generico, EC oRSA). | |||
LABEL |
Una stringa definita dall'utente che ti consente di identificare comodamente le chiavi del tuo. HSM Per seguire le best practice, utilizza un'etichetta univoca per ogni chiave in modo che sia più facile trovarla in seguito. | |||
LOCAL |
Indica una chiave generata da. HSM | |||
OBJECT_CLASS |
Utilizzato per identificare la classe dell'oggetto di una chiave (SecretKey, PublicKey o PrivateKey). | |||
PRIVATE |
TRUE |
TRUE |
TRUE |
Il valore Vero indica che un utente potrebbe non poter accedere alla chiave finché l'utente non viene autenticato. Per motivi di chiarezza, gli utenti non possono accedere a nessuna chiave AWS CloudHSM finché non vengono autenticati, anche se questo attributo è impostato su. FALSE |
SIGN |
TRUE |
TRUE |
Il valore Vero indica che è possibile utilizzare la chiave per firmare un messaggio di digest. In genere è impostato FALSE per le chiavi pubbliche e per le chiavi private archiviate. | |
SIZE |
Un attributo che definisce la dimensione di una chiave. Per maggiori dettagli sulle dimensioni delle chiavi supportate, consulta Meccanismi supportati per il Client SDK 5. | |||
TOKEN |
FALSE |
FALSE |
FALSE |
Una chiave permanente che viene replicata HSMs in tutto il cluster e inclusa nei backup. TOKEN= FALSE implica una chiave temporanea che viene cancellata automaticamente quando la connessione a viene interrotta o disconnessa. HSM |
UNWRAP |
TRUE |
TRUE |
Il valore Vero indica che è possibile utilizzare la chiave per annullare il wrapping (importazione) di un'altra chiave. | |
VERIFY |
TRUE |
TRUE |
Il valore Vero indica che è possibile utilizzare la chiave per verificare una firma. Questa opzione è generalmente impostata per le chiavi private. FALSE | |
WRAP |
TRUE |
TRUE |
Il valore Vero indica che è possibile utilizzare la chiave per eseguire il wrapping di un'altra chiave. In genere lo imposterai FALSE per le chiavi private. | |
WRAP_WITH_TRUSTED |
FALSE |
FALSE |
Il valore Vero indica che una chiave può essere soggetta a wrapping e ad annullamento del wrapping con chiavi con l'attributo TRUSTED impostato su vero. Una volta che una chiave ha il valore WRAP_WITH_TRUSTED impostato su vero, tale attributo è di sola lettura e non può essere impostato su falso. Per saperne di più sul wrapping di fiducia, vedi Utilizzo di chiavi fidate per controllare l'annullamento del wrapping delle chiavi. |
Nota
È disponibile un supporto più ampio per gli attributi nella libreria PKCS #11. Per ulteriori informazioni, consulta Attributi PKCS #11 supportati.
Impostazione attributi per una chiave
KeyAttributesMap
è un oggetto simile a Java Map che puoi utilizzare per impostare i valori degli attributi per gli oggetti chiave. I metodi per la funzione KeyAttributesMap
sono simili a quelli utilizzati per la manipolazione della mappa Java.
Per impostare valori personalizzati sugli attributi, sono disponibili due opzioni:
Utilizzare i metodi elencati nella tabella seguente
Utilizzare i modelli di generatore illustrati più avanti in questo documento
Gli oggetti della mappa attributi supportano i seguenti metodi per impostare gli attributi:
Operazione | Valore restituito | Metodo KeyAttributesMap |
---|---|---|
Ottenere il valore di un attributo chiave per una chiave esistente | Oggetto (contenente il valore) o nulla |
get (keyAttribute) |
Inserire il valore di un attributo chiave | Il valore precedente associato all'attributo chiave o nulla se non esiste alcuna mappatura per un attributo chiave |
put (keyAttribute, valore) |
Compilare i valori per più attributi chiave | N/D |
putAll(keyAttributesMap) |
Rimuovere una coppia chiave-valore dalla mappa degli attributi |
Il valore precedente associato all'attributo chiave o nulla se non esiste alcuna mappatura per un attributo chiave |
rimuovere (keyAttribute) |
Nota
Eventuali attributi non specificati in modo esplicito vengono impostati sui valori predefiniti elencati nella tabella precedente in Attributi supportati.
Impostazione di attributi per una coppia di chiavi
Utilizza la classe Java KeyPairAttributesMap
per gestire gli attributi chiave per una coppia di chiavi. KeyPairAttributesMap
incapsula due oggetti KeyAttributesMap
; uno per una chiave pubblica e uno per una chiave privata.
Per impostare singoli attributi per la chiave pubblica e la chiave privata separatamente, puoi utilizzare il metodo put()
sull'oggetto mappa KeyAttributes
corrispondente per tale chiave. Utilizza il metodo getPublic()
per recuperare la mappa degli attributi per la chiave pubblica e utilizza getPrivate()
per recuperare la mappa degli attributi per la chiave privata. Compila il valore di più attributi chiave insieme per coppie di chiavi pubbliche e private utilizzando la putAll()
con una mappa degli attributi della coppia di chiavi come relativo argomento.