

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

# Manajemen pengguna HSM dengan CloudHSM Management Utility (CMU)
<a name="manage-hsm-users-cmu"></a>

 Untuk mengelola pengguna modul keamanan perangkat keras (HSM) AWS CloudHSM, Anda harus masuk ke HSM dengan nama pengguna dan kata sandi [petugas kriptografi](understanding-users-cmu.md#crypto-officer) (CO). Hanya COs dapat mengelola pengguna. HSM berisi CO default bernama admin. Anda mengatur kata sandi untuk admin ketika Anda [mengaktifkan klaster](activate-cluster.md). 

Topik ini memberikan step-by-step instruksi dan detail tentang mengelola pengguna HSM dengan AWS CloudHSM Management Utility (CMU). 

**Topics**
+ [Prasyarat](understand-users.md)
+ [Jenis pengguna](understanding-users-cmu.md)
+ [Tabel izin](user-permissions-table-cmu.md)
+ [Buat pengguna](create-users-cmu.md)
+ [Daftar semua pengguna](list-users.md)
+ [Ubah kata sandi](change-user-password-cmu.md)
+ [Hapus pengguna](delete-user.md)
+ [Kelola pengguna 2FA](manage-2fa.md)
+ [Menggunakan CMU untuk mengelola otentikasi kuorum](quorum-authentication.md)

# Prasyarat untuk manajemen pengguna di Utilitas Manajemen AWS CloudHSM
<a name="understand-users"></a>

Sebelum Anda menggunakan AWS CloudHSM Management Utility (CMU) untuk mengelola pengguna modul keamanan perangkat keras (HSM) AWS CloudHSM, Anda harus menyelesaikan prasyarat ini. Topik berikut menjelaskan memulai dengan CMU.

**Topics**
+ [Dapatkan alamat IP HSM di AWS CloudHSM](#user-cmu-prereq-ip)
+ [Menggunakan CMU dengan Client SDK 3.2.1 dan sebelumnya](#downlevel-cmu)
+ [Unduh Utilitas Manajemen CloudHSM](#get-cli-users-cmu)

## Dapatkan alamat IP HSM di AWS CloudHSM
<a name="user-cmu-prereq-ip"></a>

 Untuk menggunakan CMU, Anda harus menggunakan alat konfigurasi untuk memperbarui konfigurasi lokal. CMU membuat koneksi sendiri ke klaster dan koneksi ini *tidak* sadar klaster. Untuk melacak informasi klaster, CMU mempertahankan file konfigurasi lokal. Ini berarti bahwa *setiap kali* Anda menggunakan CMU, Anda harus terlebih dahulu memperbarui file konfigurasi dengan menjalankan [konfigurasi](configure-tool.md) alat baris perintah dengan parameter `--cmu`. Jika Anda menggunakan klien SDK 3.2.1 atau sebelumnya, Anda harus menggunakan parameter yang berbeda dari `--cmu`. Untuk informasi lebih lanjut, lihat [Menggunakan CMU dengan Client SDK 3.2.1 dan sebelumnya](#downlevel-cmu). 

 Parameter `--cmu` mengharuskan Anda untuk menambahkan alamat IP HSM di klaster Anda. Jika Anda memiliki beberapa HSMs, Anda dapat menggunakan alamat IP apa pun. Hal ini memastikan CMU dapat menyebarkan perubahan yang Anda buat di seluruh klaster. Ingat bahwa CMU menggunakan file lokal untuk melacak informasi klaster. Jika klaster telah berubah sejak terakhir kali Anda menggunakan CMU dari host tertentu, Anda harus menambahkan perubahan tersebut ke file konfigurasi lokal yang disimpan di host tersebut. Jangan pernah menambahkan atau menghapus HSM saat Anda menggunakan CMU. 

**Untuk mendapatkan alamat IP untuk HSM (konsol)**

1. Buka AWS CloudHSM konsol di [https://console.aws.amazon.com/cloudhsm/rumah](https://console.aws.amazon.com/cloudhsm/home).

1. Untuk mengubah Wilayah AWS, gunakan pemilih Wilayah di sudut kanan atas halaman.

1. Untuk membuka halaman detail klaster, dalam tabel klaster, pilih ID klaster.

1. Untuk mendapatkan alamat IP, buka HSMs tab. Untuk IPv4 cluster, pilih alamat yang tercantum di bawah ** IPv4 alamat ENI**. **Untuk cluster dual-stack gunakan ENI IPv4 atau alamat ENI. IPv6 ** 

**Untuk mendapatkan alamat IP untuk HSM ()AWS CLI**
+ Dapatkan alamat IP dari HSM dengan menggunakan perintah **[describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html)** dari AWS CLI. Dalam output dari perintah, alamat IP dari HSMs adalah nilai-nilai `EniIp` dan `EniIpV6` (jika itu adalah cluster dual-stack). 

  ```
  $ aws cloudhsmv2 describe-clusters
  {
      "Clusters": [
          { ... }
              "Hsms": [
                  {
  ...
                      "EniIp": "10.0.0.9",
  ...
                  },
                  {
  ...
                      "EniIp": "10.0.1.6",
                      "EniIpV6": "2600:113f:404:be09:310e:ed34:3412:f733",
  ...
  ```

## Menggunakan CMU dengan Client SDK 3.2.1 dan sebelumnya
<a name="downlevel-cmu"></a>

Dengan Client SDK 3.3.0, AWS CloudHSM menambahkan dukungan untuk `--cmu` parameter, yang menyederhanakan proses memperbarui file konfigurasi untuk CMU. Jika Anda menggunakan versi CMU dari SDK Klien 3.2.1 atau sebelumnya, Anda harus terus menggunakan parameter `-a` dan `-m` untuk memperbarui file konfigurasi. Untuk informasi selengkapnya tentang parameter ini, lihat [Alat konfigurasi](configure-tool.md).

## Unduh Utilitas Manajemen CloudHSM
<a name="get-cli-users-cmu"></a>

Versi terbaru CMU tersedia untuk tugas manajemen pengguna HSM apakah Anda menggunakan SDK Klien 5 dan SDK Klien 3. 

**Untuk mengunduh dan menginstal CMU**
+ Unduh dan instal CMU.

------
#### [ Amazon Linux ]

  ```
  $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL6/cloudhsm-mgmt-util-latest.el6.x86_64.rpm
  ```

  ```
  $ sudo yum install ./cloudhsm-mgmt-util-latest.el6.x86_64.rpm
  ```

------
#### [ Amazon Linux 2 ]

  ```
  $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-mgmt-util-latest.el7.x86_64.rpm
  ```

  ```
  $ sudo yum install ./cloudhsm-mgmt-util-latest.el7.x86_64.rpm
  ```

------
#### [ CentOS 7.8\$1 ]

  ```
  $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-mgmt-util-latest.el7.x86_64.rpm
  ```

  ```
  $ sudo yum install ./cloudhsm-mgmt-util-latest.el7.x86_64.rpm
  ```

------
#### [ CentOS 8.3\$1 ]

  ```
  $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-mgmt-util-latest.el8.x86_64.rpm
  ```

  ```
  $ sudo yum install ./cloudhsm-mgmt-util-latest.el8.x86_64.rpm
  ```

------
#### [ RHEL 7 (7.8\$1) ]

  ```
  $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-mgmt-util-latest.el7.x86_64.rpm
  ```

  ```
  $ sudo yum install ./cloudhsm-mgmt-util-latest.el7.x86_64.rpm
  ```

------
#### [ RHEL 8 (8.3\$1) ]

  ```
  $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-mgmt-util-latest.el8.x86_64.rpm
  ```

  ```
  $ sudo yum install ./cloudhsm-mgmt-util-latest.el8.x86_64.rpm
  ```

------
#### [ Ubuntu 16.04 LTS ]

  ```
  $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Xenial/cloudhsm-mgmt-util_latest_amd64.deb
  ```

  ```
  $ sudo apt install ./cloudhsm-mgmt-util_latest_amd64.deb
  ```

------
#### [ Ubuntu 18.04 LTS ]

  ```
  $ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Bionic/cloudhsm-mgmt-util_latest_u18.04_amd64.deb
  ```

  ```
  $ sudo apt install ./cloudhsm-mgmt-util_latest_u18.04_amd64.deb
  ```

------
#### [ Windows Server 2012 ]

  1. Unduh [Utilitas Manajemen CloudHSM](https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMManagementUtil-latest.msi)

  1. Jalankan penginstal CMU (**AWSCloudHSMManagementUtil-latest.msi**) dengan hak administratif Windows.

------
#### [ Windows Server 2012 R2 ]

  1. Unduh [Utilitas Manajemen CloudHSM](https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMManagementUtil-latest.msi)

  1. Jalankan penginstal CMU (**AWSCloudHSMManagementUtil-latest.msi**) dengan hak administratif Windows.

------
#### [ Windows Server 2016 ]

  1. Unduh [Utilitas Manajemen CloudHSM](https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMManagementUtil-latest.msi)

  1. Jalankan penginstal CMU (**AWSCloudHSMManagementUtil-latest.msi**) dengan hak administratif Windows.

------

# Jenis pengguna HSM untuk Utilitas AWS CloudHSM Manajemen
<a name="understanding-users-cmu"></a>

 *Sebagian besar operasi yang Anda lakukan pada modul keamanan perangkat keras (HSM) memerlukan kredensil pengguna HSM. AWS CloudHSM * HSM mengautentikasi setiap pengguna HSM dan setiap pengguna HSM memiliki *jenis* yang menentukan operasi yang dapat Anda lakukan pada HSM sebagai pengguna tersebut. 

**catatan**  
Pengguna HSM berbeda dari pengguna IAM. Pengguna IAM yang memiliki kredensil yang benar dapat membuat HSMs dengan berinteraksi dengan sumber daya melalui AWS API. Setelah HSM dibuat, Anda harus menggunakan kredensi pengguna HSM untuk mengautentikasi operasi pada HSM.

**Topics**
+ [Petugas prakripto (PRECO)](#preco)
+ [Petugas kripto (CO)](#crypto-officer)
+ [Pengguna kripto (CU)](#crypto-user-cmu)
+ [Pengguna alat (AU)](#appliance-user-cmu)

## Petugas prakripto (PRECO)
<a name="preco"></a>

Baik dalam utilitas manajemen cloud (CMU) dan utilitas manajemen kunci (KMU), PRECO adalah pengguna sementara yang hanya ada pada HSM pertama dalam sebuah cluster. AWS CloudHSM HSM pertama di cluster baru berisi pengguna PRECO yang menunjukkan bahwa cluster ini tidak pernah diaktifkan. Untuk [mengaktifkan cluster](activate-cluster.md), Anda menjalankan cloudhsm-cli dan menjalankan perintah. **cluster activate** Masuk ke HSM dan ubah kata sandi PRECO. Saat Anda mengubah kata sandi, pengguna ini menjadi petugas kripto (CO). 

## Petugas kripto (CO)
<a name="crypto-officer"></a>

Baik dalam utilitas manajemen cloud (CMU) dan utilitas manajemen kunci (KMU), petugas kripto (CO) dapat melakukan operasi manajemen pengguna. Misalnya, mereka dapat membuat dan menghapus pengguna dan mengubah kata sandi pengguna. Untuk informasi lebih lanjut tentang pengguna root, lihat [Tabel izin pengguna HSM untuk AWS CloudHSM Utilitas Manajemen](user-permissions-table-cmu.md). Saat Anda mengaktifkan cluster baru, pengguna berubah dari [Precto Officer](#preco) (PRECO) menjadi crypto officer (CO). 

## Pengguna kripto (CU)
<a name="crypto-user-cmu"></a>

Pengguna kripto (CU) dapat melakukan manajemen kunci dan operasi kriptografi berikut.
+ **Manajemen kunci**— Buat, hapus, bagikan, impor, dan ekspor kunci kriptografi.
+ **Operasi kriptografi**— Gunakan kunci kriptografi untuk enkripsi, dekripsi, penandatanganan, verifikasi, dan lainnya.

Untuk informasi selengkapnya, lihat [Tabel izin pengguna HSM untuk AWS CloudHSM Utilitas Manajemen](user-permissions-table-cmu.md).

## Pengguna alat (AU)
<a name="appliance-user-cmu"></a>

Pengguna alat (AU) dapat melakukan operasi kloning dan sinkronisasi pada klaster Anda. HSMs AWS CloudHSM menggunakan AU untuk menyinkronkan HSMs dalam sebuah AWS CloudHSM cluster. AU ada pada semua yang HSMs disediakan oleh AWS CloudHSM, dan memiliki izin terbatas. Untuk informasi selengkapnya, lihat [Tabel izin pengguna HSM untuk AWS CloudHSM Utilitas Manajemen](user-permissions-table-cmu.md).

AWS tidak dapat melakukan operasi apa pun pada Anda HSMs . AWS tidak dapat melihat atau memodifikasi pengguna atau kunci Anda dan tidak dapat melakukan operasi kriptografi apa pun menggunakan kunci tersebut.

# Tabel izin pengguna HSM untuk AWS CloudHSM Utilitas Manajemen
<a name="user-permissions-table-cmu"></a>

Tabel berikut mencantumkan modul keamanan perangkat keras (HSM (operasi diurutkan berdasarkan jenis pengguna HSM atau sesi yang dapat melakukan operasi di. AWS CloudHSM


|  | Petugas kripto (CO) | Pengguna Kripto (CU) | Pengguna Peralatan (AU) | Sesi Tidak Diautentikasi | 
| --- | --- | --- | --- | --- | 
| Dapatkan informasi klaster dasar¹ | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | 
| Ubah kata sandi sendiri | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | Tidak berlaku | 
| Ubah kata sandi pengguna | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | 
| Tambah, hapus pengguna | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | 
| Dapatkan status sinkronis² | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | 
| Ekstrak, masukkan benda bertopeng ³ | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | 
| Fungsi manajemen kunci | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | 
| Enkripsi, dekripsi | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | 
| Tanda tangan, verifikasi | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | 
| Hasilkan intisari dan HMACs | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[Yes\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-yes.png)Ya | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | ![\[No\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/images/icon-no.png)Tidak | 
+  [1] Informasi cluster dasar mencakup jumlah HSMs di cluster dan setiap alamat IP HSM, model, nomor seri, ID perangkat, ID firmware, dll. 
+  [2] Pengguna bisa mendapatkan satu set intisari (hash) yang sesuai dengan kunci pada HSM. Aplikasi dapat membandingkan kumpulan intisari ini untuk memahami status sinkronisasi HSMs dalam sebuah cluster. 
+  [3] Objek bertopeng adalah kunci yang dienkripsi sebelum meninggalkan HSM. Objek tidak dapat didekripsi di luar HSM. Objek hanya didekripsi setelah dimasukkan ke dalam HSM yang ada di klaster yang sama dengan HSM asalnya diekstraksi. Aplikasi dapat mengekstrak dan menyisipkan objek bertopeng untuk menyinkronkan HSMs dalam sebuah cluster. 
+  [4] Fungsi manajemen kunci termasuk membuat, menghapus, membungkus, membuka bungkusan, dan memodifikasi atribut kunci. 

# Buat pengguna HSM menggunakan Utilitas AWS CloudHSM Manajemen
<a name="create-users-cmu"></a>

Gunakan **createUser** di AWS CloudHSM Management Utility (CMU) untuk membuat pengguna baru pada modul keamanan perangkat keras (HSM). Anda harus masuk sebagai CO untuk membuat pengguna.

**Untuk membuat pengguna baru**

1. Gunakan alat konfigurasi untuk memperbarui konfigurasi CMU.

------
#### [ Linux ]

   ```
   $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\configure.exe" --cmu <IP address>
   ```

------

1. Mulai CMU.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\cloudhsm_mgmt_util.exe" C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
   ```

------

1. Masuk ke HSM sebagai pengguna CO.

   ```
   aws-cloudhsm > loginHSM CO admin co12345
   ```

   Pastikan jumlah koneksi daftar CMU cocok dengan jumlah HSMs di cluster. Jika tidak, keluar dan mulai dari awal.

1. Gunakan **createUser** untuk membuat pengguna CO bernama **example\$1officer** dengan kata sandi **password1**.

   ```
   aws-cloudhsm > createUser CO example_officer password1
   ```

   CMU menanyakan kepada Anda tentang operasi membuat pengguna.

   ```
   *************************CAUTION********************************
   This is a CRITICAL operation, should be done on all nodes in the
   cluster. AWS does NOT synchronize these changes automatically with the
   nodes on which this operation is not executed or failed, please
   ensure this operation is executed on all nodes in the cluster.
   ****************************************************************
   
   Do you want to continue(y/n)?
   ```

1. Ketik **y**.

**Untuk membuat pengguna baru**

1. Gunakan alat konfigurasi untuk memperbarui konfigurasi CMU.

------
#### [ Linux ]

   ```
   $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\configure.exe" --cmu <IP address>
   ```

------

1. Mulai CMU.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\cloudhsm_mgmt_util.exe" C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
   ```

------

1. Masuk ke HSM sebagai pengguna CO.

   ```
   aws-cloudhsm > loginHSM CO admin co12345
   ```

   Pastikan jumlah koneksi daftar CMU cocok dengan jumlah HSMs di cluster. Jika tidak, keluar dan mulai dari awal.

1. Gunakan **createUser** untuk membuat pengguna CU bernama **example\$1user** dengan kata sandi **password1**.

   ```
   aws-cloudhsm > createUser CU example_user password1
   ```

   CMU menanyakan kepada Anda tentang operasi membuat pengguna.

   ```
   *************************CAUTION********************************
   This is a CRITICAL operation, should be done on all nodes in the
   cluster. AWS does NOT synchronize these changes automatically with the
   nodes on which this operation is not executed or failed, please
   ensure this operation is executed on all nodes in the cluster.
   ****************************************************************
   
   Do you want to continue(y/n)?
   ```

1. Ketik **y**.

Untuk informasi selengkapnya tentang **createUser**, lihat [createUser](cloudhsm_mgmt_util-createUser.md).

# Daftar semua pengguna HSM di cluster menggunakan AWS CloudHSM Management Utility
<a name="list-users"></a>

 Gunakan **listUsers** perintah di AWS CloudHSM Management Utility (CMU) untuk daftar semua pengguna di AWS CloudHSM cluster. Anda tidak perlu masuk untuk menjalankan **listUsers** dan semua jenis pengguna dapat mendaftar pengguna. 

**Untuk mendaftar semua pengguna di klaster**

1. Gunakan alat konfigurasi untuk memperbarui konfigurasi CMU.

------
#### [ Linux ]

   ```
   $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\configure.exe" --cmu <IP address>
   ```

------

1. Mulai CMU.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\cloudhsm_mgmt_util.exe" C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
   ```

------

1.  Gunakan **listUsers** untuk mencantumkan semua pengguna di klaster. 

   ```
   aws-cloudhsm > listUsers
   ```

   CMU mendaftar semua pengguna di klaster.

   ```
   Users on server 0(10.0.2.9):
   Number of users found:4
   
       User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
            1              AU              app_user                                 NO               0               NO
            2              CO              example_officer                          NO               0               NO
            3              CU              example_user                             NO               0               NO
   Users on server 1(10.0.3.11):
   Number of users found:4
   
       User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
            1              AU              app_user                                 NO               0               NO
            2              CO              example_officer                          NO               0               NO
            3              CU              example_user                             NO               0               NO
   Users on server 2(10.0.1.12):
   Number of users found:4
   
       User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
            1              AU              app_user                                 NO               0               NO
            2              CO              example_officer                          NO               0               NO
            3              CU              example_user                             NO               0               NO
   ```

Untuk informasi lebih lanjut tentang **listUsers**, lihat [listUsers](cloudhsm_mgmt_util-listUsers.md).

# Ubah kata sandi pengguna HSM menggunakan Utilitas AWS CloudHSM Manajemen
<a name="change-user-password-cmu"></a>

 Gunakan **changePswd** di AWS CloudHSM Management Utility (CMU) untuk mengubah kata sandi pengguna modul keamanan perangkat keras (HSM). 

 Jenis pengguna dan kata sandi adalah sensitif huruf besar-kecil, tetapi nama pengguna tidak sensitif huruf besar-kecil.

 CO, Pengguna kripto (CU), dan pengguna peralatan (AU) dapat mengubah kata sandi mereka sendiri. Untuk mengubah kata sandi pengguna lain, Anda harus masuk sebagai CO. Anda tidak dapat mengubah kata sandi pengguna yang saat ini login ke klien atau key\$1mgmt\$1util. 

**Untuk mengubah kata sandi Anda sendiri**

1. Gunakan alat konfigurasi untuk memperbarui konfigurasi CMU.

------
#### [ Linux ]

   ```
   $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\configure.exe" --cmu <IP address>
   ```

------

1. Mulai CMU.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\cloudhsm_mgmt_util.exe" C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
   ```

------

1. : Masuk ke HSM

   ```
   aws-cloudhsm > loginHSM CO admin co12345
   ```

   Pastikan jumlah koneksi daftar CMU cocok dengan jumlah HSMs di cluster. Jika tidak, keluar dan mulai dari awal.

1. Gunakan **changePswd** untuk mengubah kata sandi Anda sendiri. 

   ```
   aws-cloudhsm > changePswd CO example_officer <new password>
   ```

   CMU menanyakan kepada Anda tentang operasi ubah kata sandi.

   ```
   *************************CAUTION********************************
   This is a CRITICAL operation, should be done on all nodes in the
   cluster. AWS does NOT synchronize these changes automatically with the
   nodes on which this operation is not executed or failed, please
   ensure this operation is executed on all nodes in the cluster.
   ****************************************************************
   
   Do you want to continue(y/n)?
   ```

1. Ketik **y**.

   CMU menanyakan kepada Anda tentang operasi ubah kata sandi.

   ```
   Changing password for example_officer(CO) on 3 nodes
   ```

**: Ubah Kata Sandi Pengguna Lain**

1. Gunakan alat konfigurasi untuk memperbarui konfigurasi CMU.

------
#### [ Linux ]

   ```
   $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\configure.exe" --cmu <IP address>
   ```

------

1. Mulai CMU.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\cloudhsm_mgmt_util.exe" C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
   ```

------

1. Masuk ke HSM sebagai pengguna CO.

   ```
   aws-cloudhsm > loginHSM CO admin co12345
   ```

   Pastikan jumlah koneksi daftar CMU cocok dengan jumlah HSMs di cluster. Jika tidak, keluar dan mulai dari awal.

1.  Gunakan **changePswd** untuk mengubah kata sandi pengguna lain. 

   ```
   aws-cloudhsm > changePswd CU example_user <new password>
   ```

   CMU menanyakan kepada Anda tentang operasi ubah kata sandi.

   ```
   *************************CAUTION********************************
   This is a CRITICAL operation, should be done on all nodes in the
   cluster. AWS does NOT synchronize these changes automatically with the
   nodes on which this operation is not executed or failed, please
   ensure this operation is executed on all nodes in the cluster.
   ****************************************************************
   
   Do you want to continue(y/n)?
   ```

1. Ketik **y**.

   CMU menanyakan kepada Anda tentang operasi ubah kata sandi.

   ```
   Changing password for example_user(CU) on 3 nodes
   ```

Untuk informasi lebih lanjut tentang **changePswd**, lihat [changePswd](cloudhsm_mgmt_util-changePswd.md).

# Hapus pengguna HSM menggunakan Utilitas AWS CloudHSM Manajemen
<a name="delete-user"></a>

Gunakan **deleteUser** di AWS CloudHSM Management Utility (CMU) untuk menghapus pengguna modul keamanan perangkat keras (HSM). Anda harus masuk sebagai CO untuk menghapus pengguna lain.

**Tip**  
 Anda tidak dapat menghapus pengguna kripto (CU) yang memiliki kunci. 

**Untuk menghapus klaster**

1. Gunakan alat konfigurasi untuk memperbarui konfigurasi CMU.

------
#### [ Linux ]

   ```
   $ sudo /opt/cloudhsm/bin/configure --cmu <IP address>
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\configure.exe" --cmu <IP address>
   ```

------

1. Mulai CMU.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\cloudhsm_mgmt_util.exe" C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_mgmt_util.cfg
   ```

------

1. Masuk ke HSM sebagai pengguna CO.

   ```
   aws-cloudhsm > loginHSM CO admin co12345
   ```

   Pastikan jumlah koneksi daftar CMU cocok dengan jumlah HSMs di cluster. Jika tidak, keluar dan mulai dari awal.

1.  Gunakan **deleteUser** untuk menghapus pengguna. 

   ```
   aws-cloudhsm > deleteUser CO example_officer
   ```

   CMU menghapus pengguna.

   ```
   Deleting user example_officer(CO) on 3 nodes
   deleteUser success on server 0(10.0.2.9)
   deleteUser success on server 1(10.0.3.11)
   deleteUser success on server 2(10.0.1.12)
   ```

Untuk informasi selengkapnya tentang **deleteUser**, lihat [deleteUser](cloudhsm_mgmt_util-deleteUser.md).

# Kelola 2FA untuk pengguna yang menggunakan AWS CloudHSM Management Utility
<a name="manage-2fa"></a>

Untuk meningkatkan keamanan, Anda dapat mengonfigurasi otentikasi dua faktor (2FA) untuk membantu melindungi klaster. AWS CloudHSM Anda hanya dapat mengaktifkan 2FA untuk petugas kripto (CO). 

Saat Anda masuk ke klaster dengan akun modul layanan perangkat keras (HSM) yang mendukung 2FA, Anda menyediakan cloudhsm\$1mgmt\$1util (CMU) dengan kata sandi Anda—faktor pertama, apa yang Anda tahu—dan CMU memberi Anda token dan meminta Anda untuk menandatangani token. Untuk menyediakan faktor kedua—apa yang Anda miliki—Anda tandatangani token dengan kunci privat dari pasangan kunci yang telah Anda buat dan terkait dengan pengguna HSM. Untuk mengakses klaster, Anda memberikan token ditandatangani untuk CMU.

**catatan**  
Anda tidak dapat mengaktifkan 2FA untuk pengguna kripto (CU) atau aplikasi. Autentikasi dua faktor (2FA) hanya untuk pengguna CO.

**Topics**
+ [Otentikasi kuorum](quorum-2fa.md)
+ [Persyaratan pasangan kunci](enable-2fa-kms.md)
+ [Buat pengguna](create-2fa.md)
+ [Kelola pengguna 2FA](rotate-2fa.md)
+ [Nonaktifkan 2FA](disable-2fa.md)
+ [Referensi konfigurasi](reference-2fa.md)

# Otentikasi kuorum dan 2FA dalam AWS CloudHSM cluster menggunakan Management Utility AWS CloudHSM
<a name="quorum-2fa"></a>

Cluster menggunakan kunci yang sama untuk otentikasi kuorum dan untuk otentikasi dua faktor 2FA). Ini berarti pengguna dengan 2FA diaktifkan secara efektif terdaftar untuk M-of-N-access -control (mOFN). Untuk berhasil menggunakan autentikasi 2FA dan kuorum untuk pengguna HSM yang sama, pertimbangkan hal-hal berikut:
+ Jika Anda menggunakan autentikasi kuorum untuk pengguna saat ini, Anda harus menggunakan pasangan kunci yang sama yang Anda buat untuk pengguna kuorum untuk mengaktifkan 2FA untuk pengguna tersebut. 
+ Jika Anda menambahkan persyaratan 2FA untuk pengguna non-2FA yang bukan pengguna autentikasi kuorum, maka Anda mendaftarkan pengguna itu sebagai pengguna MofN dengan autentikasi 2FA.
+ Jika Anda menghapus persyaratan 2FA atau mengubah kata sandi untuk pengguna 2FA yang juga pengguna autentikasi kuorum, Anda juga akan menghapus pendaftaran pengguna kuorum sebagai pengguna MofN.
+ Jika Anda menghapus persyaratan 2FA atau mengubah kata sandi untuk pengguna 2FA yang juga pengguna autentikasi kuorum, tetapi Anda *masih ingin pengguna tersebut berpartisipasi dalam autentikasi kuorum*, maka Anda harus mendaftarkan pengguna tersebut lagi sebagai pengguna MofN.

Untuk informasi selengkapnya tentang autentikasi kuorum, lihat [Menggunakan CMU untuk mengelola otentikasi kuorum](quorum-authentication.md).

# Persyaratan 2FA key pair untuk AWS CloudHSM menggunakan AWS CloudHSM Management Utility
<a name="enable-2fa-kms"></a>

Untuk mengaktifkan otentikasi dua faktor (2FA) untuk pengguna modul keamanan AWS CloudHSM perangkat keras (HSM), gunakan kunci yang memenuhi persyaratan berikut. 

Anda dapat membuat pasangan kunci baru atau menggunakan kunci yang sudah ada yang memenuhi persyaratan berikut. 
+ Tipe kunci: Asimetris
+ Penggunaan kunci: Tanda Tangan dan Verifikasi
+ Spesifikasi kunci: RSA\$12048
+ Algoritme penandatanganan meliputi: 
  + `sha256WithRSAEncryption`

**catatan**  
Jika Anda menggunakan autentikasi kuorum atau berencana untuk menggunakan autentikasi kuorum, lihat [Otentikasi kuorum dan 2FA dalam AWS CloudHSM cluster menggunakan Management Utility AWS CloudHSM](quorum-2fa.md).

# Buat pengguna dengan 2FA diaktifkan untuk pengguna AWS CloudHSM Management Utility
<a name="create-2fa"></a>

Gunakan AWS CloudHSM Management Utility CMU (CMU) dan key pair untuk membuat pengguna kantor kripto (CO) baru dengan otentikasi dua faktor (2FA) diaktifkan.

**Untuk membuat pengguna CO dengan 2FA diaktifkan**

1. Dalam satu terminal, lakukan langkah-langkah berikut:

   1. Akses HSM Anda dan masuk ke utilitas Manajemen CloudHSM:

      ```
      /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
      ```

   1. Masuk sebagai CO dan gunakan perintah berikut untuk membuat MFA pengguna baru dengan 2FA:

      ```
      aws-cloudhsm > createUser CO MFA <CO USER PASSWORD> -2fa /home/ec2-user/authdata
      *************************CAUTION********************************
      This is a CRITICAL operation, should be done on all nodes in the
      cluster. AWS does NOT synchronize these changes automatically with the 
      nodes on which this operation is not executed or failed, please 
      ensure this operation is executed on all nodes in the cluster.  
      ****************************************************************
      
      Do you want to continue(y/n)? y
      
      Creating User exampleuser3(CO) on 1 nodesAuthentication data written to: "/home/ec2-user/authdata"Generate Base64-encoded signatures for SHA256 digests in the authentication datafile. 
      To generate the signatures, use the RSA private key, which is the second factor ofauthentication for this user. Paste the signatures and the corresponding public keyinto the authentication data file and provide 
      the file path below.Leave this field blank to use the path initially provided.Enter filename:
      ```

   1. Biarkan terminal di atas dalam keadaan ini. Jangan tekan enter atau masukkan nama file apa pun.

1. Di terminal lain, lakukan langkah-langkah berikut:

   1. Akses HSM Anda dan masuk ke utilitas Manajemen CloudHSM:

      ```
      /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
      ```

   1. Buat pasangan kunci publik-pribadi menggunakan perintah berikut:

      ```
      openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
      ```

      ```
      openssl rsa -pubout -in private_key.pem -out public_key.pem
      ```

   1. Jalankan perintah berikut untuk menginstal fitur kueri json untuk mengekstrak Digest dari file authdata:

      ```
      sudo yum install jq
      ```

   1. Untuk mengekstrak nilai intisari, pertama-tama temukan data berikut di file authdata:

      ```
      {
        "Version":"1.0",
        "PublicKey":"",
        "Data":[
          {
            "HsmId": <"HSM ID">,
            "Digest": <"DIGEST">,
            "Signature": ""
          }
        ]
      }
      ```
**catatan**  
Digest yang diperoleh dikodekan base64, namun untuk menandatangani intisari, Anda perlu file yang akan diterjemahkan terlebih dahulu dan kemudian ditandatangani. Perintah berikut akan memecahkan kode intisari dan menyimpan konten yang diterjemahkan dalam 'digest1.bin'  

      ```
      cat authdata | jq '.Data[0].Digest' | cut -c2- | rev | cut -c2- | rev | base64 -d > digest1.bin
      ```

   1. Konversikan konten kunci publik, tambahkan "\$1n" dan hapus spasi seperti yang ditunjukkan di sini:

      ```
      -----BEGIN PUBLIC KEY-----\n<PUBLIC KEY>\n-----END PUBLIC KEY----- 
      ```
**penting**  
Perintah di atas menunjukkan bagaimana "\$1n" ditambahkan segera setelah**BEGIN PUBLIC KEY-----**, spasi antara "\$1n" dan karakter pertama dari kunci publik dihapus, "\$1n" ditambahkan sebelumnya**-----END PUBLIC KEY**, dan spasi dihapus antara "\$1n" dan akhir kunci publik.

      Ini adalah format PEM untuk kunci publik yang diterima dalam file authdata.

   1. Rekatkan konten format pem kunci publik di bagian kunci publik di file authdata.

      ```
      vi authdata
      ```

      ```
      {
        "Version":"1.0",
        "PublicKey":"-----BEGIN PUBLIC KEY-----\n<"PUBLIC KEY">\n-----END PUBLIC KEY-----",
        "Data":[    
          {      
            "HsmId":<"HSM ID">,
            "Digest":<"DIGEST">,      
            "Signature": ""   
          }  
        ]
      }
      ```

   1. Tanda tangani file token menggunakan perintah berikut:

      ```
      openssl pkeyutl -sign -in digest1.bin -inkey private_key.pem -pkeyopt digest:sha256 | base64
      Output Expected:
      <"THE SIGNATURE">
      ```
**catatan**  
Seperti yang ditunjukkan pada perintah di atas, gunakan **openssl pkeyutl** bukan **openssl dgst** untuk penandatanganan.

   1. Tambahkan intisari yang ditandatangani di File Authdata di bidang “Tanda Tangan”.

      ```
      vi authdata
      ```

      ```
      {
          "Version": "1.0",
          "PublicKey": "-----BEGIN PUBLIC KEY----- ... -----END PUBLIC KEY-----",
          "Data": [
              {
                  "HsmId": <"HSM ID">,
                  "Digest": <"DIGEST">,
                  "Signature": <"Kkdl ... rkrvJ6Q==">
              },
              {
                  "HsmId": <"HSM ID">,
                  "Digest": <"DIGEST">,
                  "Signature": <"K1hxy ... Q261Q==">
              }
          ]
      }
      ```

1. Kembali ke terminal pertama dan tekan**Enter**:

   ```
   Generate Base64-encoded signatures for SHA256 digests in the authentication datafile. To generate the signatures, use the RSA private key, 
   which is the second factor ofauthentication for this user. Paste the signatures and the corresponding public keyinto the authentication data file and provide the file path below. Leave this field blank to use the path initially provided. 
   Enter filename: >>>>> Press Enter here
   
   createUser success on server 0(10.0.1.11)
   ```

# Kelola 2FA untuk pengguna HSM menggunakan AWS CloudHSM Management Utility
<a name="rotate-2fa"></a>

Gunakan **changePswd** di AWS CloudHSM Management Utility (CMU) untuk memodifikasi otentikasi dua faktor (2FA) untuk pengguna. Setiap kali Anda mengaktifkan 2FA, Anda harus menyediakan kunci publik untuk login 2FA.

**changePswd**melakukan salah satu skenario berikut: 
+ Mengubah kata sandi untuk pengguna 2FA
+ Mengubah kata sandi untuk pengguna non-2FA
+ Tambahkan 2FA ke pengguna non-2FA
+ Hapus 2FA dari pengguna 2FA
+ Memutar kunci untuk pengguna 2FA

Anda juga dapat menggabungkan tugas. Misalnya, Anda dapat menghapus 2FA dari pengguna dan mengubah kata sandi pada saat yang sama, atau Anda mungkin memutar kunci 2FA dan mengubah kata sandi pengguna.

**Untuk mengubah password atau memutar kunci untuk pengguna CO dengan 2FA diaktifkan**

1. Gunakan CMU untuk masuk ke HSM sebagai CO dengan 2FA diaktifkan.

1.  Gunakan **changePswd** untuk mengubah kata sandi atau memutar kunci dari pengguna CO dengan 2FA diaktifkan. Gunakan parameter `-2fa` dan sertakan lokasi dalam sistem file agar sistem menulis file `authdata`. File ini termasuk digest untuk setiap HSM di klaster.

   ```
   aws-cloudhsm > changePswd CO example-user <new-password> -2fa /path/to/authdata
   ```

   CMU meminta Anda untuk menggunakan kunci privat untuk menandatangani digest di file `authdata` dan mengembalikan tanda tangan dengan kunci publik.

1. Gunakan kunci privat untuk menandatangani digest di file `authdata`, tambahkan tanda tangan dan kunci publik untuk file `authdata` berformat JSON dan kemudian memberikan CMU dengan lokasi file `authdata`. Untuk informasi lebih lanjut, lihat [Referensi konfigurasi untuk 2FA dengan Utilitas AWS CloudHSM Manajemen](reference-2fa.md).
**catatan**  
Klaster menggunakan kunci yang sama untuk autentikasi kuorum dan 2FA. Jika Anda menggunakan autentikasi kuorum atau berencana untuk menggunakan autentikasi kuorum, lihat [Otentikasi kuorum dan 2FA dalam AWS CloudHSM cluster menggunakan Management Utility AWS CloudHSM](quorum-2fa.md).

# Nonaktifkan 2FA untuk pengguna HSM menggunakan Utilitas Manajemen AWS CloudHSM
<a name="disable-2fa"></a>

Gunakan AWS CloudHSM Management Utility (CMU) untuk menonaktifkan otentikasi dua faktor (2FA) untuk pengguna modul keamanan perangkat keras HSM) di. AWS CloudHSM

**Untuk menonaktifkan 2FA untuk pengguna CO dengan 2FA diaktifkan**

1. Gunakan CMU untuk masuk ke HSM sebagai CO dengan 2FA diaktifkan.

1.  Gunakan **changePswd** untuk menghapus 2FA dari pengguna CO dengan 2FA diaktifkan. 

   ```
   aws-cloudhsm > changePswd CO example-user <new password>
   ```

   CMU meminta Anda untuk mengonfirmasi operasi perubahan kata sandi.
**catatan**  
Jika Anda menghapus persyaratan 2FA atau mengubah kata sandi untuk pengguna 2FA yang juga pengguna autentikasi kuorum, Anda juga akan menghapus pendaftaran pengguna kuorum sebagai pengguna MofN. Untuk informasi selengkapnya tentang pengguna kuorum dan 2FA, lihat [Otentikasi kuorum dan 2FA dalam AWS CloudHSM cluster menggunakan Management Utility AWS CloudHSM](quorum-2fa.md).

1. Ketik **y**.

   CMU mengonfirmasi operasi perubahan kata sandi.

# Referensi konfigurasi untuk 2FA dengan Utilitas AWS CloudHSM Manajemen
<a name="reference-2fa"></a>

Berikut ini adalah contoh properti otentikasi dua faktor (2FA) dalam `authdata` file untuk permintaan yang dihasilkan AWS CloudHSM Management Utility (CMU) dan tanggapan Anda. 

```
{
    "Version": "1.0",
    "PublicKey": "-----BEGIN PUBLIC KEY----- ... -----END PUBLIC KEY-----",
    "Data": [
        {
            "HsmId": "hsm-lgavqitns2a",
            "Digest": "k5O1p3f6foQRVQH7S8Rrjcau6h3TYqsSdr16A54+qG8=",
            "Signature": "Kkdl ... rkrvJ6Q=="
        },
        {
            "HsmId": "hsm-lgavqitns2a",
            "Digest": "IyBcx4I5Vyx1jztwvXinCBQd9lDx8oQe7iRrWjBAi1w=",
            "Signature": "K1hxy ... Q261Q=="
        }
    ]
}
```

**Data**  
Simpul tingkat atas. Berisi simpul bawahan untuk setiap HSM di klaster. Muncul dalam permintaan dan tanggapan untuk semua perintah 2FA.

**Intisari**  
Ini adalah apa yang harus Anda tanda tangani untuk memberikan faktor kedua autentikasi. CMU dihasilkan dalam permintaan untuk semua perintah 2FA.

**HsmId**  
ID dari HSM Anda. Muncul dalam permintaan dan tanggapan untuk semua perintah 2FA.

**PublicKey**  
Bagian kunci publik dari pasangan kunci yang Anda buat dimasukkan sebagai string berformat PEM. Anda memasukkan ini dalam tanggapan untuk **createUser** dan **changePswd**.

**Tanda tangan**  
Digest bertanda tangan dengan encode Base 64. Anda memasukkan ini dalam tanggapan untuk semua perintah 2FA.

**Versi**  
Versi file data autentikasi berformat JSON. Muncul dalam permintaan dan tanggapan untuk semua perintah 2FA.

# Menggunakan CloudHSM Management Utility (CMU) untuk mengelola otentikasi kuorum (M of N access control)
<a name="quorum-authentication"></a>

 HSMs Dalam AWS CloudHSM klaster Anda mendukung otentikasi kuorum, yang juga dikenal sebagai M of N access control. Dengan autentikasi kuorum, tidak ada pengguna tunggal di HSM dapat melakukan operasi dikendalikan kuorum pada HSM. Sebaliknya, sejumlah minimum pengguna HSM (paling sedikit 2) harus bekerja sama untuk melakukan operasi ini. Dengan autentikasi kuorum, Anda dapat menambahkan lapisan perlindungan ekstra dengan meminta persetujuan dari lebih dari satu pengguna HSM.

Autentikasi kuorum dapat mengontrol operasi berikut:
+ Manajemen pengguna HSM oleh [petugas kripto (COs)](understanding-users-cmu.md#crypto-officer) — Membuat dan menghapus pengguna HSM, dan mengubah kata sandi pengguna HSM yang berbeda. Untuk informasi selengkapnya, lihat [Manajemen pengguna dengan otentikasi kuorum diaktifkan untuk Utilitas Manajemen AWS CloudHSM](quorum-authentication-crypto-officers.md).

Perhatikan informasi tambahan berikut tentang menggunakan autentikasi kuorum di AWS CloudHSM.
+ Pengguna HSM dapat menandatangani token kuorum mereka sendiri—yaitu, pengguna yang meminta dapat memberikan salah satu persetujuan yang diperlukan untuk otentikasi kuorum.
+ Anda memilih jumlah minimum pemberi persetujuan kuorum untuk operasi yang dikontrol kuorum. Angka terkecil yang dapat Anda pilih adalah dua (2), dan angka terbesar yang dapat Anda pilih adalah delapan (8).
+ HSM dapat menyimpan hingga 1024 token kuorum. Jika HSM sudah memiliki 1024 token ketika Anda mencoba untuk membuat yang baru, HSM membersihkan salah satu token kedaluwarsa. Secara default, token kedaluwarsa sepuluh menit setelah pembuatannya.
+ Klaster menggunakan kunci yang sama untuk autentikasi kuorum dan autentikasi dua faktor (2FA). Untuk informasi selengkapnya tentang penggunaan autentikasi kuorum dan 2FA, lihat [Autentikasi Kuorum dan 2FA](quorum-2fa.md).

Topik berikut ini menyediakan informasi lebih lanjut tentang autentikasi kuorum di AWS CloudHSM.

**Topics**
+ [Proses otentikasi kuorum](quorum-authentication-overview.md)
+ [Pengaturan pertama kali](quorum-authentication-crypto-officers-first-time-setup.md)
+ [Manajemen pengguna dengan kuorum (M dari N)](quorum-authentication-crypto-officers.md)
+ [Ubah nilai minimum](quorum-authentication-crypto-officers-change-minimum-value.md)

# Proses otentikasi kuorum untuk Utilitas Manajemen AWS CloudHSM
<a name="quorum-authentication-overview"></a>

Langkah-langkah berikut merangkum proses autentikasi kuorum. Untuk langkah-langkah dan alat tertentu, lihat [Manajemen pengguna dengan otentikasi kuorum diaktifkan untuk Utilitas Manajemen AWS CloudHSM](quorum-authentication-crypto-officers.md).

1. Setiap pengguna HSM membuat kunci asimetris untuk penandatanganan. Mereka melakukan ini di luar HSM, berhati-hati untuk melindungi kunci dengan tepat.

1. Setiap pengguna HSM masuk ke HSM dan mendaftarkan bagian publik dari kunci penandatanganan mereka (kunci publik) dengan HSM.

1. *Ketika pengguna HSM ingin melakukan operasi yang dikendalikan kuorum, setiap pengguna masuk ke HSM dan mendapatkan token kuorum.*

1. Pengguna HSM memberikan token kuorum ke satu atau lebih pengguna HSM lainnya dan meminta persetujuan mereka.

1. Pengguna HSM lainnya menyetujui dengan menggunakan kunci mereka untuk secara kriptografi menandatangani token kuorum. Hal ini terjadi di luar HSM.

1. Ketika pengguna HSM memiliki jumlah persetujuan yang diperlukan, pengguna yang sama masuk ke HSM dan memberikan token kuorum dan persetujuan (tanda tangan) ke HSM.

1. HSM menggunakan kunci publik terdaftar dari setiap penandatangan untuk memverifikasi tanda tangan. Jika tanda tangan valid, HSM menyetujui token.

1. Pengguna HSM sekarang dapat melakukan operasi dikendalikan kuorum.

# Siapkan otentikasi kuorum untuk petugas kripto AWS CloudHSM
<a name="quorum-authentication-crypto-officers-first-time-setup"></a>

Topik berikut menjelaskan langkah-langkah yang harus Anda selesaikan untuk mengonfigurasi modul keamanan perangkat keras (HSM) Anda sehingga [petugas AWS CloudHSM kripto (COs)](understanding-users-cmu.md#crypto-officer) dapat menggunakan otentikasi kuorum. Anda perlu melakukan langkah-langkah ini hanya sekali ketika Anda pertama kali mengonfigurasi otentikasi kuorum untuk. COs Setelah Anda menyelesaikan langkah ini, lihat [Manajemen pengguna dengan otentikasi kuorum diaktifkan untuk Utilitas Manajemen AWS CloudHSM](quorum-authentication-crypto-officers.md).

**Topics**
+ [Prasyarat](#quorum-crypto-officers-prerequisites)
+ [Langkah 1. Buat dan daftarkan kunci untuk penandatanganan](#quorum-crypto-officers-create-and-register-key)
+ [Langkah 2. Tetapkan nilai minimum kuorum pada HSM](#quorum-crypto-officers-set-quorum-minimum-value)

## Prasyarat
<a name="quorum-crypto-officers-prerequisites"></a>

Untuk memahami contoh ini, Anda harus familier dengan [cloudhsm\$1mgmt\$1util alat baris perintah (CMU)](cloudhsm_mgmt_util.md). Dalam contoh ini, AWS CloudHSM cluster memiliki dua HSMs, masing-masing dengan yang sama COs, seperti yang ditunjukkan pada output berikut dari **listUsers** perintah. Untuk informasi selengkapnya tentang membuat pengguna, lihat [Pengguna HSM](manage-hsm-users.md).

```
aws-cloudhsm > listUsers
Users on server 0(10.0.2.14):
Number of users found:7

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PRECO           admin                                    NO               0               NO
         2              AU              app_user                                 NO               0               NO
         3              CO              officer1                                 NO               0               NO
         4              CO              officer2                                 NO               0               NO
         5              CO              officer3                                 NO               0               NO
         6              CO              officer4                                 NO               0               NO
         7              CO              officer5                                 NO               0               NO
Users on server 1(10.0.1.4):
Number of users found:7

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PRECO           admin                                    NO               0               NO
         2              AU              app_user                                 NO               0               NO
         3              CO              officer1                                 NO               0               NO
         4              CO              officer2                                 NO               0               NO
         5              CO              officer3                                 NO               0               NO
         6              CO              officer4                                 NO               0               NO
         7              CO              officer5                                 NO               0               NO
```

## Langkah 1. Buat dan daftarkan kunci untuk penandatanganan
<a name="quorum-crypto-officers-create-and-register-key"></a>

Untuk menggunakan autentikasi kuorum, setiap CO harus melakukan *semua*langkah berikut: 

**Topics**
+ [Buat key pair RSA](#mofn-key-pair-create)
+ [Membuat dan menandatangani token pendaftaran](#mofn-registration-token)
+ [Daftarkan kunci publik dengan HSM](#mofn-register-key)

### Buat key pair RSA
<a name="mofn-key-pair-create"></a>

Ada banyak cara berbeda untuk membuat dan melindungi pasangan kunci. Contoh berikut menunjukkan cara melakukannya dengan [OpenSSL](https://www.openssl.org/).

**Example — Membuat kunci privat dengan OpenSSL**  
Contoh berikut menunjukkan bagaimana menggunakan OpenSSL untuk membuat kunci RSA 2048-bit yang dilindungi oleh frase sandi. Untuk menggunakan contoh ini, ganti *officer1.key* dengan nama file tempat Anda ingin menyimpan kunci.  

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

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

**Example — Membuat kunci privat dengan OpenSSL**  
Contoh berikut menunjukkan bagaimana menggunakan OpenSSL untuk membuat kunci publik dari kunci privat yang baru saja Anda buat.   

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

### Membuat dan menandatangani token pendaftaran
<a name="mofn-registration-token"></a>

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

**Example — Buat token**  
Token pendaftaran hanyalah sebuah file dengan data acak yang tidak melebihi ukuran maksimum 245 byte. Anda menandatangani token dengan kunci privat untuk menunjukkan bahwa Anda memiliki akses ke kunci privat. Perintah berikut menggunakan echo untuk mengalihkan string ke file.  

```
$ echo <token to be signed> > officer1.token
```

Tanda tangani token dan simpan ke file tanda tangan. Anda akan membutuhkan token ditandatangani, token belum ditandatangani, dan kunci publik untuk mendaftarkan CO sebagai pengguna MofN dengan HSM. 

**Example — Tandatangani token**  
Gunakan OpenSSL dan kunci privat untuk menandatangani token pendaftaran dan membuat file tanda tangan.  

```
$ openssl dgst -sha256 \
    -sign officer1.key \
    -out officer1.token.sig officer1.token
```

### Daftarkan kunci publik dengan HSM
<a name="mofn-register-key"></a>

Setelah membuat kunci, CO harus mendaftarkan bagian publik dari kunci (kunci publik) dengan HSM.

**Untuk mendaftarkan kunci publik dengan HSM**

1. Gunakan perintah berikut untuk memulai alat baris perintah cloudhsm\$1mgmt\$1util.

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

1. Gunakan perintah **loginHSM** untuk masuk ke HSM sebagai pengguna CO. Untuk informasi selengkapnya, lihat [Manajemen pengguna HSM dengan CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Gunakan perintah **[registerQuorumPubKey](cloudhsm_mgmt_util-registerQuorumPubKey.md)** untuk mendaftarkan kunci publik. Untuk informasi selengkapnya, lihat contoh berikut atau gunakan perintah **help registerQuorumPubKey**.

**Example — Daftarkan kunci publik dengan HSM**  
Contoh berikut menunjukkan cara menggunakan perintah **registerQuorumPubKey** di alat baris perintah cloudhsm\$1mgmt\$1util untuk mendaftar kunci publik CO dengan HSM. Untuk menggunakan perintah ini, CO harus login ke HSM. Ganti nilai-nilai ini dengan nilai Anda sendiri:  

```
aws-cloudhsm > registerQuorumPubKey CO <officer1> <officer1.token> <officer1.token.sig> <officer1.pub>
*************************CAUTION********************************
This is a CRITICAL operation, should be done on all nodes in the
cluster. AWS does NOT synchronize these changes automatically with the
nodes on which this operation is not executed or failed, please
ensure this operation is executed on all nodes in the cluster.
****************************************************************

Do you want to continue(y/n)? y
registerQuorumPubKey success on server 0(10.0.2.14)
```  
**<officer1.token>**  
Jalur ke file yang berisi token pendaftaran belum ditandatangani. Dapat memiliki data acak ukuran file max 245 byte.   
Wajib: Ya  
**<officer1.token.sig>**  
Path ke file yang berisi mekanisme SHA256 \$1PKCS ditandatangani hash dari token pendaftaran.  
Wajib: Ya  
**<officer1.pub>**  
Jalur ke file yang berisi kunci publik dari pasangan kunci RSA-2048 asimetris. Gunakan kunci privat untuk menandatangani token pendaftaran.   
Wajib: Ya
Setelah semua COs mendaftarkan kunci publik mereka, output dari **listUsers** perintah menunjukkan ini di `MofnPubKey` kolom, seperti yang ditunjukkan pada contoh berikut.  

```
aws-cloudhsm > listUsers
Users on server 0(10.0.2.14):
Number of users found:7

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PRECO           admin                                    NO               0               NO
         2              AU              app_user                                 NO               0               NO
         3              CO              officer1                                YES               0               NO
         4              CO              officer2                                YES               0               NO
         5              CO              officer3                                YES               0               NO
         6              CO              officer4                                YES               0               NO
         7              CO              officer5                                YES               0               NO
Users on server 1(10.0.1.4):
Number of users found:7

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PRECO           admin                                    NO               0               NO
         2              AU              app_user                                 NO               0               NO
         3              CO              officer1                                YES               0               NO
         4              CO              officer2                                YES               0               NO
         5              CO              officer3                                YES               0               NO
         6              CO              officer4                                YES               0               NO
         7              CO              officer5                                YES               0               NO
```

## Langkah 2. Tetapkan nilai minimum kuorum pada HSM
<a name="quorum-crypto-officers-set-quorum-minimum-value"></a>

*Untuk menggunakan otentikasi kuorum COs, CO harus masuk ke HSM dan kemudian menetapkan *nilai minimum kuorum, juga dikenal sebagai nilai* m.* Ini adalah jumlah minimum persetujuan CO yang diperlukan untuk melakukan operasi manajemen pengguna HSM. Setiap CO pada HSM dapat menetapkan nilai minimum kuorum, termasuk COs yang belum mendaftarkan kunci untuk penandatanganan. Anda dapat mengubah nilai minimum kuorum kapan saja; untuk informasi lebih lanjut, lihat[Ubah nilai minimum](quorum-authentication-crypto-officers-change-minimum-value.md).

**Untuk menetapkan nilai minimum kuorum pada HSM**

1. Gunakan perintah berikut untuk memulai alat baris perintah cloudhsm\$1mgmt\$1util.

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

1. Gunakan perintah **loginHSM** untuk masuk ke HSM sebagai pengguna CO. Untuk informasi selengkapnya, lihat [Manajemen pengguna HSM dengan CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Gunakan perintah **setMValue** untuk menetapkan nilai minimum kuorum. Untuk informasi selengkapnya, lihat contoh berikut atau gunakan perintah **help setMValue**.

**Example — Tetapkan nilai minimum kuorum pada HSM**  
Contoh ini menggunakan nilai minimum kuorum dua. Anda dapat memilih nilai dari dua (2) hingga delapan (8), hingga jumlah total COs pada HSM. Dalam contoh ini, HSM memiliki enam COs, sehingga nilai maksimum yang mungkin adalah enam.  
Untuk menggunakan perintah contoh berikut, ganti angka akhir (*2*) dengan nilai minimum kuorum yang disukai.  

```
aws-cloudhsm > setMValue 3 <2>
*************************CAUTION********************************
This is a CRITICAL operation, should be done on all nodes in the
cluster. AWS does NOT synchronize these changes automatically with the
nodes on which this operation is not executed or failed, please
ensure this operation is executed on all nodes in the cluster.
****************************************************************

Do you want to continue(y/n)? y
Setting M Value(2) for 3 on 2 nodes
```

Dalam contoh sebelumnya, nomor pertama (3) mengidentifikasi *layanan HSM* yang nilai minimum kuorumnya Anda tetapkan.

Tabel berikut mencantumkan pengenal layanan HSM bersama dengan nama, deskripsi, dan perintah yang disertakan dalam layanan.


| Pengenal Layanan | Nama Layanan | Deskripsi Layanan | Perintah HSM | 
| --- | --- | --- | --- | 
| 3 | USER\$1MGMT | Manajemen pengguna HSM |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-first-time-setup.html)  | 
| 4 | MISC\$1CO | Layanan CO lainnya |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-first-time-setup.html)  | 

Untuk mendapatkan nilai minimum kuorum untuk layanan, gunakan perintah **getMValue**, seperti dalam contoh berikut.

```
aws-cloudhsm > getMValue 3
MValue of service 3[USER_MGMT] on server 0 : [2]
MValue of service 3[USER_MGMT] on server 1 : [2]
```

Output dari perintah **getMValue** sebelumnya menunjukkan bahwa nilai minimum kuorum untuk operasi manajemen pengguna HSM (layanan 3) sekarang dua.

Setelah Anda menyelesaikan langkah ini, lihat [Manajemen pengguna dengan otentikasi kuorum diaktifkan untuk Utilitas Manajemen AWS CloudHSM](quorum-authentication-crypto-officers.md).

# Manajemen pengguna dengan otentikasi kuorum diaktifkan untuk Utilitas Manajemen AWS CloudHSM
<a name="quorum-authentication-crypto-officers"></a>

[Petugas AWS CloudHSM kripto (CO)](understanding-users-cmu.md#crypto-officer) pada modul keamanan perangkat keras (HSM) dapat mengonfigurasi otentikasi kuorum untuk operasi berikut di HSM:
+ Membuat pengguna HSM
+ Membuat pengguna HSM
+ Mengubah kata sandi pengguna HSM lainnya

Setelah HSM dikonfigurasi untuk otentikasi kuorum, COs tidak dapat melakukan operasi manajemen pengguna HSM sendiri. Contoh berikut menunjukkan output ketika CO mencoba untuk membuat pengguna baru di HSM. Perintah gagal dengan kesalahan `RET_MXN_AUTH_FAILED`, yang menunjukkan bahwa autentikasi kuorum gagal.

```
aws-cloudhsm > createUser CU user1 password
*************************CAUTION********************************
This is a CRITICAL operation, should be done on all nodes in the
cluster. AWS does NOT synchronize these changes automatically with the
nodes on which this operation is not executed or failed, please
ensure this operation is executed on all nodes in the cluster.
****************************************************************

Do you want to continue(y/n)? y
Creating User user1(CU) on 2 nodes
createUser failed: RET_MXN_AUTH_FAILED
creating user on server 0(10.0.2.14) failed

Retry/Ignore/Abort?(R/I/A): A
```

Untuk melakukan operasi manajemen pengguna HSM, CO harus menyelesaikan tugas berikut:

1. [Dapatkan* token kuorum*](#quorum-crypto-officers-get-token).

1. [Dapatkan persetujuan (tanda tangan)](#quorum-crypto-officers-get-approval-signatures) dari orang lain. COs

1. [Setujui token pada HSM](#quorum-crypto-officers-approve-token).

1. [Melakukan operasi manajemen pengguna HSM](#quorum-crypto-officers-use-token).

Jika Anda belum mengonfigurasi HSM untuk otentikasi kuorum COs, lakukan itu sekarang. Untuk informasi selengkapnya, lihat [Pengaturan pertama kali](quorum-authentication-crypto-officers-first-time-setup.md).

## Langkah 1. Dapatkan token kuorum
<a name="quorum-crypto-officers-get-token"></a>

Pertama, CO harus menggunakan alat baris perintah cloudhsm\$1mgmt\$1util untuk meminta *token kuorum*.

**Dapatkan token kuorum.**

1. Gunakan perintah berikut untuk memulai alat baris perintah cloudhsm\$1mgmt\$1util.

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

1. Gunakan perintah **loginHSM** untuk masuk ke HSM sebagai pengguna CO. Untuk informasi selengkapnya, lihat [Manajemen pengguna HSM dengan CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Gunakan **getToken** untuk mendapatkan token kuorum. Untuk informasi selengkapnya, lihat contoh berikut atau gunakan perintah **help getToken**.

**Example — Dapatkan token kuorum**  
Contoh ini mendapat token kuorum untuk CO dengan nama pengguna officer1 dan menyimpan token ke file bernama `officer1.token`. Untuk menggunakan perintah contoh berikut, ganti nilai ini dengan nilai Anda sendiri:  
+ *officer1*— Nama CO yang mendapatkan token. Ini harus CO yang sama yang login ke HSM dan menjalankan perintah ini.
+ *officer1.token*— Nama file yang akan digunakan untuk menyimpan token kuorum.
Dalam perintah berikut,`3` mengidentifikasi *layanan* yang Anda dapat gunakan dengan token yang Anda dapatkan. Dalam hal ini, token adalah untuk operasi manajemen pengguna HSM (layanan 3). Untuk informasi selengkapnya, lihat [Langkah 2. Tetapkan nilai minimum kuorum pada HSM](quorum-authentication-crypto-officers-first-time-setup.md#quorum-crypto-officers-set-quorum-minimum-value).  

```
aws-cloudhsm > getToken 3 officer1 officer1.token
getToken success on server 0(10.0.2.14)
Token:
Id:1
Service:3
Node:1
Key Handle:0
User:officer1
getToken success on server 1(10.0.1.4)
Token:
Id:1
Service:3
Node:0
Key Handle:0
User:officer1
```

## Langkah 2. Dapatkan tanda tangan dari menyetujui COs
<a name="quorum-crypto-officers-get-approval-signatures"></a>

CO yang memiliki token kuorum harus mendapatkan token yang disetujui oleh orang lain. COs Untuk memberikan persetujuan mereka, yang lain COs menggunakan kunci penandatanganan mereka untuk menandatangani token secara kriptografis. Mereka melakukan ini di luar HSM.

Ada banyak cara yang berbeda untuk menandatangani token. Contoh berikut menunjukkan cara melakukannya dengan [OpenSSL](https://www.openssl.org/). Untuk menggunakan alat penandatanganan yang berbeda, pastikan bahwa alat menggunakan kunci privat CO (kunci penandatangan) untuk menandatangani SHA-256 digest token .

**Example — Dapatkan tanda tangan dari menyetujui COs**  
Dalam contoh ini, CO yang memiliki token (officer1) membutuhkan setidaknya dua persetujuan. Contoh perintah berikut menunjukkan bagaimana dua COs dapat menggunakan OpenSSL untuk menandatangani token secara kriptografis.  
Pada perintah pertama, officer1 menandatangani tokennya sendiri. Untuk menggunakan perintah contoh berikut, ganti nilai ini dengan nilai Anda sendiri:  
+ *officer1.key*dan *officer2.key* — Nama file yang berisi kunci penandatanganan CO.
+ *officer1.token.sig1*dan *officer1.token.sig2* — Nama file yang akan digunakan untuk menyimpan tanda tangan. Pastikan untuk menyimpan setiap tanda tangan dalam file yang berbeda.
+ *officer1.token*— Nama file yang berisi token yang ditandatangani CO.

```
$ openssl dgst -sha256 -sign officer1.key -out officer1.token.sig1 officer1.token
Enter pass phrase for officer1.key:
```
Pada perintah berikut, officer2 menandatangani token yang sama.  

```
$ openssl dgst -sha256 -sign officer2.key -out officer1.token.sig2 officer1.token
Enter pass phrase for officer2.key:
```

## Langkah 3. Menyetujui token yang ditandatangani di HSM
<a name="quorum-crypto-officers-approve-token"></a>

Setelah CO mendapatkan jumlah minimum persetujuan (tanda tangan) dari yang lain COs, ia harus menyetujui token yang ditandatangani pada HSM.

**Untuk menyetujui token yang ditandatangani pada HSM**

1. Buat file persetujuan token. Untuk informasi selengkapnya, lihat contoh berikut.

1. Gunakan perintah berikut untuk memulai alat baris perintah cloudhsm\$1mgmt\$1util.

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

1. Gunakan perintah **loginHSM** untuk masuk ke HSM sebagai pengguna CO. Untuk informasi selengkapnya, lihat [Manajemen pengguna HSM dengan CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Gunakan perintah **approveToken** untuk menyetujui token yang ditandatangani, melewati file persetujuan token. Untuk informasi selengkapnya, lihat contoh berikut.

**Example — Buat file persetujuan token dan setujui token yang ditandatangani di HSM**  
File persetujuan token adalah file teks dalam format tertentu yang dibutuhkan HSM. File berisi informasi tentang token, pemberi persetujuan, dan tanda tangan pemberi persetujuan. Berikut ini adalah contoh file persetujuan token.  

```
# For "Multi Token File Path", type the path to the file that contains
# the token. You can type the same value for "Token File Path", but
# that's not required. The "Token File Path" line is required in any
# case, regardless of whether you type a value.
Multi Token File Path = officer1.token;
Token File Path = ;

# Total number of approvals
Number of Approvals = 2;

# Approver 1
# Type the approver's type, name, and the path to the file that
# contains the approver's signature.
Approver Type = 2; # 2 for CO, 1 for CU
Approver Name = officer1;
Approval File = officer1.token.sig1;

# Approver 2
# Type the approver's type, name, and the path to the file that
# contains the approver's signature.
Approver Type = 2; # 2 for CO, 1 for CU
Approver Name = officer2;
Approval File = officer1.token.sig2;
```
Setelah membuat file persetujuan token, CO menggunakan alat baris perintah cloudhsm\$1mgmt\$1util untuk masuk ke HSM. CO kemudian menggunakan perintah **approveToken** untuk menyetujui token, seperti yang ditunjukkan dalam contoh berikut. Ganti *approval.txt* dengan nama file persetujuan token.  

```
aws-cloudhsm > approveToken approval.txt
approveToken success on server 0(10.0.2.14)
approveToken success on server 1(10.0.1.4)
```
Ketika perintah ini berhasil, HSM telah menyetujui token kuorum. Untuk memeriksa status token, gunakan perintah **listTokens**, seperti yang ditunjukkan dalam contoh berikut. Output perintah menunjukkan bahwa token memiliki jumlah persetujuan yang diperlukan.  
Waktu validitas token menunjukkan berapa lama token dijamin bertahan di HSM. Bahkan setelah waktu validitas token berlalu (nol detik), Anda masih dapat menggunakan token.  

```
aws-cloudhsm > listTokens
=====================
    Server 0(10.0.2.14)
=====================
-------- Token - 0 ----------
Token:
Id:1
Service:3
Node:1
Key Handle:0
User:officer1
Token Validity: 506 sec
Required num of approvers : 2
Current num of approvals : 2
Approver-0: officer1
Approver-1: officer2
Num of tokens = 1

=====================
    Server 1(10.0.1.4)
=====================
-------- Token - 0 ----------
Token:
Id:1
Service:3
Node:0
Key Handle:0
User:officer1
Token Validity: 506 sec
Required num of approvers : 2
Current num of approvals : 2
Approver-0: officer1
Approver-1: officer2
Num of tokens = 1

listTokens success
```

## Langkah 4. Gunakan token untuk operasi manajemen pengguna
<a name="quorum-crypto-officers-use-token"></a>

Setelah CO memiliki token dengan jumlah persetujuan yang diperlukan, seperti yang ditunjukkan pada bagian sebelumnya, CO dapat melakukan salah satu operasi manajemen pengguna HSM berikut:
+ Buat pengguna HSM dengan perintah [createUser](cloudhsm_mgmt_util-createUser.md)
+ Hapus pengguna HSM dengan perintah **deleteUser**
+ Ubah kata sandi pengguna HSM yang berbeda dengan perintah **changePswd**

Untuk informasi selengkapnya tentang menggunakan perintah ini, lihat [Pengguna HSM](manage-hsm-users.md).

CO dapat menggunakan token hanya untuk satu operasi. Ketika operasi itu berhasil, token tidak lagi berlaku. Untuk melakukan operasi manajemen pengguna HSM lain, CO harus mendapatkan token kuorum baru, mendapatkan tanda tangan baru dari pemberi persetujuan, dan menyetujui token baru di HSM.

**catatan**  
Token MofN hanya berlaku selama sesi login Anda saat ini terbuka. Jika Anda keluar dari cloudhsm\$1mgmt\$1util atau sambungan jaringan terputus, token tidak lagi valid. Demikian pula, token resmi hanya dapat digunakan dalam cloudhsm\$1mgmt\$1util, tidak dapat digunakan untuk mengautentikasi dalam aplikasi yang berbeda.

Pada contoh perintah berikut, CO membuat pengguna baru pada HSM.

```
aws-cloudhsm > createUser CU user1 <password>
*************************CAUTION********************************
This is a CRITICAL operation, should be done on all nodes in the
cluster. AWS does NOT synchronize these changes automatically with the
nodes on which this operation is not executed or failed, please
ensure this operation is executed on all nodes in the cluster.
****************************************************************

Do you want to continue(y/n)? y
Creating User user1(CU) on 2 nodes
```

Setelah perintah sebelumnya berhasil, perintah **listUsers** berikutnya menunjukkan pengguna baru.

```
aws-cloudhsm > listUsers
Users on server 0(10.0.2.14):
Number of users found:8

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PCO             admin                                    NO               0               NO
         2              AU              app_user                                 NO               0               NO
         3              CO              officer1                                YES               0               NO
         4              CO              officer2                                YES               0               NO
         5              CO              officer3                                YES               0               NO
         6              CO              officer4                                YES               0               NO
         7              CO              officer5                                YES               0               NO
         8              CU              user1                                    NO               0               NO
Users on server 1(10.0.1.4):
Number of users found:8

    User Id             User Type       User Name                          MofnPubKey    LoginFailureCnt         2FA
         1              PCO             admin                                    NO               0               NO
         2              AU              app_user                                 NO               0               NO
         3              CO              officer1                                YES               0               NO
         4              CO              officer2                                YES               0               NO
         5              CO              officer3                                YES               0               NO
         6              CO              officer4                                YES               0               NO
         7              CO              officer5                                YES               0               NO
         8              CU              user1                                    NO               0               NO
```

Jika CO mencoba untuk melakukan operasi manajemen pengguna HSM lain, operasi akan gagal dengan kesalahan autentikasi kuorum, seperti yang ditunjukkan dalam contoh berikut.

```
aws-cloudhsm > deleteUser CU user1
Deleting user user1(CU) on 2 nodes
deleteUser failed: RET_MXN_AUTH_FAILED
deleteUser failed on server 0(10.0.2.14)

Retry/rollBack/Ignore?(R/B/I): I
deleteUser failed: RET_MXN_AUTH_FAILED
deleteUser failed on server 1(10.0.1.4)

Retry/rollBack/Ignore?(R/B/I): I
```

Perintah **listTokens** akan menampilkan bahwa CO tidak memiliki token yang disetujui, seperti yang ditunjukkan dalam contoh berikut. Untuk melakukan operasi manajemen pengguna HSM lain, CO harus mendapatkan token kuorum baru, mendapatkan tanda tangan baru dari pemberi persetujuan, dan menyetujui token baru pada HSM.

```
aws-cloudhsm > listTokens
=====================
    Server 0(10.0.2.14)
=====================
Num of tokens = 0

=====================
    Server 1(10.0.1.4)
=====================
Num of tokens = 0

listTokens success
```

# Ubah nilai minimum kuorum dengan AWS CloudHSM Management Utility
<a name="quorum-authentication-crypto-officers-change-minimum-value"></a>

Setelah Anda [menetapkan nilai minimum kuorum](quorum-authentication-crypto-officers-first-time-setup.md#quorum-crypto-officers-set-quorum-minimum-value) sehingga [petugas AWS CloudHSM kripto (COs)](understanding-users-cmu.md#crypto-officer) dapat menggunakan otentikasi kuorum, Anda mungkin ingin mengubah nilai minimum kuorum. HSM memungkinkan Anda mengubah nilai minimum kuorum hanya jika jumlah pemberi persetujuan sama atau lebih tinggi dari nilai minimum kuorum saat ini. Misalnya, jika nilai minimum kuorum adalah dua, setidaknya dua COs harus menyetujui untuk mengubah nilai minimum kuorum.

Untuk mendapatkan persetujuan kuorum untuk mengubah nilai minimum kuorum, Anda memerlukan *token kuorum* untuk perintah **setMValue** (layanan 4). Untuk mendapatkan token kuorum perintah **setMValue** (layanan 4), nilai minimum kuorum untuk layanan 4 harus lebih tinggi dari satu. Ini berarti bahwa sebelum Anda dapat mengubah nilai minimum kuorum untuk COs (layanan 3), Anda mungkin perlu mengubah nilai minimum kuorum untuk layanan 4.

Tabel berikut mencantumkan pengenal layanan HSM bersama dengan nama, deskripsi, dan perintah yang disertakan dalam layanan.


| Pengenal Layanan | Nama Layanan | Deskripsi Layanan | Perintah HSM | 
| --- | --- | --- | --- | 
| 3 | USER\$1MGMT | Manajemen pengguna HSM |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-change-minimum-value.html)  | 
| 4 | MISC\$1CO | Layanan CO lainnya |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/cloudhsm/latest/userguide/quorum-authentication-crypto-officers-change-minimum-value.html)  | 

**Untuk mengubah nilai minimum kuorum untuk petugas kripto**

1. Gunakan perintah berikut untuk memulai alat baris perintah cloudhsm\$1mgmt\$1util.

   ```
   $ /opt/cloudhsm/bin/cloudhsm_mgmt_util /opt/cloudhsm/etc/cloudhsm_mgmt_util.cfg
   ```

1. Gunakan perintah **loginHSM** untuk masuk ke HSM sebagai pengguna CO. Untuk informasi selengkapnya, lihat [Manajemen pengguna HSM dengan CloudHSM Management Utility (CMU)](manage-hsm-users-cmu.md).

1. Gunakan perintah **getMValue** untuk mendapatkan nilai minimum kuorum untuk layanan 3. Untuk informasi selengkapnya, lihat contoh berikut.

1. Gunakan perintah **getMValue** untuk mendapatkan nilai minimum kuorum untuk layanan 4. Untuk informasi selengkapnya, lihat contoh berikut.

1. Jika nilai minimum kuorum untuk layanan 4 lebih rendah dari nilai untuk layanan 3, gunakan perintah **setMValue** untuk mengubah nilai untuk layanan 4. Ubah nilai untuk layanan 4 ke nilai yang sama atau lebih tinggi dari nilai untuk layanan 3. Untuk informasi selengkapnya, lihat contoh berikut.

1. [Dapatkan *token kuorum*](quorum-authentication-crypto-officers.md#quorum-crypto-officers-get-token), berhati-hatilah untuk menentukan layanan 4 sebagai layanan yang dapat Anda gunakan dengan token.

1. [Dapatkan persetujuan (tanda tangan)](quorum-authentication-crypto-officers.md#quorum-crypto-officers-get-approval-signatures) dari orang lain. COs

1. [Setujui token pada HSM](quorum-authentication-crypto-officers.md#quorum-crypto-officers-approve-token).

1. Gunakan **setMValue** perintah untuk mengubah nilai minimum kuorum untuk layanan 3 (operasi manajemen pengguna dilakukan oleh COs).

**Example — Dapatkan nilai minimum kuorum dan ubah nilai untuk layanan 4**  
Contoh perintah berikut menunjukkan bahwa nilai minimum kuorum untuk layanan 3 saat ini dua.  

```
aws-cloudhsm > getMValue 3
MValue of service 3[USER_MGMT] on server 0 : [2]
MValue of service 3[USER_MGMT] on server 1 : [2]
```
Contoh perintah berikut menunjukkan bahwa nilai minimum kuorum untuk layanan 4 saat ini satu.  

```
aws-cloudhsm > getMValue 4
MValue of service 4[MISC_CO] on server 0 : [1]
MValue of service 4[MISC_CO] on server 1 : [1]
```
Untuk mengubah nilai minimum kuorum untuk layanan 4, gunakan perintah **setMValue**, menetapkan nilai yang sama atau lebih tinggi dari nilai untuk layanan 3. Contoh berikut menetapkan nilai minimum kuorum untuk layanan 4 menjadi dua (2), nilai yang sama yang ditetapkan untuk layanan 3.  

```
aws-cloudhsm > setMValue 4 2
*************************CAUTION********************************
This is a CRITICAL operation, should be done on all nodes in the
cluster. AWS does NOT synchronize these changes automatically with the
nodes on which this operation is not executed or failed, please
ensure this operation is executed on all nodes in the cluster.
****************************************************************

Do you want to continue(y/n)? y
Setting M Value(2) for 4 on 2 nodes
```
Perintah berikut menunjukkan bahwa nilai minimum kuorum sekarang adalah dua untuk layanan 3 dan layanan 4.  

```
aws-cloudhsm > getMValue 3
MValue of service 3[USER_MGMT] on server 0 : [2]
MValue of service 3[USER_MGMT] on server 1 : [2]
```

```
aws-cloudhsm > getMValue 4
MValue of service 4[MISC_CO] on server 0 : [2]
MValue of service 4[MISC_CO] on server 1 : [2]
```