Wichtige Synchronisations- und Haltbarkeitseinstellungen in AWS CloudHSM - 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.

Wichtige Synchronisations- und Haltbarkeitseinstellungen in AWS CloudHSM

In diesem Thema werden wichtige Synchronisierungseinstellungen beschrieben AWS CloudHSM, häufig auftretende Probleme, mit denen Kunden bei der Arbeit mit Schlüsseln in einem Cluster konfrontiert sind, und Strategien zur Erhöhung der Lebensdauer von Schlüsseln beschrieben.

Konzepte

Token-Schlüssel

Persistente Schlüssel, die Sie beim Generieren, Importieren oder Entpacken von Schlüsseln erstellen. AWS CloudHSM synchronisiert Token-Schlüssel in einem Cluster.

Sitzungsschlüssel

Kurzlebige Schlüssel, die nur auf einem Hardware-Sicherheitsmodul (HSM) im Cluster vorhanden sind. AWS CloudHSM synchronisiert keine Sitzungsschlüssel innerhalb eines Clusters.

Clientseitige Schlüsselsynchronisierung

Ein clientseitiger Prozess, der Tokenschlüssel klont, die Sie beim Generieren, Importieren oder Entpacken von Schlüsseln erstellen. Sie können Token-Schlüssel langlebiger machen, indem Sie einen Cluster mit mindestens zwei HSMs ausführen.

Serverseitige Schlüsselsynchronisierung

Klont in regelmäßigen Abständen Schlüssel für jedes HSM im Cluster. Erfordert keine Verwaltung.

Einstellungen für die Haltbarkeit von Client-Schlüsseln

Einstellungen, die Sie auf dem Client konfigurieren und die sich auf die Haltbarkeit von Schlüsseln auswirken. Diese Einstellungen funktionieren in Client SDK 5 und Client SDK 3 unterschiedlich.

  • Verwenden Sie im Client-SDK 5 diese Einstellung, um einen einzelnen HSM-Cluster auszuführen.

  • Verwenden Sie im Client-SDK 3 diese Einstellung, um die Anzahl der HSMs anzugeben, die für eine erfolgreiche Schlüsselerstellung erforderlich sind.

Grundlegendes zur Schlüsselsynchronisierung

AWS CloudHSM verwendet die Schlüsselsynchronisierung, um Tokenschlüssel für alle HSMs in einem Cluster zu klonen. Sie erstellen Token-Schlüssel als persistente Schlüssel bei der Schlüsselgenerierung, beim Import oder beim Entpacken. Um diese Schlüssel über den Cluster zu verteilen, bietet CloudHSM die clientseitige und serverseitige Schlüssel-Synchronisierung.

Key synchronization diagram showing client-side and server-side sync across CloudHSM Cluster.

Das Ziel der Schlüsselsynchronisierung – sowohl serverseitig als auch clientseitig – besteht darin, neue Schlüssel so schnell wie möglich im Cluster zu verteilen, nachdem Sie sie erstellt haben. Dies ist wichtig, da die nachfolgenden Aufrufe, die Sie zur Verwendung neuer Schlüssel tätigen, an jedes verfügbare HSM im Cluster weitergeleitet werden können. Wenn der Anruf, den Sie tätigen, ohne den Schlüssel an ein HSM weitergeleitet wird, schlägt der Anruf fehl. Sie können diese Art von Fehlern beheben, indem Sie angeben, dass Ihre Anwendungen nachfolgende Aufrufe wiederholen, die nach der Schlüsselerstellung ausgeführt wurden. Die für die Synchronisierung benötigte Zeit kann je nach der Arbeitslast Ihres Clusters und anderen immateriellen Vermögenswerten variieren. Verwenden Sie CloudWatch Metriken, um das Timing zu bestimmen, das Ihre Anwendung in einer solchen Situation verwenden sollte. Weitere Informationen finden Sie unter CloudWatch Metriken.

Die Herausforderung bei der Schlüsselsynchronisierung in einer Cloud-Umgebung ist die Haltbarkeit der Schlüssel. Sie erstellen Schlüssel auf einem einzigen HSM und beginnen oft sofort, diese Schlüssel zu verwenden. Wenn das HSM, auf dem Sie Schlüssel erstellen, ausfällt, bevor die Schlüssel auf ein anderes HSM im Cluster geklont wurden, verlieren Sie die Schlüssel und den Zugriff auf alles, was mit den Schlüsseln verschlüsselt wurde. Um dieses Risiko zu minimieren, bieten wir Client-Synchronisierung an. Die clientseitige Synchronisation ist ein clientseitiger Prozess, bei dem die Schlüssel geklont werden, die Sie beim Generieren, Importieren oder Entpacken von Schlüsseln erstellen. Durch das Klonen von Schlüsseln während der Erstellung werden Schlüssel langlebiger. Natürlich können Sie Schlüssel in einem Cluster nicht mit einem einzigen HSM klonen. Um Schlüssel langlebiger zu machen, empfehlen wir Ihnen außerdem, Ihren Cluster so zu konfigurieren, dass mindestens zwei HSMs verwendet werden. Mit der clientseitigen Synchronisation und einem Cluster mit zwei HSMs können Sie die Herausforderung der Schlüsselbeständigkeit in einer Cloud-Umgebung bewältigen.

Arbeiten mit den Einstellungen für die Haltbarkeit von Client-Schlüsseln

Die Schlüsselsynchronisierung ist größtenteils ein automatischer Prozess, aber Sie können die Einstellungen für die Haltbarkeit von Schlüsseln auf der Clientseite verwalten. Die clientseitigen Einstellungen für die Haltbarkeit von Schlüsseln funktionieren in Client-SDK 5 und Client-SDK 3 unterschiedlich.

  • In Client-SDK 5 führen wir das Konzept der Quoren für die Schlüsselverfügbarkeit ein, bei dem Sie Cluster mit mindestens zwei HSMs ausführen müssen. Sie können die clientseitigen Einstellungen für die Haltbarkeit von Schlüsseln verwenden, um die beiden HSM-Anforderungen abzulehnen. Weitere Informationen zu Quora finden Sie unter Konzepte des Client-SDK 5.

  • Im Client-SDK 3 verwenden Sie die clientseitigen Einstellungen für die Haltbarkeit von Schlüsseln, um die Anzahl der HSMs anzugeben, auf denen die Schlüsselerstellung erfolgreich sein muss, damit der gesamte Vorgang als erfolgreich gewertet wird.

In Client-SDK 5 ist die Schlüsselsynchronisierung ein vollautomatischer Prozess. Beim Schlüsselverfügbarkeitsquorum müssen neu erstellte Schlüssel auf zwei HSMs im Cluster vorhanden sein, bevor Ihre Anwendung den Schlüssel verwenden kann. Um das Schlüsselverfügbarkeitsquorum verwenden zu können, muss Ihr Cluster über mindestens zwei HSMs verfügen.

Wenn Ihre Clusterkonfiguration die Anforderungen an die Haltbarkeit von Schlüsseln nicht erfüllt, schlägt jeder Versuch, einen Token-Schlüssel zu erstellen oder zu verwenden, fehl und die folgende Fehlermeldung wird in den Protokollen angezeigt:

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

Sie können die Client-Konfigurationseinstellungen verwenden, um das Quorum für die Schlüsselverfügbarkeit zu deaktivieren. Möglicherweise möchten Sie sich abmelden, um beispielsweise einen Cluster mit einem einzigen HSM auszuführen.

Konzepte des Client-SDK 5

Quorum für Schlüsselverfügbarkeit

AWS CloudHSM gibt die Anzahl der HSMs in einem Cluster an, auf denen Schlüssel vorhanden sein müssen, bevor Ihre Anwendung den Schlüssel verwenden kann. Benötigt Cluster mit mindestens zwei HSMs.

Verwaltung der Einstellungen für die Haltbarkeit von Client-Schlüsseln

Um die Einstellungen für die Haltbarkeit von Client-Schlüsseln zu verwalten, müssen Sie das Configure-Tool für Client-SDK 5 verwenden.

PKCS #11 library
Um die Haltbarkeit von Client-Schlüsseln für Client-SDK 5 unter Linux zu deaktivieren
  • Verwenden Sie das Configure-Tool, um die Einstellungen für die Haltbarkeit von Client-Schlüsseln zu deaktivieren.

    $ sudo /opt/cloudhsm/bin/configure-pkcs11 --disable-key-availability-check
Um die Haltbarkeit von Client-Schlüsseln für Client-SDK 5 unter Windows zu deaktivieren
  • Verwenden Sie das Configure-Tool, um die Einstellungen für die Haltbarkeit von Client-Schlüsseln zu deaktivieren.

    "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" --disable-key-availability-check
OpenSSL Dynamic Engine
Um die Haltbarkeit von Client-Schlüsseln für Client-SDK 5 unter Linux zu deaktivieren
  • Verwenden Sie das Configure-Tool, um die Einstellungen für die Haltbarkeit von Client-Schlüsseln zu deaktivieren.

    $ sudo /opt/cloudhsm/bin/configure-dyn --disable-key-availability-check
JCE provider
Um die Haltbarkeit von Client-Schlüsseln für Client-SDK 5 unter Linux zu deaktivieren
  • Verwenden Sie das Configure-Tool, um die Einstellungen für die Haltbarkeit von Client-Schlüsseln zu deaktivieren.

    $ sudo /opt/cloudhsm/bin/configure-jce --disable-key-availability-check
Um die Haltbarkeit von Client-Schlüsseln für Client-SDK 5 unter Windows zu deaktivieren
  • Verwenden Sie das Configure-Tool, um die Einstellungen für die Haltbarkeit von Client-Schlüsseln zu deaktivieren.

    "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" --disable-key-availability-check
CloudHSM CLI
Um die Haltbarkeit von Client-Schlüsseln für Client-SDK 5 unter Linux zu deaktivieren
  • Verwenden Sie das Configure-Tool, um die Einstellungen für die Haltbarkeit von Client-Schlüsseln zu deaktivieren.

    $ sudo /opt/cloudhsm/bin/configure-cli --disable-key-availability-check
Um die Haltbarkeit von Client-Schlüsseln für Client-SDK 5 unter Windows zu deaktivieren
  • Verwenden Sie das Configure-Tool, um die Einstellungen für die Haltbarkeit von Client-Schlüsseln zu deaktivieren.

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

In Client-SDK 3 ist die Schlüsselsynchronisierung größtenteils ein automatischer Prozess, aber Sie können die Einstellungen für die Haltbarkeit von Schlüsseln des Clients verwenden, um die Haltbarkeit von Schlüsseln zu erhöhen. Sie geben die Anzahl der HSMs an, auf denen die Schlüsselerstellung erfolgreich sein muss, damit der gesamte Vorgang als erfolgreich gewertet wird. Bei der clientseitigen Synchronisation wird stets versucht, Schlüssel für jedes HSM im Cluster zu klonen, unabhängig davon, welche Einstellung Sie wählen. Ihre Einstellung erzwingt die Schlüsselerstellung für die von Ihnen angegebene Anzahl von HSMs. Wenn Sie einen Wert angeben und das System den Schlüssel nicht auf diese Anzahl von HSMs replizieren kann, entfernt das System automatisch unerwünschtes Schlüsselmaterial, und Sie können es erneut versuchen.

Wichtig

Wenn Sie keine Einstellungen für die Haltbarkeit von Client-Schlüsseln festlegen (oder den Standardwert 1 verwenden), besteht die Gefahr, dass Ihre Schlüssel verloren gehen. Wenn Ihr aktuelles HSM ausfällt, bevor der serverseitige Dienst diesen Schlüssel auf ein anderes HSM geklont hat, verlieren Sie das Schlüsselmaterial.

Um die Haltbarkeit von Schlüsseln zu maximieren, sollten Sie erwägen, mindestens zwei HSMs für die clientseitige Synchronisation anzugeben. Denken Sie daran, dass unabhängig davon, wie viele HSMs Sie angeben, die Arbeitslast auf Ihrem Cluster gleich bleibt. Bei der clientseitigen Synchronisation wird stets nach besten Kräften versucht, Schlüssel für jedes HSM im Cluster zu klonen.

Empfehlungen

  • Minimum: Zwei HSMs pro Cluster

  • Maximum: Eins weniger als die Gesamtzahl der HSMs in Ihrem Cluster

Wenn die clientseitige Synchronisation fehlschlägt, bereinigt der Client-Dienst alle unerwünschten Schlüssel, die möglicherweise erstellt wurden und nun unerwünscht sind. Bei dieser Bereinigung handelt es sich um eine bestmögliche Lösung, die möglicherweise nicht immer funktioniert. Wenn die Bereinigung fehlschlägt, müssen Sie möglicherweise unerwünschtes Schlüsselmaterial löschen. Weitere Informationen finden Sie unter Schlüssel-Synchronisierungsfehler.

Einrichtung der Konfigurationsdatei für die Haltbarkeit von Client-Schlüsseln

Um die Einstellungen für die Haltbarkeit von Client-Schlüsseln festzulegen, müssen Sie cloudhsm_client.cfg bearbeiten.

Bearbeiten der Clientkonfigurationsdatei
  1. Öffnen Sie cloudhsm_client.cfg.

    Linux:

    /opt/cloudhsm/etc/cloudhsm_client.cfg

    Windows:

    C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_client.cfg
  2. Fügen Sie im client Knoten der Datei einen Wert für die Mindestanzahl von HSMs hinzucreate_object_minimum_nodes, auf denen Schlüssel erfolgreich erstellt werden AWS CloudHSM müssen, damit die Schlüsselerstellung erfolgreich ist, und geben Sie ihn an.

    "create_object_minimum_nodes" : 2
    Anmerkung

    Das Befehlszeilentool key_mgmt_util (KMU) bietet eine zusätzliche Einstellung für die Haltbarkeit von Client-Schlüsseln. Weitere Informationen finden Sie unter KMU- und clientseitige Schlüsselsynchronisierung.

Konfigurationsreferenz

Dies sind die clientseitigen Synchronisierungseigenschaften, die in einem Auszug aus der cloudhsm_client.cfg:

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

Gibt die Mindestanzahl von HSMs an, die erforderlich sind, um die Schlüsselgenerierung, den Schlüsselimport oder das Entpacken von Schlüsseln als erfolgreich zu betrachten. Falls eingestellt, ist die Voreinstellung 1. Das bedeutet, dass der clientseitige Dienst bei jedem Vorgang zur Schlüsselerstellung versucht, Schlüssel für jedes HSM im Cluster zu erstellen. Um jedoch einen Erfolg zurückzugeben, muss nur ein einziger Schlüssel auf einem HSM im Cluster erstellt werden.

KMU- und clientseitige Schlüsselsynchronisierung

Wenn Sie Schlüssel mit dem Befehlszeilentool key_mgmt_util (KMU) erstellen, verwenden Sie einen optionalen Befehlszeilenparameter (-min_srv), um die Anzahl der HSMs zu begrenzen, auf denen Schlüssel geklont werden sollen. Wenn Sie den Befehlszeilenparameter und einen Wert in der Konfigurationsdatei angeben, wird der GRÖSSERE AWS CloudHSM der beiden Werte berücksichtigt.

Weitere Informationen finden Sie unter den folgenden Themen:

Synchronisieren von Schlüsseln zwischen geklonten Clustern

Die clientseitige und serverseitige Synchronisation dient nur der Synchronisierung von Schlüsseln innerhalb desselben Clusters. Wenn Sie eine Sicherung eines Clusters in eine andere Region kopieren, können Sie den syncKey-Befehl der cloudhsm_mgmt_util (CMU) verwenden, um Schlüssel zwischen Clustern zu synchronisieren. Sie können geklonte Cluster für regionsübergreifende Redundanz oder zur Vereinfachung Ihres Disaster Recovery-Prozesses verwenden. Weitere Informationen finden Sie unter syncKey.