Menyiapkan otentikasi kuorum untuk admin menggunakan Cloud AWS CloudHSM HSM CLI - AWS CloudHSM

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

Menyiapkan otentikasi kuorum untuk admin menggunakan Cloud AWS CloudHSM HSM CLI

Topik berikut menjelaskan langkah-langkah yang harus Anda selesaikan untuk mengonfigurasi modul keamanan perangkat keras Anda (HSM) sehingga AWS CloudHSM admin dapat menggunakan otentikasi kuorum. Anda perlu melakukan langkah-langkah ini hanya sekali ketika Anda pertama kali mengonfigurasi otentikasi kuorum untuk admin. Setelah Anda menyelesaikan langkah ini, lihat Manajemen pengguna dengan otentikasi kuorum diaktifkan untuk menggunakan Cloud AWS CloudHSM HSM CLI.

Prasyarat

Untuk memahami contoh ini, Anda harus terbiasa dengan Cloud HSM CLI. Dalam contoh ini, AWS CloudHSM cluster memiliki duaHSMs, masing-masing dengan admin yang sama, seperti yang ditunjukkan pada output berikut dari perintah. user list Untuk informasi selengkapnya tentang membuat pengguna, lihat Manajemen pengguna dengan Cloud HSM CLI.

aws-cloudhsm>user list { "error_code": 0, "data": { "users": [ { "username": "admin", "role": "admin", "locked": "false", "mfa": [], "quorum": [], "cluster-coverage": "full" }, { "username": "admin2", "role": "admin", "locked": "false", "mfa": [], "quorum": [], "cluster-coverage": "full" }, { "username": "admin3", "role": "admin", "locked": "false", "mfa": [], "quorum": [], "cluster-coverage": "full" }, { "username": "admin4", "role": "admin", "locked": "false", "mfa": [], "quorum": [], "cluster-coverage": "full" }, { "username": "app_user", "role": "internal(APPLIANCE_USER)", "locked": "false", "mfa": [], "quorum": [], "cluster-coverage": "full" } ] } }

Langkah 1. Buat dan daftarkan kunci untuk penandatanganan

Untuk menggunakan otentikasi kuorum, setiap admin harus menyelesaikan semua langkah berikut:

Buat RSA key pair

Ada banyak cara berbeda untuk membuat dan melindungi pasangan kunci. Contoh berikut menunjukkan bagaimana melakukannya dengan Open SSL.

contoh — Buat kunci pribadi dengan Buka SSL

Contoh berikut menunjukkan cara menggunakan Open SSL untuk membuat RSA kunci 2048-bit yang dilindungi oleh frasa lulus. Untuk menggunakan contoh ini, ganti <admin.key> dengan nama file tempat Anda ingin menyimpan kuncinya.

$ openssl genrsa -out <admin.key> -aes256 2048 Generating RSA private key, 2048 bit long modulus .....................................+++ .+++ e is 65537 (0x10001) Enter pass phrase for admin.key: Verifying - Enter pass phrase for admin.key:

Berikutnya, hasilkan kunci publik menggunakan kunci privat yang baru saja Anda buat.

contoh — Buat kunci publik dengan Open SSL

Contoh berikut menunjukkan cara menggunakan Open SSL untuk membuat kunci publik dari kunci pribadi yang baru saja Anda buat.

$ openssl rsa -in admin.key -outform PEM -pubout -out admin1.pub Enter pass phrase for admin.key: writing RSA key

Membuat dan menandatangani token pendaftaran

Anda membuat token dan menandatanganinya dengan kunci privat yang baru saja Anda hasilkan pada langkah sebelumnya.

contoh — Buat token pendaftaran
  1. Gunakan perintah berikut untuk memulai Cloud HSMCLI:

    Linux
    $ /opt/cloudhsm/bin/cloudhsm-cli interactive
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\> .\cloudhsm-cli.exe interactive
  2. Buat token registrasi dengan menjalankan perintah quorum token-sign generate:

    aws-cloudhsm > quorum token-sign generate --service registration --token /path/tokenfile { "error_code": 0, "data": { "path": "/path/tokenfile" } }
  3. Perintah quorum token-sign generate menghasilkan token registrasi di jalur file yang ditentukan. Periksa file token:

    $ cat /path/tokenfile{ "version": "2.0", "tokens": [ { "approval_data": <approval data in base64 encoding>, "unsigned": <unsigned token in base64 encoding>, "signed": "" } ] }

    File token terdiri dari yang berikut:

    • persetujuan_data: Token data acak yang dikodekan base64 yang data mentahnya tidak melebihi maksimum 245 byte.

    • unsigned: Token base64 yang dikodekan dan SHA256 di-hash dari approval _data.

    • ditandatangani: Token bertanda tangan (tanda tangan) yang disandikan base64 dari token yang tidak ditandatangani, menggunakan kunci pribadi RSA 2048-bit yang sebelumnya dibuat dengan Open. SSL

    Anda menandatangani token yang tidak ditandatangani dengan kunci pribadi untuk menunjukkan bahwa Anda memiliki akses ke kunci pribadi. Anda akan memerlukan file token pendaftaran yang diisi penuh dengan tanda tangan dan kunci publik untuk mendaftarkan admin sebagai pengguna kuorum dengan cluster. AWS CloudHSM

contoh — Tanda tangani token pendaftaran yang tidak ditandatangani
  1. Dekode token unsigned base64 yang dikodekan dan letakkan ke dalam file biner:

    $ echo -n '6BMUj6mUjjko6ZLCEdzGlWpR5sILhFJfqhW1ej3Oq1g=' | base64 -d > admin.bin
  2. Gunakan Buka SSL dan kunci pribadi untuk menandatangani token pendaftaran biner yang sekarang tidak ditandatangani dan membuat file tanda tangan biner:

    $ openssl pkeyutl -sign \ -inkey admin.key \ -pkeyopt digest:sha256 \ -keyform PEM \ -in admin.bin \ -out admin.sig.bin
  3. Mengkodekan tanda tangan biner ke base64:

    $ base64 -w0 admin.sig.bin > admin.sig.b64
  4. Salin dan tempel tanda tangan yang dikodekan base64 ke dalam file token:

    { "version": "2.0", "tokens": [ { "approval_data": <approval data in base64 encoding>, "unsigned": <unsigned token in base64 encoding>, "signed": <signed token in base64 encoding> } ] }

Daftarkan kunci publik dengan HSM

Setelah membuat kunci, admin harus mendaftarkan kunci publik dengan AWS CloudHSM cluster.

Untuk mendaftarkan kunci publik dengan HSM
  1. Gunakan perintah berikut untuk memulai Cloud HSMCLI:

    Linux
    $ /opt/cloudhsm/bin/cloudhsm-cli interactive
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\> .\cloudhsm-cli.exe interactive
  2. Menggunakan Cloud HSMCLI, masuk sebagai admin.

    aws-cloudhsm > login --username admin --role admin Enter password: { "error_code": 0, "data": { "username": "admin", "role": "admin" } }
  3. Gunakan perintah Daftarkan strategi kuorum tanda token pengguna menggunakan Cloud HSM CLI untuk mendaftarkan kunci publik. Untuk informasi selengkapnya, lihat contoh berikut atau gunakan perintah help user change-quorum token-sign register.

contoh — Daftarkan kunci publik dengan AWS CloudHSM cluster

Contoh berikut menunjukkan cara menggunakan user change-quorum token-sign register perintah di Cloud HSM CLI untuk mendaftarkan kunci publik admin dengan. HSM Untuk menggunakan perintah ini, admin harus login ke fileHSM. Ganti nilai-nilai ini dengan nilai Anda sendiri:

aws-cloudhsm > user change-quorum token-sign register --public-key </path/admin.pub> --signed-token </path/tokenfile> { "error_code": 0, "data": { "username": "admin", "role": "admin" } }
catatan

/path/admin.pub: Filepath ke file kunci publik PEM

Wajib: Ya

/path/tokenfile: Filepath dengan token yang ditandatangani oleh kunci pribadi pengguna

Wajib: Ya

Setelah semua admin mendaftarkan kunci publik mereka, output dari user list perintah menunjukkan ini di bidang kuorum, yang menyatakan strategi kuorum yang diaktifkan yang digunakan, seperti yang ditunjukkan di bawah ini:

aws-cloudhsm > user list { "error_code": 0, "data": { "users": [ { "username": "admin", "role": "admin", "locked": "false", "mfa": [], "quorum": [ { "strategy": "token-sign", "status": "enabled" } ], "cluster-coverage": "full" }, { "username": "admin2", "role": "admin", "locked": "false", "mfa": [], "quorum": [ { "strategy": "token-sign", "status": "enabled" } ], "cluster-coverage": "full" }, { "username": "admin3", "role": "admin", "locked": "false", "mfa": [], "quorum": [ { "strategy": "token-sign", "status": "enabled" } ], "cluster-coverage": "full" }, { "username": "admin4", "role": "admin", "locked": "false", "mfa": [], "quorum": [ { "strategy": "token-sign", "status": "enabled" } ], "cluster-coverage": "full" }, { "username": "app_user", "role": "internal(APPLIANCE_USER)", "locked": "false", "mfa": [], "quorum": [], "cluster-coverage": "full" } ] } }

Langkah 2. Tetapkan nilai minimum kuorum pada HSM

Untuk menggunakan otentikasi kuorum, admin harus masuk ke HSM dan kemudian menetapkan nilai minimum kuorum. Ini adalah jumlah minimum persetujuan admin yang diperlukan untuk melakukan operasi manajemen HSM pengguna. Setiap admin HSM dapat menetapkan nilai minimum kuorum, termasuk admin yang belum mendaftarkan kunci untuk penandatanganan. Anda dapat mengubah nilai minimum kuorum kapan saja. untuk informasi lebih lanjut, lihat. Ubah nilai minimum

Untuk menetapkan nilai minimum kuorum pada HSM
  1. Gunakan perintah berikut untuk memulai Cloud HSMCLI:

    Linux
    $ /opt/cloudhsm/bin/cloudhsm-cli interactive
    Windows
    C:\Program Files\Amazon\CloudHSM\bin\> .\cloudhsm-cli.exe interactive
  2. Menggunakan Cloud HSMCLI, masuk sebagai admin.

    aws-cloudhsm > login --username admin --role admin Enter password: { "error_code": 0, "data": { "username": "admin", "role": "admin" } }
  3. Gunakan perintah Perbarui nilai kuorum menggunakan Cloud HSM CLI untuk menetapkan nilai minimum kuorum. Untuk informasi selengkapnya, lihat contoh berikut atau gunakan perintah help quorum token-sign set-quorum-value.

contoh — Tetapkan nilai minimum kuorum pada HSM

Contoh ini menggunakan nilai minimum kuorum dua (2). Anda dapat memilih nilai apa pun dari dua (2) hingga delapan (8), hingga jumlah total admin pada. HSM Dalam contoh ini, HSM memiliki empat (4) admin, sehingga nilai maksimum yang mungkin adalah empat (4).

Untuk menggunakan perintah contoh berikut, ganti nomor akhir (<2>) dengan nilai minimum kuorum yang disukai.

aws-cloudhsm > quorum token-sign set-quorum-value --service user --value <2> { "error_code": 0, "data": "Set quorum value successful" }

Dalam contoh ini, layanan mengidentifikasi layanan yang nilai minimum kuorumnya Anda tetapkan. HSM Tampilkan nilai kuorum menggunakan Cloud HSM CLIPerintah mencantumkan jenis HSM layanan, nama, dan deskripsi yang disertakan dalam layanan.

Layanan Admin: Otentikasi kuorum digunakan untuk layanan istimewa admin seperti membuat pengguna, menghapus pengguna, mengubah kata sandi pengguna, mengatur nilai kuorum, dan menonaktifkan kuorum dan kemampuan. MFA

Setiap jenis layanan selanjutnya dipecah menjadi nama layanan yang memenuhi syarat, yang berisi serangkaian operasi layanan yang didukung kuorum tertentu yang dapat dilakukan.

Nama layanan Jenis layanan Operasi layanan
user Admin
  • pengguna membuat

  • menghapus pengguna

  • perubahan kata sandi pengguna

  • perubahan pengguna-mfa

kuorum Admin
  • tanda token kuorum set-quorum-value

kluster 1 Admin
  • kluster mtls register-trust-anchor

  • kluster mtls deregister-trust-anchor

  • cluster mtls set-penegakan

[1] Layanan cluster tersedia secara eksklusif di hsm2m.medium

Untuk mendapatkan nilai minimum kuorum untuk layanan, gunakan perintah: quorum token-sign list-quorum-values

aws-cloudhsm > quorum token-sign list-quorum-values { "error_code": 0, "data": { "user": 2, "quorum": 1 } }

Output dari quorum token-sign list-quorum-values perintah sebelumnya menunjukkan bahwa nilai minimum kuorum untuk layanan HSM pengguna, yang bertanggung jawab untuk operasi manajemen pengguna, sekarang dua (2). Setelah Anda menyelesaikan langkah ini, lihat Manajemen pengguna dengan kuorum (M dari N).