Sinkronisasi kunci dan pengaturan daya tahan di AWS CloudHSM - AWS CloudHSM

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Sinkronisasi kunci dan pengaturan daya tahan di AWS CloudHSM

Topik ini menjelaskan pengaturan sinkronisasi kunci di AWS CloudHSM, masalah umum yang dihadapi pelanggan yang bekerja dengan kunci pada sebuah klaster, dan strategi untuk membuat kunci lebih tahan lama.

Konsep

Tombol Token

Kunci persisten yang Anda buat selama operasi membuat, impor, atau membuka kunci. AWS CloudHSM menyinkronkan kunci token di klaster.

Tombol sesi

Kunci sementara yang ada hanya pada satu modul keamanan perangkat keras (HSM) di klaster. AWS CloudHSM tidak menyinkronkan kunci sesi di klaster.

Sinkronisasi tombol sisi klien

Proses sisi klien yang mengkloning kunci token yang Anda buat selama operasi menghasilkan, impor atau membuka kunci. Anda dapat membuat kunci token lebih tahan lama dengan menjalankan klaster dengan minimal dua HSM.

Sinkronisasi tombol sisi server

Secara berkala klon kunci ke setiap HSM di klaster. Tidak memerlukan manajemen.

Pengaturan daya tahan kunci klien

Pengaturan yang Anda atur pada klien yang memengaruhi daya tahan kunci. Pengaturan ini bekerja secara berbeda di Client SDK 5 dan Client SDK 3.

  • Di SDK Klien 5, gunakan pengaturan ini untuk menjalankan satu klaster HSM.

  • Di SDK Klien 3, gunakan pengaturan ini untuk menentukan jumlah HSM yang diperlukan untuk operasi pembuatan kunci agar berhasil.

Memahami sinkronisasi kunci

AWS CloudHSM menggunakan sinkronisasi kunci untuk mengkloning kunci token di semua HSM dalam sebuah klaster. Anda membuat kunci token sebagai kunci persisten selama operasi pembuatan, impor, atau membuka kunci. Untuk mendistribusikan kunci ini di klaster, CloudHSM menawarkan sinkronisasi kunci sisi klien dan sisi server.

Tujuan dengan sinkronisasi kunci—baik sisi server maupun sisi klien—adalah mendistribusikan kunci baru di seluruh klaster secepat mungkin setelah Anda membuatnya. Hal ini penting karena panggilan berikutnya yang Anda buat untuk menggunakan kunci baru dapat dirutekan ke setiap HSM yang tersedia di klaster. Jika panggilan Anda membuat rute ke HSM tanpa kunci, maka panggilan gagal. Anda dapat mengurangi kegagalan jenis ini dengan menentukan bahwa panggilan coba lagi aplikasi Anda berikutnya dilakukan setelah operasi pembuatan kunci. Waktu yang diperlukan untuk menyinkronkan dapat bervariasi, tergantung pada beban kerja klaster Anda dan hal-hal tak berwujud lainnya. Gunakan CloudWatch metrik untuk menentukan waktu yang harus digunakan aplikasi Anda dalam situasi seperti ini. Untuk informasi selengkapnya, lihat CloudWatch Metrik.

Tantangan dengan sinkronisasi kunci di lingkungan cloud adalah daya tahan kunci. Anda membuat kunci pada HSM tunggal dan sering mulai menggunakan kunci-kunci tersebut dengan segera. Jika HSM tempat Anda membuat kunci harus gagal sebelum kunci dikloning ke HSM lain di klaster, Anda kehilangan kunci dan akses ke apa pun yang dienkripsi oleh kunci. Untuk mengurangi risiko ini, kami menawarkan sinkronisasi sisi klien. Sinkronisasi sisi klien adalah proses sisi klien yang mengkloning kunci yang Anda buat selama operasi menghasilkan, impor, atau membuka kunci. Kunci kloning saat Anda membuatnya membuat kunci lebih tahan lama. Tentu saja, Anda tidak dapat mengkloning kunci dalam sebuah klaster dengan satu HSM. Untuk membuat kunci lebih tahan lama, kami juga menyarankan Anda mengatur konfigurasi klaster Anda untuk menggunakan minimal dua HSM. Dengan sinkronisasi sisi klien dan klaster dengan dua HSM, Anda dapat memenuhi tantangan daya tahan kunci dalam lingkungan cloud.

Bekerja dengan pengaturan daya tahan kunci klien

Sinkronisasi kunci sebagian besar merupakan proses otomatis, tetapi Anda dapat mengelola pengaturan daya tahan kunci sisi klien. Pengaturan daya tahan kunci sisi klien bekerja secara berbeda dalam SDK Klien 5 dan SDK Klien 3.

  • Dalam SDK Klien 5, kami memperkenalkan konsep kuorum ketersediaan utama yang mengharuskan Anda untuk menjalankan klaster dengan minimal dua HSM. Anda dapat menggunakan pengaturan daya tahan kunci sisi klien untuk memilih keluar dari persyaratan dua HSM. Untuk informasi selengkapnya tentang kuorum, lihat Konsep SDK 5 klien.

  • Di SDK Klien 3, Anda menggunakan pengaturan daya tahan kunci sisi klien untuk menentukan jumlah HSM yang pembuatan kuncinya harus berhasil untuk keseluruhan operasi agar dianggap sukses.

Dalam SDK klien 5, sinkronisasi kunci adalah proses sepenuhnya otomatis. Dengan kuorum ketersediaan kunci, kunci yang baru dibuat harus ada pada dua HSM di klaster sebelum aplikasi Anda dapat menggunakan kunci. Untuk menggunakan kuorum ketersediaan kunci, klaster Anda harus memiliki minimal dua HSM.

Jika konfigurasi klaster Anda tidak memenuhi persyaratan daya tahan utama, setiap upaya untuk membuat atau menggunakan kunci token akan gagal dengan pesan galat berikut di log:

Key <key handle> does not meet the availability requirements - The key must be available on at least 2 HSMs before being used.

Anda dapat menggunakan pengaturan konfigurasi klien untuk memilih keluar dari kuorum ketersediaan kunci. Anda mungkin ingin memilih keluar untuk menjalankan klaster dengan HSM tunggal, misalnya.

Konsep SDK 5 klien

Kuorum Ketersediaan Utama

AWS CloudHSM menentukan jumlah HSM dalam sebuah klaster yang kuncinya harus ada sebelum aplikasi Anda dapat menggunakan kunci. Membutuhkan klaster dengan minimal dua HSM.

Mengelola pengaturan daya tahan kunci klien

Untuk mengelola pengaturan daya tahan kunci klien, Anda harus menggunakan alat konfigurasi untuk SDK Klien 5.

PKCS #11 library
Untuk menonaktifkan daya tahan kunci klien untuk Klien SDK 5 di Linux
  • Gunakan alat konfigurasi untuk menonaktifkan pengaturan daya tahan kunci klien.

    $ sudo /opt/cloudhsm/bin/configure-pkcs11 --disable-key-availability-check
Untuk menonaktifkan daya tahan kunci klien untuk Klien SDK 5 di Windows
  • Gunakan alat konfigurasi untuk menonaktifkan pengaturan daya tahan kunci klien.

    "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" --disable-key-availability-check
OpenSSL Dynamic Engine
Untuk menonaktifkan daya tahan kunci klien untuk Klien SDK 5 di Linux
  • Gunakan alat konfigurasi untuk menonaktifkan pengaturan daya tahan kunci klien.

    $ sudo /opt/cloudhsm/bin/configure-dyn --disable-key-availability-check
JCE provider
Untuk menonaktifkan daya tahan kunci klien untuk Klien SDK 5 di Linux
  • Gunakan alat konfigurasi untuk menonaktifkan pengaturan daya tahan kunci klien.

    $ sudo /opt/cloudhsm/bin/configure-jce --disable-key-availability-check
Untuk menonaktifkan daya tahan kunci klien untuk Klien SDK 5 di Windows
  • Gunakan alat konfigurasi untuk menonaktifkan pengaturan daya tahan kunci klien.

    "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" --disable-key-availability-check
CloudHSM CLI
Untuk menonaktifkan daya tahan kunci klien untuk Klien SDK 5 di Linux
  • Gunakan alat konfigurasi untuk menonaktifkan pengaturan daya tahan kunci klien.

    $ sudo /opt/cloudhsm/bin/configure-cli --disable-key-availability-check
Untuk menonaktifkan daya tahan kunci klien untuk Klien SDK 5 di Windows
  • Gunakan alat konfigurasi untuk menonaktifkan pengaturan daya tahan kunci klien.

    "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" --disable-key-availability-check

Dalam SDK Klien 3, sinkronisasi kunci sebagian besar merupakan proses otomatis, tetapi Anda dapat menggunakan pengaturan daya tahan kunci klien untuk membuat kunci lebih tahan lama. Anda menentukan jumlah HSM yang pembuatan kuncinya harus berhasil untuk keseluruhan operasi agar dianggap sukses. Sinkronisasi sisi klien selalu melakukan upaya terbaik untuk mengkloning kunci ke setiap HSM di klaster, apa pun pengaturan yang Anda pilih. Pengaturan Anda memberlakukan pembuatan kunci pada jumlah HSM yang Anda tentukan. Jika Anda menentukan nilai dan sistem tidak dapat mereplikasi kunci ke jumlah HSM tersebut, maka sistem secara otomatis membersihkan materi kunci yang tidak diinginkan dan Anda dapat mencoba lagi.

penting

Jika Anda tidak mengatur pengaturan daya tahan kunci klien (atau jika Anda menggunakan nilai default 1), kunci Anda rentan terhadap kehilangan. Jika HSM Anda saat ini harus gagal sebelum layanan sisi server mengkloning kunci itu ke HSM lain, Anda kehilangan materi kunci.

Untuk memaksimalkan daya tahan utama, pertimbangkan untuk menentukan setidaknya dua HSM untuk sinkronisasi sisi klien. Ingat bahwa tidak peduli berapa banyak HSM yang Anda tentukan, beban kerja pada klaster Anda tetap sama. Sinkronisasi sisi klien selalu membuat upaya terbaik untuk mengkloning kunci ke setiap HSM di klaster.

Rekomendasi

  • Minimum: Dua HSM per klaster

  • Maksimum: Satu lebih sedikit dari jumlah total HSM di klaster

Jika sinkronisasi sisi klien gagal, layanan klien membersihkan kunci yang tidak diinginkan yang mungkin telah dibuat dan sekarang tidak diinginkan. Pembersihan ini adalah respon upaya terbaik yang mungkin tidak selalu bekerja. Jika pembersihan gagal, Anda mungkin harus menghapus materi kunci yang tidak diinginkan. Untuk informasi selengkapnya, lihat Kegagalan Sinkronisasi Kunci.

Menyiapkan file konfigurasi untuk daya tahan kunci klien

Untuk menentukan pengaturan daya tahan kunci klien, Anda harus mengedit cloudhsm_client.cfg.

Untuk mengedit konfigurasi klien
  1. Buka cloudhsm_client.cfg.

    Linux:

    /opt/cloudhsm/etc/cloudhsm_client.cfg

    Windows:

    C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_client.cfg
  2. Di simpul client dari file, tambahkan create_object_minimum_nodes dan tentukan nilai untuk jumlah minimum HSM tempat AWS CloudHSM harus berhasil membuat kunci untuk operasi pembuatan kunci agar berhasil.

    "create_object_minimum_nodes" : 2
    catatan

    Alat baris perintah key_mgmt_util (KMU) memiliki pengaturan tambahan untuk daya tahan kunci klien. Untuk informasi selengkapnya, lihat KMU dan sinkronisasi sisi klien

Referensi konfigurasi

Ini adalah properti sinkronisasi sisi klien, ditampilkan dalam kutipan cloudhsm_client.cfg:

{ "client": { "create_object_minimum_nodes" : 2, ... }, ... }
create_object_minimum_nodes

Menentukan jumlah minimum HSM yang diperlukan untuk menganggap operasi pembuatan kunci, impor kunci, atau pembukaan kunci sukses. Default diatur ke 1. Ini berarti bahwa untuk setiap operasi membuat kunci, layanan sisi klien mencoba untuk membuat kunci pada setiap HSM di klaster, tetapi untuk kembali sukses, hanya perlu untuk membuat satu kunci tunggal pada satu HSM di klaster.

KMU dan sinkronisasi sisi klien

Jika Anda membuat kunci dengan alat baris perintah key_mgmt_util (KMU), Anda menggunakan parameter baris perintah opsional (-min_srv) untuk membatasi bilangan HSM untuk mengkloning kunci. Jika Anda menentukan parameter baris perintah dan nilai dalam file konfigurasi, AWS CloudHSMmenghormati LEBIH dari dua nilai.

Untuk informasi selengkapnya, lihat topik berikut:

Menyinkronkan kunci di seluruh cluster kloning

Sinkronisasi sisi klien dan sisi server hanya untuk menyinkronkan kunci dalam klaster yang sama. Jika Anda menyalin cadangan klaster ke wilayah lain, Anda dapat menggunakan perintah syncKey dari cloudhsm_mgmt_util (CMU) untuk menyinkronkan kunci di antara klaster. Anda mungkin menggunakan kloning klaster untuk redundansi lintas wilayah atau untuk menyederhanakan proses pemulihan bencana Anda. Untuk informasi selengkapnya, lihat syncKey.