

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Attributs clés Java pris en charge pour AWS CloudHSM le SDK client 5
<a name="java-lib-attributes_5"></a>

Cette rubrique fournit des informations sur les attributs clés Java pris en charge pour AWS CloudHSM le SDK client 5. Cette rubrique décrit comment utiliser une extension propriétaire pour le fournisseur JCE afin de définir les attributs de clé. Utilisez cette extension pour définir les attributs de clés pris en charge et leurs valeurs au cours des opérations suivantes :
+ Génération de clés
+ Importation de clés

Pour des exemples d'utilisation des attributs de clé, consultez [Exemples de code pour la bibliothèque de AWS CloudHSM logiciels pour Java for Client SDK 5](java-samples.md).

**Topics**
+ [Présentation des attributs](#java-understanding-attributes_5)
+ [Attributs pris en charge](#java-attributes_5)
+ [Définition des attributs pour une clé](#java-setting-attributes_5)

## Présentation des attributs
<a name="java-understanding-attributes_5"></a>

Les attributs de clé permettent de spécifier les actions autorisées sur les objets de type clé, y compris les clés publiques, privées ou secrètes. Vous définissez les attributs de clés et leurs valeurs lors des opérations de création d'objets de type clé. 

Toutefois, l'extension JCE (Java Cryptography Extension) ne spécifie pas comment définir les valeurs des attributs de clé. Dès lors, la plupart des actions étaient autorisées par défaut. En revanche, la norme PKCS \#11 définit un ensemble complet d'attributs avec des valeurs par défaut plus restrictives. À partir du fournisseur JCE 3.1, AWS CloudHSM fournit une extension propriétaire qui vous permet de définir des valeurs plus restrictives pour les attributs couramment utilisés. 

## Attributs pris en charge
<a name="java-attributes_5"></a>

Vous pouvez définir des valeurs pour les attributs répertoriés dans le tableau ci-dessous. Il est conseillé de spécifier uniquement des valeurs pour les attributs que vous souhaitez restreindre. Si vous ne spécifiez aucune valeur, AWS CloudHSM utilise la valeur par défaut spécifiée dans le tableau ci-dessous. Une cellule vide dans la colonne Default Value (Valeur par défaut) signale qu'aucune valeur par défaut n'est assignée à l'attribut.


****  
[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/cloudhsm/latest/userguide/java-lib-attributes_5.html)

**Note**  
Vous bénéficiez d'une prise en charge plus large des attributs dans la bibliothèque PKCS \#11. Pour plus d'informations, consultez [Attributs PKCS \#11 pris en charge](pkcs11-attributes.md).

## Définition des attributs pour une clé
<a name="java-setting-attributes_5"></a>

`KeyAttributesMap` est un objet de type Java Map que vous pouvez utiliser pour définir des valeurs d'attribut pour les objets de type clé. Les méthodes de `KeyAttributesMap` fonctionne d'une manière similaire à celles utilisées pour la manipulation de Java Map. 

Pour définir des valeurs personnalisées pour les attributs, deux options s'offrent à vous :
+ Utiliser les méthodes répertoriées dans le tableau suivant
+ Utiliser les modèles de générateur illustrés plus loin dans ce document

Les objets de mappage d'attribut prennent en charge les méthodes suivantes pour définir les attributs :


****  

| Opération | Valeur renvoyée | Méthode `KeyAttributesMap` | 
| --- | --- | --- | 
| Obtenir la valeur d'un attribut pour une clé existante | Objet (contenant la valeur) ou null | **get**(keyAttribute) | 
| Renseigner la valeur d'un attribut de clé  | Valeur précédente associée à l'attribut de clé, ou null en l'absence de mappage pour un attribut de clé | **put**(keyAttribute, value) | 
| Renseigner des valeurs pour plusieurs attributs de clés | N/A | **Tout mettre ()** keyAttributesMap | 
| Supprimer une paire clé-valeur du mappage d'attributs | Valeur précédente associée à l'attribut de clé, ou *null* en l'absence de mappage pour un attribut de clé | **remove**(keyAttribute) | 

**Note**  
Tous les attributs que vous ne spécifiez pas explicitement utilisent les valeurs par défaut répertoriées dans le tableau précédent, dans [Attributs pris en charge](#java-attributes_5). 

### Définition des attributs pour une paire de clés
<a name="java-setting-attributes-key-pair"></a>

Utilisez la classe Java `KeyPairAttributesMap` pour gérer les attributs d'une paire de clés. `KeyPairAttributesMap` encapsule deux objets `KeyAttributesMap` : un pour une clé publique et un pour une clé privée.

Pour définir des attributs individuels de la clé publique et la clé privée séparément, vous pouvez utiliser la méthode `put()` sur l'objet mappé `KeyAttributes` correspondant à cette clé. Choisissez la méthode `getPublic()` pour récupérer le mappage d'attributs de la clé publique, et utilisez `getPrivate()` pour récupérer le mappage d'attributs de la clé privée. Renseignez la valeur de plusieurs attributs de clés pour les paires de clés publiques et privées en utilisant `putAll()` avec le mappage d'attributs d'une paire de clés comme argument.