

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.

# Utilisation de la sécurité TLS avec Apache ZooKeeper
<a name="zookeeper-security-tls"></a>

Vous pouvez utiliser la sécurité TLS pour le chiffrement en transit entre vos clients et vos ZooKeeper nœuds Apache. Pour implémenter la sécurité TLS avec vos ZooKeeper nœuds Apache, procédez comme suit :
+ Les clusters doivent utiliser Apache Kafka version 2.5.1 ou ultérieure pour utiliser la sécurité TLS avec Apache. ZooKeeper
+ Activez la sécurité TLS lorsque vous créez ou configurez votre cluster. Les clusters créés avec Apache Kafka version 2.5.1 ou ultérieure avec TLS activé utilisent automatiquement la sécurité TLS avec les points de terminaison Apache. ZooKeeper Pour plus d'informations sur la configuration de la sécurité TLS, consultez [Commencez avec le chiffrement Amazon MSK](msk-working-with-encryption.md).
+ Récupérez les ZooKeeper points de terminaison TLS Apache à l'aide de l'opération [DescribeCluster ](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn.html#DescribeCluster).
+ Créez un fichier ZooKeeper de configuration Apache à utiliser avec les [https://kafka.apache.org/documentation/#security_authz_cli](https://kafka.apache.org/documentation/#security_authz_cli)outils `kafka-configs.sh` et ou avec le ZooKeeper shell. Avec chaque outil, vous utilisez le `--zk-tls-config-file` paramètre pour spécifier votre ZooKeeper configuration Apache.

  L'exemple suivant montre un fichier de ZooKeeper configuration Apache typique : 

  ```
  zookeeper.ssl.client.enable=true
  zookeeper.clientCnxnSocket=org.apache.zookeeper.ClientCnxnSocketNetty
  zookeeper.ssl.keystore.location=kafka.jks
  zookeeper.ssl.keystore.password=test1234
  zookeeper.ssl.truststore.location=truststore.jks
  zookeeper.ssl.truststore.password=test1234
  ```
+ Pour les autres commandes (telles que`kafka-topics`), vous devez utiliser la variable d'`KAFKA_OPTS`environnement pour configurer les ZooKeeper paramètres Apache. L'exemple suivant montre comment configurer la variable d'`KAFKA_OPTS`environnement pour transmettre les ZooKeeper paramètres Apache à d'autres commandes :

  ```
  export KAFKA_OPTS="
  -Dzookeeper.clientCnxnSocket=org.apache.zookeeper.ClientCnxnSocketNetty 
  -Dzookeeper.client.secure=true 
  -Dzookeeper.ssl.trustStore.location=/home/ec2-user/kafka.client.truststore.jks
  -Dzookeeper.ssl.trustStore.password=changeit"
  ```

  Après avoir configuré la variable d'environnement `KAFKA_OPTS`, vous pouvez utiliser les commandes de l'interface de ligne de commande normalement. L'exemple suivant crée un sujet Apache Kafka en utilisant la ZooKeeper configuration Apache à partir de la variable d'`KAFKA_OPTS`environnement :

  ```
  <path-to-your-kafka-installation>/bin/kafka-topics.sh --create --zookeeper ZooKeeperTLSConnectString --replication-factor 3 --partitions 1 --topic AWSKafkaTutorialTopic
  ```

**Note**  
Les noms des paramètres que vous utilisez dans votre fichier de ZooKeeper configuration Apache et ceux que vous utilisez dans votre variable d'`KAFKA_OPTS`environnement ne sont pas cohérents. Faites attention aux noms que vous utilisez et aux paramètres de votre fichier de configuration et de votre variable d'environnement `KAFKA_OPTS`.

Pour plus d'informations sur l'accès à vos ZooKeeper nœuds Apache avec TLS, voir [KIP-515 : Permettre au client ZK d'utiliser](https://cwiki.apache.org/confluence/display/KAFKA/KIP-515%3A+Enable+ZK+client+to+use+the+new+TLS+supported+authentication) la nouvelle authentification prise en charge par TLS.