Most Recent Provider - AWS SDK für Datenbankverschlüsselung

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.

Most Recent Provider

Anmerkung

Unsere clientseitige Verschlüsselungsbibliothek wurde in AWS Database Encryption SDK umbenannt. Das folgende Thema enthält Informationen zu den Versionen 1. x —2. x des DynamoDB Encryption Client für Java und Versionen 1. x —3. x des DynamoDB Encryption Client für Python. Weitere Informationen finden Sie unter AWSDatabase Encryption SDK für DynamoDB-Versionsunterstützung.

Der Most Recent Provider ist ein Anbieter kryptographischer Materialien (Cryptographic Materials Provider (CMP)), der auf die Arbeit mit einem Provider-Store ausgelegt ist. Es erhält CMPs aus dem Provider-Store und erhält die kryptographischen Materialien, die er zurückgibt, von den CMPs. Typischerweise wird jeder CMP verwendet, um mehrere Anfragen nach kryptographischem Material zu befriedigen. Sie können jedoch mit den Funktionen des Provider-Stores steuern, inwieweit Materialien wiederverwendet werden, wie oft der CMP gewechselt wird und sogar den Typ des CMP ändern, ohne den Most Recent Provider zu ändern.

Anmerkung

Der Code, der mit dem MostRecentProvider Symbol für den neuesten Anbieter verknüpft ist, kann kryptografisches Material für die gesamte Lebensdauer des Prozesses im Speicher speichern. Es könnte einem Anrufer ermöglichen, Schlüssel zu verwenden, zu deren Verwendung er nicht mehr autorisiert ist.

Das MostRecentProvider Symbol ist in älteren unterstützten Versionen des DynamoDB Encryption Client veraltet und aus Version 2.0.0 entfernt. Es wird durch das CachingMostRecentProvider Symbol ersetzt. Details hierzu finden Sie unter Updates für den neuesten Anbieter.

Der Most Recent Provider ist eine gute Wahl für Anwendungen, die Aufrufe des Provider-Stores und seiner kryptographischen Quelle minimieren müssen, sowie für Anwendungen, die bestimmte kryptographische Materialien wiederverwenden können, ohne ihre Sicherheitsanforderungen zu verletzen. Zum Beispiel können Sie damit Ihr kryptografisches Material unter einem AWS KMS keyin AWS Key Management Service(AWS KMS) schützen, ohne AWS KMS jedes Mal, wenn Sie ein Objekt verschlüsseln oder entschlüsseln, aufrufen zu müssen.

Der von Ihnen gewählte Provider-Store bestimmt den Typ der CMPs, die der Most Recent Provider verwendet, und wie oft er einen neuen CMP erhält. Sie können jeden kompatiblen Provider-Store für den Most Recent Provider verwenden, einschließlich benutzerdefinierter Provider-Stores, die Sie entwerfen.

Der DynamoDB Encryption Client enthält einen MetaStore, der Wrapped Materials Providers (Wrapped CMPs) erstellt und zurückgibt. Der MetaStore speichert mehrere Versionen der Wrapped CMPs, die er generiert, in einer internen DynamoDB-Tabelle und schützt sie mit einer clientseitigen Verschlüsselung durch eine interne Instanz des DynamoDB Encryption Client.

Sie können den MetaStore so konfigurieren, dass er jede Art von internem CMP verwendet, um die Materialien in der Tabelle zu schützen, einschließlich eines direkten KMS-Anbieters, der kryptografisches Material generiert, das von Ihnen geschützt istAWS KMS key, eines Wrapped CMP, das von Ihnen bereitgestellte Wrapping- und Signaturschlüssel verwendet, oder eines kompatiblen benutzerdefinierten CMP, das Sie entwerfen.

Beispielcode finden Sie unter:

Verwendung

Um einen Most Recent Provider zu erstellen, müssen Sie einen Provider-Store erstellen und konfigurieren und dann einen Most Recent Provider erstellen, der den Provider-Store verwendet.

Die folgenden Beispiele zeigen, wie Sie einen neuesten Anbieter erstellen, der eine verwendet MetaStore und die Versionen in seiner internen DynamoDB-Tabelle mit kryptografischem Material von einem direkten KMS-Anbieter schützt. In diesen Beispielen wird das CachingMostRecentProviderSymbol verwendet.

Jeder neueste Anbieter hat einen Namen, der seine CMPs in der MetaStore Tabelle identifiziert, eine time-to-live(TTL) -Einstellung und eine Einstellung für die Cachegröße, die bestimmt, wie viele Einträge der Cache aufnehmen kann. In diesen Beispielen wird die Cachegröße auf 1000 Einträge und eine TTL von 60 Sekunden festgelegt.

Java
// Set the name for MetaStore's internal table final String keyTableName = 'metaStoreTable' // Set the Region and AWS KMS key final String region = 'us-west-2' final String keyArn = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab' // Set the TTL and cache size final long ttlInMillis = 60000; final long cacheSize = 1000; // Name that identifies the MetaStore's CMPs in the provider store final String materialName = 'testMRP' // Create an internal DynamoDB client for the MetaStore final AmazonDynamoDB ddb = AmazonDynamoDBClientBuilder.standard().withRegion(region).build(); // Create an internal Direct KMS Provider for the MetaStore final AWSKMS kms = AWSKMSClientBuilder.standard().withRegion(region).build(); final DirectKmsMaterialProvider kmsProv = new DirectKmsMaterialProvider(kms, keyArn); // Create an item encryptor for the MetaStore, // including the Direct KMS Provider final DynamoDBEncryptor keyEncryptor = DynamoDBEncryptor.getInstance(kmsProv); // Create the MetaStore final MetaStore metaStore = new MetaStore(ddb, keyTableName, keyEncryptor); //Create the Most Recent Provider final CachingMostRecentProvider cmp = new CachingMostRecentProvider(metaStore, materialName, ttlInMillis, cacheSize);
Python
# Designate an AWS KMS key kms_key_id = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab' # Set the name for MetaStore's internal table meta_table_name = 'metaStoreTable' # Name that identifies the MetaStore's CMPs in the provider store material_name = 'testMRP' # Create an internal DynamoDB table resource for the MetaStore meta_table = boto3.resource('dynamodb').Table(meta_table_name) # Create an internal Direct KMS Provider for the MetaStore kms_cmp = AwsKmsCryptographicMaterialsProvider(key_id=kms_key_id) # Create the MetaStore with the Direct KMS Provider meta_store = MetaStore( table=meta_table, materials_provider=kms_cmp ) # Create a Most Recent Provider using the MetaStore # Sets the TTL (in seconds) and cache size (# entries) most_recent_cmp = MostRecentProvider( provider_store=meta_store, material_name=material_name, version_ttl=60.0, cache_size=1000 )

Funktionsweise

Der Most Recent Provider erhält CMPs von einem Provider-Store. Dann verwendet er den CMP, um die kryptographischen Materialien zu generieren, die er an den Elementverschlüssler zurückgibt.

Informationen über den Most Recent Provider

Der Most Recent Provider erhält einen Anbieter kryptographischer Materialien (Cryptographic Materials Provider (CMP) aus einem Provider-Store. Dann verwendet er den CMP, um die kryptographischen Materialien zu generieren, die er zurückgibt. Jeder Most Recent Provider ist einem Provider-Store zugeordnet, aber ein Provider-Store kann CMPs an mehrere Provider über mehrere Hosts liefern.

Der Most Recent Provider kann mit jedem kompatiblen CMP aus einem beliebigen Provider-Store arbeiten. Es fordert Verschlüsselungs- oder Entschlüsselungsmaterialien vom CMP an und gibt die Ausgabe an den Objektverschlüsseler zurück. Er führt keine kryptografischen Operationen durch.

Um einen CMP von seinem Provider-Store anzufordern, gibt der Most Recent Provider seinen Materialnamen und die Version eines bestehenden CMP an, den er verwenden möchte. Bei Verschlüsselungsmaterialien fordert der Most Recent Provider immer die maximale („neueste“) Version an. Bei Entschlüsselungsmaterialien wird die Version des CMP angefordert, die für die Erstellung der Verschlüsselungsmaterialien verwendet wurde, wie in der folgenden Abbildung dargestellt.

Einen Most Recent Provider

Der Most Recent Provider speichert Versionen der CMPs, die der Provider-Store zurückgibt, in einem lokalen Least Recently Used (LRU)-Cache im Speicher. Der Cache ermöglicht es dem Most Recent Provider, die benötigten CMPs zu erhalten, ohne für jedes Element den Provider-Store aufzurufen. Sie können den Cache bei Bedarf leeren.

Der neueste Anbieter verwendet einen konfigurierbaren time-to-liveWert, den Sie an die Eigenschaften Ihrer Anwendung anpassen können.

Informationen über MetaStore

Sie können einen Most Recent Provider mit einem beliebigen Provider-Store verwenden, einschließlich eines kompatiblen benutzerdefinierten Provider-Stores. Der DynamoDB Encryption Client enthält eineMetaStore, eine sichere Implementierung, die Sie konfigurieren und anpassen können.

A MetaStoreist ein Anbieterstore, der Wrapped CMPs erstellt und zurückgibt, die mit dem Wrapping-Schlüssel, dem Entpackungsschlüssel und dem Signaturschlüssel konfiguriert sind, die für Wrapped CMPs erforderlich sind. A MetaStore ist eine sichere Option für einen neuesten Anbieter, da Wrapped CMPs für jeden Artikel immer eindeutige Verschlüsselungsschlüssel für Artikel generieren. Nur der Wrapping-Schlüssel, der den Elementverschlüsselungsschlüssel und die Signierschlüssel schützt, wird wiederverwendet.

Das folgende Diagramm zeigt die Komponenten des MetaStore und wie dieser mit dem neuesten Anbieter interagiert.

Ein MetaStore

Der MetaStore generiert die Wrapped CMPs und speichert sie dann (in verschlüsselter Form) in einer internen DynamoDB-Tabelle. Der Partitionsschlüssel ist der Name des Most Recent Provider-Materials, der Sortierschlüssel die Versionsnummer. Die Materialien in der Tabelle werden durch einen internen DynamoDB-Verschlüsselungsclient geschützt, einschließlich eines Objektverschlüsselers und eines internen Anbieters für kryptografische Materialien (CMP).

Sie können jede Art von internem CMP in Ihrem System verwendenMetaStore, einschließlich eines direkten KMS-Anbieters, eines Wrapped CMP mit kryptografischem Material, das Sie bereitstellen, oder eines kompatiblen benutzerdefinierten CMP. Wenn es sich bei dem internen CMP in Ihrem um einen direkten KMS-Anbieter MetaStore handelt, sind Ihre wiederverwendbaren Verpackungs- und Signaturschlüssel durch ein AWS KMS keyin AWS Key Management Service() AWS KMS geschützt. Der MetaStore ruft AWS KMS jedes Mal auf, wenn er seiner internen Tabelle eine neue CMP-Version hinzufügt oder eine CMP-Version aus seiner internen Tabelle abruft.

Einen time-to-live Wert festlegen

Sie können für jeden neuesten Anbieter, den Sie erstellen, einen time-to-live (TTL-) Wert festlegen. Verwenden Sie im Allgemeinen den niedrigsten TTL-Wert, der für Ihre Anwendung praktisch ist.

Die Verwendung des TTL-Werts wurde im CachingMostRecentProvider Symbol für den neuesten Anbieter geändert.

Anmerkung

Das MostRecentProvider Symbol für den neuesten Anbieter ist in älteren unterstützten Versionen des DynamoDB Encryption Client veraltet und aus Version 2.0.0 entfernt. Es wird durch das CachingMostRecentProvider Symbol ersetzt. Wir empfehlen Ihnen, Ihren Code so schnell wie möglich zu aktualisieren. Details hierzu finden Sie unter Updates für den neuesten Anbieter.

CachingMostRecentProvider

Der CachingMostRecentProvider verwendet den TTL-Wert auf zwei verschiedene Arten.

  • Die TTL bestimmt, wie oft der neueste Anbieter im Anbieterspeicher nach einer neuen Version des CMP sucht. Wenn eine neue Version verfügbar ist, ersetzt der neueste Anbieter seinen CMP und aktualisiert seine kryptografischen Materialien. Ansonsten verwendet es weiterhin sein aktuelles CMP- und kryptografisches Material.

  • Die TTL bestimmt, wie lange CMPs im Cache verwendet werden können. Bevor er eine zwischengespeicherte CMP für die Verschlüsselung verwendet, wertet der Most Recent Provider seine Zeit im Cache aus. Wenn die CMP-Cache-Zeit die TTL überschreitet, wird die CMP aus dem Cache entfernt und der neueste Anbieter erhält eine neue CMP der neuesten Version aus seinem Anbieterspeicher.

MostRecentProvider

In der bestimmt die TTLMostRecentProvider, wie oft der neueste Anbieter im Anbieterspeicher nach einer neuen Version des CMP sucht. Wenn eine neue Version verfügbar ist, ersetzt der neueste Anbieter seinen CMP und aktualisiert seine kryptografischen Materialien. Ansonsten verwendet es weiterhin sein aktuelles CMP- und kryptografisches Material.

Die TTL bestimmt nicht, wie oft eine neue CMP-Version erstellt wird. Sie erstellen neue CMP-Versionen, indem Sie die kryptografischen Materialien rotieren.

Ein idealer TTL-Wert hängt von der Anwendung und ihren Latenz- und Verfügbarkeitszielen ab. Eine niedrigere TTL verbessert Ihr Sicherheitsprofil, indem sie die Zeit reduziert, in der kryptografische Materialien im Speicher gespeichert werden. Außerdem werden bei einem niedrigeren TTL-Wert wichtige Informationen häufiger aktualisiert. Wenn es sich bei Ihrem internen CMP beispielsweise um einen direkten KMS-Anbieter handelt, wird häufiger überprüft, ob der Anrufer weiterhin autorisiert ist, einen zu verwenden. AWS KMS key

Wenn die TTL jedoch zu kurz ist, können die häufigen Anrufe beim Anbieterspeicher Ihre Kosten erhöhen und dazu führen, dass Ihr Providerstore Anfragen von Ihrer Anwendung und anderen Anwendungen, die Ihr Servicekonto gemeinsam nutzen, drosselt. Möglicherweise ist es auch von Vorteil, die TTL mit der Geschwindigkeit zu koordinieren, mit der Sie kryptografisches Material rotieren.

Variieren Sie beim Testen die TTL- und Cachegröße unter verschiedenen Arbeitslasten, bis Sie eine Konfiguration gefunden haben, die für Ihre Anwendung und Ihre Sicherheits- und Leistungsstandards geeignet ist.

Rotieren von kryptografischen Materialien

Wenn ein neuester Anbieter Verschlüsselungsmaterial benötigt, verwendet er immer die neueste Version seines CMP, die ihm bekannt ist. Die Häufigkeit, mit der nach einer neueren Version gesucht wird, wird durch den time-to-live(TTL) -Wert bestimmt, den Sie bei der Konfiguration des neuesten Anbieters festlegen.

Wenn die TTL abläuft, sucht der Most Recent Provider im Anbieterspeicher nach einer neueren Version des CMP. Wenn einer verfügbar ist, holt ihn der neueste Anbieter und ersetzt den CMP in seinem Cache. Es verwendet dieses CMP und seine kryptografischen Materialien, bis es feststellt, dass der Providerstore über eine neuere Version verfügt.

Um den Provider-Store anzuweisen, eine neue Version eines CMP für einen Most Recent Provider zu erstellen, rufen Sie die Operation „Create New Provider“ (Neuen Provider erstellen) des Provider-Stores mit dem Materialnamen des Most Recent Providers auf. Der Provider-Store erstellt einen neuen CMP und speichert eine verschlüsselte Kopie in seinem internen Speicher mit einer höheren Versionsnummer. (Es gibt auch einen CMP zurück, aber Sie können ihn verwerfen.) Wenn der Most Recent Provider das nächste Mal den Anbieterspeicher nach der maximalen Versionsnummer seiner CMPs abfragt, erhält er daher die neue größere Versionsnummer und verwendet sie für nachfolgende Anfragen an den Store, um festzustellen, ob eine neue Version des CMP erstellt wurde.

Sie können Ihre „Create New Provider“-Aufrufe (Neuen Provider erstellen) abhängig von der Zeit, der Anzahl der verarbeiteten Elemente oder Attribute oder einer anderen für Ihre Anwendung sinnvollen Kennzahl planen.

Verschlüsselungsmaterialien abrufen

Der Most Recent Provider verwendet den folgenden Prozess, wie in dieser Abbildung gezeigt, um die Verschlüsselungsmaterialien zu erhalten, die er an den Elementverschlüssler zurückgibt. Die Ausgabe hängt vom Typ des CMP ab, den der Provider-Store zurückgibt. Der neueste Anbieter kann jeden kompatiblen Anbieterspeicher verwenden, einschließlich des SpeichersMetaStore, der im DynamoDB Encryption Client enthalten ist.

Eingabe, Verarbeitung und Ausgabe des neuesten Anbieters im DynamoDB Encryption Client

Wenn Sie mithilfe des CachingMostRecentProviderSymbols einen Aktuellsten Anbieter erstellen, geben Sie einen Anbieterspeicher, einen Namen für den neuesten Anbieter und einen time-to-live(TTL) -Wert an. Sie können optional auch eine Cachegröße angeben, die die maximale Anzahl von kryptografischen Materialien bestimmt, die im Cache vorhanden sein können.

Wenn der Elementverschlüssler den Most Recent Provider nach Verschlüsselungsmaterialien fragt, sucht der Most Recent Provider zunächst in seinem Cache nach der neuesten Version seines CMP.

  • Wenn es die neueste Version CMP in seinem Cache findet und der CMP den TTL-Wert nicht überschritten hat, verwendet der Most Recent Provider den CMP, um Verschlüsselungsmaterialien zu generieren. Anschließend gibt er die Verschlüsselungsmaterialien an den Elementverschlüssler zurück. Für diese Operation muss der Provider-Store nicht aufgerufen werden.

  • Wenn sich die neueste Version des CMP nicht in seinem Cache befindet oder wenn sie sich im Cache befindet, aber ihren TTL-Wert überschritten hat, fordert der neueste Anbieter eine CMP von seinem Anbieterspeicher an. Die Anfrage enthält den Materialnamen des Most Recent Providers und die maximale Versionsnummer, die ihm bekannt ist.

    1. Der Provider-Store gibt einen CMP aus seinem persistenten Speicher zurück. Wenn der Anbieterspeicher ein istMetaStore, erhält er einen verschlüsselten Wrapped CMP aus seiner internen DynamoDB-Tabelle, indem er den Materialnamen des neuesten Anbieters als Partitionsschlüssel und die Versionsnummer als Sortierschlüssel verwendet. Der MetaStore verwendet seinen internen Item-Verschlüsseler und seinen internen CMP, um den Wrapped CMP zu entschlüsseln. Dann gibt er den Klartext-CMP an den Most Recent Provider zurück. Wenn der interne CMP ein Direct KMS Provider ist, beinhaltet dieser Schritt einen Aufruf von AWS Key Management Service (AWS KMS).

    2. Der CMP fügt das amzn-ddb-meta-id-Feld der aktuellen Materialbeschreibung hinzu. Sein Wert sind der Materialname und die Version des CMP in seiner internen Tabelle. Der Provider-Store gibt den CMP an den Most Recent Provider zurück.

    3. Der Most Recent Provider speichert den CMP im Speicher zwischen.

    4. Der Most Recent Provider verwendet den CMP, um Verschlüsselungsmaterialien zu generieren. Anschließend gibt er die Verschlüsselungsmaterialien an den Elementverschlüssler zurück.

Entschlüsselungsmaterialien abrufen

Wenn der Elementverschlüssler den Most Recent Provider nach Entschlüsselungsmaterialien abfragt, verwendet der Most Recent Provider den folgenden Prozess, um diese abzurufen und zurückzugeben.

  1. Der Most Recent Provider fragt den Provider-Store nach der Versionsnummer des kryptographischen Materials, das zur Verschlüsselung des Elements verwendet wurde. Er übergibt die aktuelle Materialbeschreibung aus dem Materialbeschreibungsattribut des Elements.

  2. Der Provider Store ruft die verschlüsselnde CMP-Versionsnummer aus dem Feld amzn-ddb-meta-id in der aktuellen Materialbeschreibung ab und gibt sie an den Most Recent Provider zurück.

  3. Der Most Recent Provider durchsucht seinen Cache nach der Version des CMP, mit der das Element verschlüsselt und signiert wurde.

  • Wenn er feststellt, dass sich die passende Version des CMP in seinem Cache befindet und der CMP den time-to-live(TTL) -Wert nicht überschritten hat, verwendet der Most Recent Provider den CMP, um Entschlüsselungsmaterialien zu generieren. Anschließend gibt er die Entschlüsselungsmaterialien an den Elementverschlüssler zurück. Für diese Operation muss der Provider-Store nicht aufgerufen werden, und auch kein anderer CMP.

  • Wenn sich die passende Version der CMP nicht in ihrem Cache befindet oder wenn die zwischengespeicherte Version ihren TTL-Wert überschritten AWS KMS key hat, fordert der neueste Anbieter eine CMP von seinem Anbieterspeicher an. Er sendet seinen Materialnamen und die Versionsnummer des verschlüsselnden CMP in der Anfrage.

    1. Der Provider-Store durchsucht seinen persistenten Speicher nach dem CMP, indem er den Namen des Most Recent Providers als Partitionsschlüssel und die Versionsnummer als Sortierschlüssel verwendet.

      • Wenn sich der Name und die Versionsnummer nicht in seinem persistenten Speicher befinden, wirft der Provider-Store eine Ausnahme auf. Wenn der Provider-Store zur Generierung des CMP verwendet wurde, sollte der CMP in seinem persistenten Speicher abgelegt sein, es sei denn, er wurde absichtlich gelöscht.

      • Wenn sich der CMP mit dem übereinstimmenden Namen und der Versionsnummer im persistenten Speicher des Provider-Stores befindet, gibt der Provider-Store den angegebenen CMP an den Most Recent Provider zurück.

        Wenn der Anbieterspeicher ein istMetaStore, ruft er den verschlüsselten CMP aus seiner DynamoDB-Tabelle ab. Dann verwendet er kryptografische Materialien aus seinem internen CMP, um den verschlüsselten CMP zu entschlüsseln, bevor es den CMP an den Most Recent Provider zurückgibt. Wenn der interne CMP ein Direct KMS Provider ist, beinhaltet dieser Schritt einen Aufruf von AWS Key Management Service (AWS KMS).

    2. Der Most Recent Provider speichert den CMP im Speicher zwischen.

    3. Der Most Recent Provider verwendet den CMP, um Entschlüsselungsmaterialien zu generieren. Anschließend gibt er die Entschlüsselungsmaterialien an den Elementverschlüssler zurück.

Updates für den neuesten Anbieter

Das Symbol für den neuesten Anbieter wurde von MostRecentProvider auf geändertCachingMostRecentProvider.

Anmerkung

Das MostRecentProvider Symbol, das den neuesten Anbieter darstellt, ist in Version 1.15 des DynamoDB Encryption Client für Java und Version 1.3 des DynamoDB Encryption Client für Python veraltet und wurde in beiden Sprachimplementierungen aus den Versionen 2.0.0 des DynamoDB Encryption Client entfernt. Verwenden Sie stattdessen dieCachingMostRecentProvider.

Das CachingMostRecentProvider implementiert die folgenden Änderungen:

  • Der entfernt in CachingMostRecentProvider regelmäßigen Abständen kryptografisches Material aus dem Speicher, wenn seine Speicherzeit den konfigurierten Wert time-to-live(TTL) überschreitet.

    MostRecentProviderSie könnten kryptografisches Material für die gesamte Lebensdauer des Prozesses im Speicher speichern. Daher ist der neueste Anbieter möglicherweise nicht über Autorisierungsänderungen informiert. Möglicherweise werden Verschlüsselungsschlüssel verwendet, nachdem die Berechtigungen des Anrufers zu deren Verwendung entzogen wurden.

    Wenn Sie nicht auf diese neue Version aktualisieren können, können Sie einen ähnlichen Effekt erzielen, indem Sie die clear() Methode regelmäßig im Cache aufrufen. Bei dieser Methode wird der Cache-Inhalt manuell geleert und der neueste Anbieter muss eine neue CMP und neues kryptografisches Material anfordern.

  • Das beinhaltet CachingMostRecentProvider auch eine Einstellung für die Cachegröße, mit der Sie mehr Kontrolle über den Cache haben.

Um auf die zu aktualisierenCachingMostRecentProvider, müssen Sie den Symbolnamen in Ihrem Code ändern. In jeder anderen Hinsicht CachingMostRecentProvider ist der vollständig abwärtskompatibel mit demMostRecentProvider. Sie müssen keine Tabellenelemente erneut verschlüsseln.

Das CachingMostRecentProvider generiert jedoch mehr Aufrufe an die zugrunde liegende Schlüsselinfrastruktur. Es ruft den Providerstore mindestens einmal in jedem time-to-live (TTL-) Intervall auf. Anwendungen mit zahlreichen aktiven CMPs (aufgrund häufiger Rotation) oder Anwendungen mit großen Flotten reagieren am ehesten empfindlich auf diese Änderung.

Bevor Sie Ihren aktualisierten Code veröffentlichen, testen Sie ihn gründlich, um sicherzustellen, dass die häufigeren Aufrufe Ihre Anwendung nicht beeinträchtigen oder zu einer Drosselung durch Dienste führen, von denen Ihr Anbieter abhängig ist, wie AWS Key Management Service (AWS KMS) oder Amazon DynamoDB. Um Leistungsprobleme zu vermeiden, passen Sie die Cachegröße und die Cachegröße an CachingMostRecentProvider die time-to-live von Ihnen beobachteten Leistungsmerkmale an. Anleitungen finden Sie unter Einen time-to-live Wert festlegen.