Installieren Sie den JCE Anbieter für AWS CloudHSM Client SDK 3 - AWS CloudHSM

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Installieren Sie den JCE Anbieter für AWS CloudHSM Client SDK 3

Bevor Sie den JCE Anbieter verwenden können, benötigen Sie den AWS CloudHSM Client.

Der Client ist ein Daemon, der eine end-to-end verschlüsselte Kommunikation mit dem HSMs in Ihrem Cluster herstellt. Der JCE Anbieter kommuniziert lokal mit dem Client. Wenn Sie das AWS CloudHSM Client-Paket nicht installiert und konfiguriert haben, tun Sie dies jetzt, indem Sie den Schritten unter Installieren des Clients (Linux) folgen. Nachdem Sie den Client installiert und konfiguriert haben, verwenden Sie den folgenden Befehl ein, um ihn zu starten.

Beachten Sie, dass der JCE Anbieter nur unter Linux und kompatiblen Betriebssystemen unterstützt wird.

Amazon Linux
$ sudo start cloudhsm-client
Amazon Linux 2
$ sudo systemctl cloudhsm-client start
CentOS 7
$ sudo systemctl cloudhsm-client start
CentOS 8
$ sudo systemctl cloudhsm-client start
RHEL 7
$ sudo systemctl cloudhsm-client start
RHEL 8
$ sudo systemctl cloudhsm-client start
Ubuntu 16.04 LTS
$ sudo systemctl cloudhsm-client start
Ubuntu 18.04 LTS
$ sudo systemctl cloudhsm-client start
Ubuntu 20.04 LTS
$ sudo systemctl cloudhsm-client start

Verwenden Sie die folgenden Abschnitte, um den Anbieter zu installieren, zu überprüfen und Anmeldeinformationen für ihn bereitzustellen.

Schritt 1: Installieren Sie den JCE Anbieter

Verwenden Sie die folgenden Befehle, um den JCE Anbieter herunterzuladen und zu installieren. Dieser Anbieter wird nur von Linux und kompatiblen Betriebssystemen unterstützt.

Anmerkung

Informationen zum Upgraden finden Sie unter Aktualisieren Sie Client SDK 3.

Amazon Linux
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL6/cloudhsm-client-jce-latest.el6.x86_64.rpm
$ sudo yum install ./cloudhsm-client-jce-latest.el6.x86_64.rpm
Amazon Linux 2
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-client-jce-latest.el7.x86_64.rpm
$ sudo yum install ./cloudhsm-client-jce-latest.el7.x86_64.rpm
CentOS 7
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-client-jce-latest.el7.x86_64.rpm
$ sudo yum install ./cloudhsm-client-jce-latest.el7.x86_64.rpm
CentOS 8
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-client-jce-latest.el8.x86_64.rpm
$ sudo yum install ./cloudhsm-client-jce-latest.el8.x86_64.rpm
RHEL 7
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-client-jce-latest.el7.x86_64.rpm
$ sudo yum install ./cloudhsm-client-jce-latest.el7.x86_64.rpm
RHEL 8
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-client-jce-latest.el8.x86_64.rpm
$ sudo yum install ./cloudhsm-client-jce-latest.el8.x86_64.rpm
Ubuntu 16.04 LTS
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Xenial/cloudhsm-client-jce_latest_amd64.deb
$ sudo apt install ./cloudhsm-client-jce_latest_amd64.deb
Ubuntu 18.04 LTS
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Bionic/cloudhsm-client-jce_latest_u18.04_amd64.deb
$ sudo apt install ./cloudhsm-client-jce_latest_u18.04_amd64.deb

Nachdem Sie die vorherigen Befehle ausgeführt haben, finden Sie die folgenden JCE Anbieterdateien:

  • /opt/cloudhsm/java/cloudhsm-version.jar

  • /opt/cloudhsm/java/cloudhsm-test-version.jar

  • /opt/cloudhsm/java/hamcrest-all-1.3.jar

  • /opt/cloudhsm/java/junit.jar

  • /opt/cloudhsm/java/log4j-api-2.17.1.jar

  • /opt/cloudhsm/java/log4j-core-2.17.1.jar

  • /opt/cloudhsm/lib/libcaviumjca.so

Schritt 2: Überprüfen Sie die Installation

Führen Sie grundlegende Operationen am durchHSM, um die Installation zu validieren.

Um die JCE Anbieterinstallation zu validieren
  1. (Optional) Falls Sie Java nicht bereits in Ihrer Umgebung installiert haben, verwenden Sie den folgenden Befehl zur Installation.

    Linux (and compatible libraries)
    $ sudo yum install java-1.8.0-openjdk
    Ubuntu
    $ sudo apt-get install openjdk-8-jre
  2. Verwenden Sie die folgenden Befehle, um die erforderlichen Umgebungsvariablen festzulegen. Ersetzen <HSM user name> and <password> mit den Anmeldeinformationen eines Krypto-Benutzers (CU).

    $ export LD_LIBRARY_PATH=/opt/cloudhsm/lib
    $ export HSM_PARTITION=PARTITION_1
    $ export HSM_USER=<HSM user name>
    $ export HSM_PASSWORD=<password>
  3. Führen Sie den folgenden Befehl aus, um den Test der grundlegenden Funktionen zu starten. Wenn dies erfolgreich ist, sollte die Ausgabe des Befehls ähnlich wie die folgende sein.

    $ java8 -classpath "/opt/cloudhsm/java/*" org.junit.runner.JUnitCore TestBasicFunctionality JUnit version 4.11 .2018-08-20 17:53:48,514 DEBUG [main] TestBasicFunctionality (TestBasicFunctionality.java:33) - Adding provider. 2018-08-20 17:53:48,612 DEBUG [main] TestBasicFunctionality (TestBasicFunctionality.java:42) - Logging in. 2018-08-20 17:53:48,612 INFO [main] cfm2.LoginManager (LoginManager.java:104) - Looking for credentials in HsmCredentials.properties 2018-08-20 17:53:48,612 INFO [main] cfm2.LoginManager (LoginManager.java:122) - Looking for credentials in System.properties 2018-08-20 17:53:48,613 INFO [main] cfm2.LoginManager (LoginManager.java:130) - Looking for credentials in System.env SDK Version: 2.03 2018-08-20 17:53:48,655 DEBUG [main] TestBasicFunctionality (TestBasicFunctionality.java:54) - Generating AES Key with key size 256. 2018-08-20 17:53:48,698 DEBUG [main] TestBasicFunctionality (TestBasicFunctionality.java:63) - Encrypting with AES Key. 2018-08-20 17:53:48,705 DEBUG [main] TestBasicFunctionality (TestBasicFunctionality.java:84) - Deleting AES Key. 2018-08-20 17:53:48,707 DEBUG [main] TestBasicFunctionality (TestBasicFunctionality.java:92) - Logging out. Time: 0.205 OK (1 test)

Schritt 3: Stellen Sie dem JCE Anbieter Anmeldeinformationen zur Verfügung

HSMsSie müssen Ihre Java-Anwendung authentifizieren, bevor die Anwendung sie verwenden kann. Jede Anwendung kann eine Sitzung verwenden. HSMsauthentifizieren Sie eine Sitzung, indem Sie entweder die explizite oder die implizite Anmeldemethode verwenden.

Explizite Anmeldung — Mit dieser Methode können Sie HSM Cloud-Anmeldeinformationen direkt in der Anwendung angeben. Es verwendet die LoginManager.login() Methode, bei der Sie den CU-Benutzernamen, das Passwort und die HSM Partitions-ID übergeben. Weitere Informationen zur Verwendung der Methode für die explizite Anmeldung finden Sie im HSM Codebeispiel Login to an.

Implizite Anmeldung — Mit dieser Methode können Sie HSM Cloud-Anmeldeinformationen entweder in einer neuen Eigenschaftendatei, in Systemeigenschaften oder als Umgebungsvariablen festlegen.

  • Neue Eigenschaftsdatei – Erstellen Sie eine neue Datei namens HsmCredentials.properties und fügen Sie sie zum CLASSPATH Ihrer Anwendung hinzu. Die Datei sollte Folgendes enthalten:

    HSM_PARTITION = PARTITION_1 HSM_USER = <HSM user name> HSM_PASSWORD = <password>
  • Systemeigenschaften – Anmeldeinformationen über Systemeigenschaften fest, wenn Sie Ihre Anwendung ausführen. Die folgenden Beispiele zeigen zwei verschiedene Möglichkeiten:

    $ java -DHSM_PARTITION=PARTITION_1 -DHSM_USER=<HSM user name> -DHSM_PASSWORD=<password>
    System.setProperty("HSM_PARTITION","PARTITION_1"); System.setProperty("HSM_USER","<HSM user name>"); System.setProperty("HSM_PASSWORD","<password>");
  • Umgebungsvariablen – Anmeldeinformationen als Umgebungsvariablen festlegen.

    $ export HSM_PARTITION=PARTITION_1 $ export HSM_USER=<HSM user name> $ export HSM_PASSWORD=<password>

Anmeldeinformationen sind möglicherweise nicht verfügbar, wenn die Anwendung sie nicht bereitstellt oder wenn Sie versuchen, vor der HSM Authentifizierungssitzung einen Vorgang auszuführen. In diesen Fällen sucht die HSM Cloud-Softwarebibliothek für Java in der folgenden Reihenfolge nach den Anmeldeinformationen:

  1. HsmCredentials.properties

  2. Systemeigenschaften

  3. Umgebungsvariablen

Fehlerbehandlung

Die Fehlerbehandlung ist bei der expliziten Anmeldung einfacher als bei der impliziten Anmeldemethode. Wenn Sie die Klasse LoginManager verwenden, haben Sie mehr Kontrolle darüber, wie Ihre Anwendung mit Fehlern umgeht. Die implizite Anmeldemethode macht es schwierig, die Fehlerbehandlung nachzuvollziehen, wenn die Anmeldeinformationen ungültig sind oder Probleme bei der HSMs Authentifizierung der Sitzung auftreten.