Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana cara memulai dengan enkripsi?
Saat membuat MSK cluster, Anda dapat menentukan pengaturan enkripsi dalam JSON format. Berikut adalah contohnya.
{ "EncryptionAtRest": { "DataVolumeKMSKeyId": "arn:aws:kms:us-east-1:123456789012:key/abcdabcd-1234-abcd-1234-abcd123e8e8e" }, "EncryptionInTransit": { "InCluster": true, "ClientBroker": "TLS" } }
UntukDataVolumeKMSKeyId
, Anda dapat menentukan kunci terkelola pelanggan atau Kunci yang dikelola AWS untuk MSK di akun Anda (alias/aws/kafka
). Jika Anda tidak menentukanEncryptionAtRest
, Amazon MSK masih mengenkripsi data Anda saat istirahat di bawah Kunci yang dikelola AWS. Untuk menentukan kunci mana yang digunakan cluster Anda, kirim GET
permintaan atau panggil DescribeCluster
API operasi.
UntukEncryptionInTransit
, nilai default InCluster
adalah true, tetapi Anda dapat mengaturnya ke false jika Anda tidak MSK ingin Amazon mengenkripsi data Anda saat melewati antara broker.
Untuk menentukan mode enkripsi untuk data dalam perjalanan antara klien dan broker, atur ClientBroker
ke salah satu dari tiga nilai:TLS
,TLS_PLAINTEXT
, atauPLAINTEXT
.
Untuk menentukan pengaturan enkripsi saat membuat cluster
Simpan isi dari contoh sebelumnya dalam file dan berikan file nama apa pun yang Anda inginkan. Misalnya, sebut saja
encryption-settings.json
.-
Jalankan
create-cluster
perintah dan gunakanencryption-info
opsi untuk menunjuk ke file tempat Anda menyimpan konfigurasi AndaJSON. Berikut adalah contohnya. Ganti{YOUR MSK VERSION}
dengan versi yang cocok dengan versi klien Apache Kafka. Untuk informasi tentang cara menemukan versi MSK cluster Anda, lihatTo find the version of your MSK cluster. Ketahuilah bahwa menggunakan versi klien Apache Kafka yang tidak sama dengan versi MSK cluster Anda dapat menyebabkan kerusakan, kehilangan, dan waktu henti data 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 3Berikut ini adalah contoh respons yang berhasil setelah menjalankan perintah ini.
{ "ClusterArn": "arn:aws:kafka:us-east-1:123456789012:cluster/SecondTLSTest/abcdabcd-1234-abcd-1234-abcd123e8e8e", "ClusterName": "ExampleClusterName", "State": "CREATING" }
Untuk menguji TLS enkripsi
Buat mesin klien mengikuti panduan diLangkah 3: Buat mesin klien.
-
Instal Apache Kafka di mesin klien.
-
Dalam contoh ini kita menggunakan JVM truststore untuk berbicara dengan cluster. MSK Untuk melakukan ini, pertama buat folder bernama
/tmp
pada mesin klien. Kemudian, bukabin
folder instalasi Apache Kafka, dan jalankan perintah berikut. (JVMJalan Anda mungkin berbeda.)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
-
Saat masih dalam
bin
folder instalasi Apache Kafka di mesin klien, buat file teks bernamaclient.properties
dengan konten berikut.security.protocol=SSL ssl.truststore.location=/tmp/kafka.client.truststore.jks
-
Jalankan perintah berikut pada mesin yang memiliki AWS CLI dipasang, diganti
clusterARN
dengan ARN cluster Anda.aws kafka get-bootstrap-brokers --cluster-arn
clusterARN
Hasil yang sukses terlihat seperti berikut ini. Simpan hasil ini karena Anda membutuhkannya untuk langkah selanjutnya.
{ "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" }
-
Jalankan perintah berikut, ganti
BootstrapBrokerStringTls
dengan salah satu endpoint broker yang Anda peroleh pada langkah sebelumnya.<path-to-your-kafka-installation>
/bin/kafka-console-producer.sh --broker-listBootstrapBrokerStringTls
--producer.config client.properties --topic TLSTestTopic -
Buka jendela perintah baru dan sambungkan ke mesin klien yang sama. Kemudian, jalankan perintah berikut untuk membuat konsumen konsol.
<path-to-your-kafka-installation>
/bin/kafka-console-consumer.sh --bootstrap-serverBootstrapBrokerStringTls
--consumer.config client.properties --topic TLSTestTopic -
Di jendela produser, ketik pesan teks diikuti dengan pengembalian, dan cari pesan yang sama di jendela konsumen. Amazon MSK mengenkripsi pesan ini dalam perjalanan.