Leuchtfeuer - AWS Datenbankverschlüsselung SDK

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.

Leuchtfeuer

Unsere clientseitige Verschlüsselungsbibliothek wurde in AWS Database Encryption SDK umbenannt. Dieses Entwicklerhandbuch enthält weiterhin Informationen zum DynamoDB Encryption Client.

Ein Beacon ist ein gekürztes HMAC-Tag (Hash-Based Message Authentication Code), das eine Zuordnung zwischen dem Klartextwert, der in ein Feld geschrieben wird, und dem verschlüsselten Wert, der tatsächlich in Ihrer Datenbank gespeichert ist, erstellt. Der Beacon ändert den verschlüsselten Status des Feldes nicht. Der Beacon berechnet anhand des Klartextwerts des Felds einen HMAC und speichert ihn zusammen mit dem verschlüsselten Wert. Bei dieser HMAC-Ausgabe handelt es sich um eine 1:1 -Übereinstimmung mit dem Klartextwert dieses Felds. Die HMAC-Ausgabe wird gekürzt, sodass mehrere unterschiedliche Klartextwerte demselben gekürzten HMAC-Tag zugeordnet werden. Diese Fehlalarme schränken die Fähigkeit eines nicht autorisierten Benutzers ein, charakteristische Informationen über den Klartext-Wert zu identifizieren.

Beacons können nur aus Feldern erstellt werden, die markiert sind ENCRYPT_AND_SIGNSIGN_ONLY, oder SIGN_AND_INCLUDE_IN_ENCRYPTION_CONTEXT in Ihren kryptografischen Aktionen enthalten sind. Der Beacon selbst ist weder signiert noch verschlüsselt. Sie können kein Beacon mit markierten Feldern erstellen. DO_NOTHING

Der Typ des Beacons, den Sie konfigurieren, bestimmt die Art der Abfragen, die Sie ausführen können. Es gibt zwei Arten von Beacons, die durchsuchbare Verschlüsselung unterstützen. Standard-Beacons führen Gleichheitssuchen durch. Zusammengesetzte Beacons kombinieren wörtliche Klartext-Zeichenketten und Standard-Beacons, um komplexe Datenbankoperationen durchzuführen. Nachdem Sie Ihre Beacons konfiguriert haben, müssen Sie für jedes Beacon einen sekundären Index konfigurieren, bevor Sie in den verschlüsselten Feldern suchen können. Weitere Informationen finden Sie unter Konfiguration sekundärer Indizes mit Beacons.

Standard-Beacons

Standard-Beacons sind die einfachste Methode, eine durchsuchbare Verschlüsselung in Ihrer Datenbank zu implementieren. Sie können nur Gleichheitssuchen für ein einzelnes verschlüsseltes oder virtuelles Feld durchführen. Informationen zur Konfiguration von Standard-Beacons finden Sie unter Konfiguration von Standard-Beacons.

Das Feld, aus dem ein Standard-Beacon erstellt wird, wird als Beacon-Quelle bezeichnet. Es identifiziert den Standort der Daten, die der Beacon für die Kartierung benötigt. Die Beacon-Quelle kann entweder ein verschlüsseltes Feld oder ein virtuelles Feld sein. Die Beacon-Quelle in jedem Standard-Beacon muss eindeutig sein. Sie können nicht zwei Beacons mit derselben Beacon-Quelle konfigurieren.

Standard-Beacons können verwendet werden, um Gleichheitssuchen für ein verschlüsseltes oder virtuelles Feld durchzuführen. Sie können auch verwendet werden, um zusammengesetzte Beacons für komplexere Datenbankoperationen zu erstellen. Um Ihnen bei der Organisation und Verwaltung von Standard-Beacons zu helfen, bietet das AWS Database Encryption SDK die folgenden optionalen Beacon-Stile, die den Verwendungszweck eines Standard-Beacons definieren. Weitere Informationen finden Sie unter Beacon-Stile definieren.

Sie können ein Standard-Beacon erstellen, das Gleichheitssuchen für ein einzelnes verschlüsseltes Feld durchführt, oder Sie können ein Standard-Beacon erstellen, das Gleichheitssuchen bei der Verkettung mehrererENCRYPT_AND_SIGN, und SIGN_AND_INCLUDE_IN_ENCRYPTION_CONTEXT -Felder durchführtSIGN_ONLY, indem Sie ein virtuelles Feld erstellen.

Virtuelle Felder

Ein virtuelles Feld ist ein konzeptionelles Feld, das aus einem oder mehreren Quellfeldern besteht. Beim Erstellen eines virtuellen Felds wird kein neues Feld in Ihren Datensatz geschrieben. Das virtuelle Feld wird nicht explizit in Ihrer Datenbank gespeichert. Es wird in der Standard-Beacon-Konfiguration verwendet, um dem Beacon Anweisungen zu geben, wie ein bestimmtes Segment eines Feldes identifiziert oder mehrere Felder innerhalb eines Datensatzes verkettet werden kann, um eine bestimmte Abfrage durchzuführen. Ein virtuelles Feld erfordert mindestens ein verschlüsseltes Feld.

Anmerkung

Das folgende Beispiel zeigt, welche Arten von Transformationen und Abfragen Sie mit einem virtuellen Feld durchführen können. In der Anwendung entsprechen die in diesem Beispiel verwendeten Beispielfelder möglicherweise nicht den Empfehlungen zur Verteilung und Korrelationseindeutigkeit für Beacons.

Wenn Sie beispielsweise Gleichheitssuchen für die Verkettung von FirstName und LastName -Feldern durchführen möchten, können Sie eines der folgenden virtuellen Felder erstellen.

  • Ein virtuelles NameTag Feld, das aus dem ersten Buchstaben des FirstName Felds, gefolgt vom Feld, gebildet wird, alles in Kleinbuchstaben. LastName Mit diesem virtuellen Feld können Sie Abfragen NameTag=mjones durchführen.

  • Ein virtuelles LastFirst Feld, das aus dem LastName Feld, gefolgt vom FirstName Feld, aufgebaut wird. Mit diesem virtuellen Feld können Sie Abfragen durchführenLastFirst=JonesMary.

Oder, wenn Sie Gleichheitssuchen für ein bestimmtes Segment eines verschlüsselten Feldes durchführen möchten, erstellen Sie ein virtuelles Feld, das das Segment identifiziert, das Sie abfragen möchten.

Wenn Sie beispielsweise ein verschlüsseltes IPAddress Feld anhand der ersten drei Segmente der IP-Adresse abfragen möchten, erstellen Sie das folgende virtuelle Feld.

  • Ein virtuelles IPSegment Feld, aufgebaut ausSegments(‘.’, 0, 3). Mit diesem virtuellen Feld können Sie Abfragen durchführenIPSegment=192.0.2. Die Abfrage gibt alle Datensätze zurück, deren IPAddress Wert mit „192.0.2" beginnt.

Virtuelle Felder müssen eindeutig sein. Zwei virtuelle Felder können nicht aus exakt denselben Quellfeldern erstellt werden.

Hilfe zur Konfiguration virtueller Felder und der Beacons, die sie verwenden, finden Sie unter Virtuelles Feld erstellen.

Zusammengesetzte Beacons

Zusammengesetzte Beacons erstellen Indizes, die die Abfrageleistung verbessern und es Ihnen ermöglichen, komplexere Datenbankoperationen durchzuführen. Sie können zusammengesetzte Beacons verwenden, um literale Klartextzeichenfolgen und Standardbeacons zu kombinieren, um komplexe Abfragen an verschlüsselten Datensätzen durchzuführen, z. B. um zwei verschiedene Datensatztypen aus einem einzigen Index abzufragen oder um eine Kombination von Feldern mit einem Sortierschlüssel abzufragen. Weitere Lösungsbeispiele für zusammengesetzte Beacons finden Sie unter Wählen Sie einen Beacon-Typ.

Zusammengesetzte Beacons können aus Standardbeacons oder einer Kombination aus Standardbeacons und signierten Feldern erstellt werden. Sie bestehen aus einer Liste von Teilen. Alle zusammengesetzten Beacons sollten eine Liste verschlüsselter Teile enthalten, die die im Beacon enthaltenen ENCRYPT_AND_SIGN Felder identifiziert. Jedes ENCRYPT_AND_SIGN Feld muss durch einen Standard-Beacon identifiziert werden. Komplexere zusammengesetzte Beacons können auch eine Liste von signierten Teilen enthalten, die den Klartext SIGN_ONLY oder die SIGN_AND_INCLUDE_IN_ENCRYPTION_CONTEXT Felder identifizieren, die im Beacon enthalten sind, und eine Liste von Konstruktorteilen, die alle Möglichkeiten angeben, wie der Compound Beacon die Felder zusammenstellen kann.

Anmerkung

Das AWS Database Encryption SDK unterstützt auch signierte Beacons, die vollständig aus Klartext und Feldern konfiguriert werden können. SIGN_ONLY SIGN_AND_INCLUDE_IN_ENCRYPTION_CONTEXT Signierte Beacons sind eine Art von zusammengesetzten Beacons, die signierte, aber nicht verschlüsselte Felder indexieren und komplexe Abfragen in diesen ausführen. Weitere Informationen finden Sie unter Signierte Beacons erstellen.

Hilfe zur Konfiguration von zusammengesetzten Beacons finden Sie unter Konfiguration von zusammengesetzten Beacons.

Die Art und Weise, wie Sie Ihren Compound Beacon konfigurieren, bestimmt, welche Arten von Abfragen er ausführen kann. Sie können beispielsweise einige verschlüsselte und signierte Teile optional machen, um mehr Flexibilität bei Ihren Abfragen zu gewährleisten. Weitere Informationen zu den Abfragetypen, die Compound Beacons ausführen können, finden Sie unterBeacons abfragen.