Quali sono i primi passi per iniziare a utilizzare la crittografia? - Amazon Managed Streaming per Apache Kafka

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à.

Quali sono i primi passi per iniziare a utilizzare la crittografia?

Quando crei un MSK cluster, puoi specificare le impostazioni di crittografia in JSON formato. Di seguito è riportato un esempio.

{ "EncryptionAtRest": { "DataVolumeKMSKeyId": "arn:aws:kms:us-east-1:123456789012:key/abcdabcd-1234-abcd-1234-abcd123e8e8e" }, "EncryptionInTransit": { "InCluster": true, "ClientBroker": "TLS" } }

InfattiDataVolumeKMSKeyId, puoi specificare una chiave gestita dal cliente o Chiave gestita da AWS il modulo MSK nel tuo account (alias/aws/kafka). Se non lo specifichiEncryptionAtRest, Amazon crittografa MSK comunque i tuoi dati inattivi sotto il Chiave gestita da AWS. Per determinare quale chiave sta utilizzando il cluster, invia una GET richiesta o richiama l'DescribeClusterAPIoperazione.

InfattiEncryptionInTransit, il valore predefinito di InCluster è true, ma puoi impostarlo su false se non vuoi che Amazon crittografi i tuoi dati mentre passano MSK da un broker all'altro.

Per specificare la modalità di crittografia per i dati in transito tra client e broker, imposta ClientBroker su uno di tre valori: TLS, TLS_PLAINTEXT o PLAINTEXT.

Per specificare le impostazioni di crittografia durante la creazione di un cluster
  1. Salvare il contenuto dell'esempio precedente in un file e assegnare al file il nome desiderato. Ad esempio, chiamarlo encryption-settings.json.

  2. Esegui il create-cluster comando e usa l'encryption-infoopzione per puntare al file in cui hai salvato la configurazione. JSON Di seguito è riportato un esempio. Replace (Sostituisci) {YOUR MSK VERSION} con una versione che corrisponde alla versione del client Apache Kafka. Per informazioni su come trovare la versione del MSK cluster in uso, consulta. To find the version of your MSK cluster Tieni presente che l'utilizzo di una versione del client Apache Kafka diversa da quella del MSK cluster può causare il danneggiamento, la perdita e i tempi di inattività dei dati di Apache Kafka.

    aws kafka create-cluster --cluster-name "ExampleClusterName" --broker-node-group-info file://brokernodegroupinfo.json --encryption-info file://encryptioninfo.json --kafka-version "{YOUR MSK VERSION}" --number-of-broker-nodes 3

    Di seguito è riportato un esempio di una risposta corretta dopo l'esecuzione di questo comando.

    { "ClusterArn": "arn:aws:kafka:us-east-1:123456789012:cluster/SecondTLSTest/abcdabcd-1234-abcd-1234-abcd123e8e8e", "ClusterName": "ExampleClusterName", "State": "CREATING" }
Per testare la crittografia TLS
  1. Creare un computer client seguendo le linee guida in Passaggio 3: creazione di un computer client.

  2. Installare Apache Kafka sul computer client.

  3. In questo esempio utilizziamo il JVM truststore per parlare con il MSK cluster. A tale scopo, creare innanzitutto una cartella denominata /tmp sul computer client. Quindi, passare alla cartella bin dell'installazione di Apache Kafka ed eseguire il seguente comando. (Il tuo JVM percorso potrebbe essere diverso.)

    cp /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-0.amzn2.x86_64/jre/lib/security/cacerts /tmp/kafka.client.truststore.jks
  4. Sempre nella cartella bin dell'installazione di Apache Kafka sul computer client, creare un file di testo denominato client.properties con il seguente contenuto.

    security.protocol=SSL ssl.truststore.location=/tmp/kafka.client.truststore.jks
  5. Esegui il comando seguente su un computer su cui è AWS CLI installato, sostituendo clusterARN con ARN il tuo cluster.

    aws kafka get-bootstrap-brokers --cluster-arn clusterARN

    Se l'operazione riesce, il risultato sarà simile al seguente. Salvare questo risultato perché è necessario per la fase successiva.

    { "BootstrapBrokerStringTls": "a-1.example.g7oein.c2.kafka.us-east-1.amazonaws.com:0123,a-3.example.g7oein.c2.kafka.us-east-1.amazonaws.com:0123,a-2.example.g7oein.c2.kafka.us-east-1.amazonaws.com:0123" }
  6. Esegui il seguente comando, sostituendo BootstrapBrokerStringTls con uno degli endpoint del broker ottenuti nel passaggio precedente.

    <path-to-your-kafka-installation>/bin/kafka-console-producer.sh --broker-list BootstrapBrokerStringTls --producer.config client.properties --topic TLSTestTopic
  7. Apri una nuova finestra di comando e connettiti allo stesso computer client. Quindi, esegui il comando seguente per creare un utente della console.

    <path-to-your-kafka-installation>/bin/kafka-console-consumer.sh --bootstrap-server BootstrapBrokerStringTls --consumer.config client.properties --topic TLSTestTopic
  8. Nella finestra del produttore, digita un messaggio di testo seguito da un invio e cerca lo stesso messaggio nella finestra del consumatore. Amazon ha MSK crittografato questo messaggio in transito.

Per ulteriori informazioni sulla configurazione dei client Apache Kafka per l'utilizzo di dati crittografati, consulta Configuring Kafka Clients.