Verschlüsselung im Ruhezustand - Amazon Athena

Verschlüsselung im Ruhezustand

Sie können in Amazon Athena Abfragen zu verschlüsselten Daten in Amazon S3 in derselben Region und in einer begrenzten Anzahl von Regionen ausführen. Sie können auch die Abfrageergebnisse in Amazon S3 und die Daten im AWS Glue-Datenkatalog verschlüsseln.

Sie können die folgenden Ressourcen in Athena verschlüsseln:

Anmerkung

Wenn Sie Athena verwenden, um eine verschlüsselte Tabelle zu lesen, verwendet Athena die für die Tabellendaten angegebenen Verschlüsselungsoptionen, nicht die Verschlüsselungsoption für die Abfrageergebnisse. Wenn separate Verschlüsselungsmethoden oder Schlüssel für Abfrageergebnisse und Tabellendaten konfiguriert sind, liest Athena die Tabellendaten, ohne die Verschlüsselungsoption und den Schlüssel zu verwenden, die zum Verschlüsseln oder Entschlüsseln der Abfrageergebnisse verwendet wurden.

Wenn Sie jedoch Athena verwenden, um Daten in eine Tabelle einzufügen, die verschlüsselte Daten enthält, verwendet Athena die Verschlüsselungskonfiguration, die für die Abfrageergebnisse angegeben wurde, um die eingefügten Daten zu verschlüsseln. Wenn Sie beispielsweise CSE_KMS Verschlüsselung für Abfrageergebnisse angeben, verwendet Athena dieselbe AWS KMS Schlüssel-ID, die Sie für die Verschlüsselung der Abfrageergebnisse verwendet haben, um die eingefügten Tabellendaten mit CSE_KMS zu verschlüsseln.

Unterstützte Verschlüsselungsoptionen der Amazon S3

Athena unterstützt die folgenden Verschlüsselungsoptionen für Datasets und Abfrageergebnisse in Amazon S3.

Verschlüsselungstyp Beschreibung Regionsübergreifende Unterstützung
SSE-S3 Serverseitige Verschlüsselung (SSE) mit einem von Amazon S3 verwalteten Schlüssel. Ja
SSE-KMS (empfohlen) Serverseitige Verschlüsselung (SSE) mit einem vom Kunden verwalteten AWS Key Management Service-Schlüssel. Ja
CSE-KMS

Clientseitige Verschlüsselung (CSE) mit einem vom Kunden verwalteten AWS KMS-Schlüssel. In Athena erfordert diese Option, dass Sie eine CREATE TABLE-Anweisung mit einer TBLPROPERTIES-Klausel verwenden, die 'has_encrypted_data'='true' angibt. Weitere Informationen finden Sie unter Tabellen basierend auf verschlüsselten Datensätzen in Amazon S3 erstellen.

Nein

Weitere Informationen zur AWS KMS-Verschlüsselung mit Amazon S3 finden Sie unter Was ist der AWS Key Management Service und Wie Amazon Simple Storage Service (Amazon S3) AWS KMS verwendet im AWS Key Management Service-Entwicklerhandbuch. Weitere Informationen zur Verwendung von SSE-KMS oder CSE-KMS mit Athena finden Sie unter Launch: Amazon Athena fügt Unterstützung für das Abfragen verschlüsselter Daten aus dem AWS-Big-Data-Blog hinzu.

Empfehlungen zur Verschlüsselung

Wenn Sie Tabellendaten und Abfrageergebnisse mit vom Kunden verwalteten KMS-Schlüsseln ver- und entschlüsseln, empfehlen wir, die SSE-KMS-Verschlüsselung gegenüber den Verschlüsselungsmethoden SSE-S3 oder CSE-KMS zu verwenden. SSE-KMS bietet ein ausgewogenes Verhältnis zwischen Kontrolle, Einfachheit und Leistung und ist daher eine empfohlene Methode, wenn Sie verwaltete KMS-Schlüssel für die Datenverschlüsselung verwenden.

Vorteile von SSE-KMS gegenüber SSE-S3

  • SSE-KMS ermöglicht es Ihnen, Ihre eigenen Schlüssel anzugeben und zu verwalten, wodurch Sie mehr Kontrolle haben. Sie können Schlüsserichtlinien definieren, die Lebenszyklen von Schlüsseln überwachen und die Schlüsselnutzung überwachen.

Vorteile von SSE-KMS gegenüber CSE-KMS

  • SSE-KMS macht eine zusätzliche Infrastruktur zum Verschlüsseln und Entschlüsseln von Daten überflüssig, im Gegensatz zu CSE-KMS, das die kontinuierliche Wartung eines S3-Verschlüsselungsclients erfordert.

  • Bei CSE-KMS kann es aufgrund der Weiterentwicklung der Verschlüsselungsalgorithmen zu Kompatibilitätsproblemen zwischen neueren und älteren S3-Verschlüsselungsclients kommen, ein Problem, das SSE-KMS vermeidet.

  • SSE-KMS führt während der Verschlüsselungs- und Entschlüsselungsprozesse weniger API-Aufrufe an den KMS-Dienst für den Schlüsselabruf durch, was im Vergleich zu CSE-KMS zu einer besseren Leistung führt.

Nicht unterstützte Optionen

Folgende Verschlüsselungsoptionen werden nicht unterstützt:

  • SSE mit vom Kunden bereitgestellten Schlüsseln (SSE-C)

  • Clientseitige Verschlüsselung mit einem clientseitigen verwalteten Schlüssel.

  • Asymmetrische Schlüssel.

Einen Vergleich der Verschlüsselungsoptionen von Amazon S3 finden Sie unter Daten durch Verschlüsselung schützen im Benutzerhandbuch für Amazon Simple Storage Service.

Tools für die clientseitige Verschlüsselung

Beachten Sie für die clientseitige Verschlüsselung, dass zwei Tools verfügbar sind:

  • Amazon-S3-Verschlüsselungs-Client – Dies verschlüsselt Daten nur für Amazon S3 und wird von Athena unterstützt.

  • AWS Encryption SDK – Das SDK kann zum Verschlüsseln von Daten überall über AWS verwendet werden, wird aber nicht direkt von Athena unterstützt.

Diese Tools sind nicht kompatibel und Daten, die mit einem Tool verschlüsselt wurden, können nicht vom anderen entschlüsselt werden. Athena unterstützt den Amazon-S3-Verschlüsselungs-Client nur direkt. Wenn Sie das SDK verwenden, um Ihre Daten zu verschlüsseln, können Sie Abfragen von Athena ausführen, aber die Daten werden als verschlüsselter Text zurückgegeben.

Wenn Sie Athena verwenden möchten, um Daten abzufragen, die mit dem AWS-Verschlüsselungs-SDK verschlüsselt wurden, müssen Sie Ihre Daten herunterladen und entschlüsseln und sie dann erneut mit dem Amazon-S3-Verschlüsselungs-Client verschlüsseln.

Berechtigungen für verschlüsselte Daten in Amazon S3

Abhängig von der Art der in Amazon S3 verwendeten Verschlüsselung müssen Sie möglicherweise Berechtigungen, auch „Zulassen“-Aktionen genannt, zu Ihren in Athena verwendeten Richtlinien hinzufügen:

  • SSE-S3 – Wenn Sie für die Verschlüsselung SSE-S3 verwenden, benötigen Athena-Benutzer keine zusätzlichen Berechtigungen in ihren Richtlinien. Es reicht, wenn die entsprechenden Amazon-S3-Berechtigungen für den jeweiligen Amazon-S3-Speicherort und für Athena-Aktionen vorhanden sind. Weitere Informationen zu Richtlinien, die entsprechende Athena- und Amazon-S3-Berechtigungen erlauben, finden Sie unter AWS verwaltete Richtlinien für Amazon Athena und Zugriff auf Amazon S3 von Athena kontrollieren.

  • AWS KMS – Wenn Sie AWS KMS für die Verschlüsselung verwenden, müssen Athena-Benutzer bestimmte AWS KMS-Aktionen zusätzlich zu Athena- und Amazon-S3-Berechtigungen ausführen können. Sie lassen diese Aktionen zu, indem Sie die Schlüsselrichtlinie für die vom Kunden verwalteten Schlüsseln bearbeiten, die zum Verschlüsseln von Daten in Amazon S3 verwendet werden. Um wichtige Benutzer zu den entsprechenden AWS KMS-Schlüsselrichtlinien hinzuzufügen, können Sie die AWS KMS-Konsole unter https://console.aws.amazon.com/kms verwenden. Informationen zum Hinzufügen eines Benutzers zu einer AWS KMS-Schlüsselrichtlinie finden Sie unter Ermöglicht Schlüsselbenutzern die Verwendung des vom Kunden verwalteten Schlüssel im AWS Key Management Service-Entwicklerhandbuch.

    Anmerkung

    Erfahrene Schlüsselrichtlinien-Administratoren können die Schlüsselrichtlinien anpassen. kms:Decrypt ist die minimal erlaubte Aktion für einen Athena-Benutzer, um mit einem verschlüsselten Datensatz arbeiten zu können. Zur Nutzung von verschlüsselten Abfrageergebnissen sind Berechtigungen für die Aktionen kms:GenerateDataKey und kms:Decrypt notwendig.

    Wenn Sie in Athena Abfragen für Datensätze mit einer großen Anzahl von Objekten in Amazon S3 ausführen, die mit AWS KMS verschlüsselt sind, werden die Abfrageergebnisse möglicherweise von AWS KMS gedrosselt. Bei einer hohen Zahl kleiner Objekte ist dies noch wahrscheinlicher. Wiederholte Anforderungen werden von Athena unterbunden, dennoch kann ein Drosselungsfehler auftreten. Wenn Sie mit einer großen Anzahl verschlüsselter Objekte arbeiten und dieses Problem auftritt, besteht eine Möglichkeit darin, Amazon-S3-Bucket-Schlüssel zu aktivieren, um die Anzahl der Aufrufe an KMS zu reduzieren. Weitere Informationen finden Sie unter Reduzieren der Kosten für SSE-KMS mit Amazon-S3-Bucket-Schlüsseln im Benutzerhandbuch von Amazon Simple Storage Service. Eine weitere Möglichkeit besteht darin, Ihre Servicekontingente für zu erhöhen AWS KMS. Weitere Informationen finden Sie unter Kontingente im AWS Key Management Service-Entwicklerhandbuch.

Informationen zur Fehlerbehebung bei Berechtigungen bei der Verwendung von Amazon S3 mit Athena finden Sie im Abschnitt Berechtigungen des Themas Beheben von Problemen in Athena.

Berechtigungen für verschlüsselte Metadaten im AWS Glue-Datenkatalog

Wenn Sie Metadaten im AWS Glue Data Catalog verschlüsseln, müssen Sie "kms:GenerateDataKey"-, "kms:Decrypt"- und "kms:Encrypt"-Aktionen zu den Richtlinien hinzufügen, die Sie für den Zugriff auf Athena verwenden. Weitere Informationen finden Sie unter Zugriff auf verschlüsselte Metadaten von Athena im AWS Glue Data Catalog konfigurieren.