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.
Datenverschlüsselung
Dieses Thema enthält spezifische Informationen zu Amazon Connect-Entscheidungen zur Verschlüsselung bei der Übertragung und zur Verschlüsselung im Ruhezustand.
Verschlüsselung während der Übertragung
Die gesamte Kommunikation zwischen Kunden und Amazon Connect Decisions sowie zwischen Amazon Connect Decisions und seinen nachgelagerten Abhängigkeiten wird durch Verbindungen mit TLS 1.2 oder höher geschützt.
Verschlüsselung im Ruhezustand
Alle Daten im Ruhezustand werden serverseitig verschlüsselt. Es ist keine zusätzliche Konfiguration erforderlich, da die Verschlüsselung vom Dienst transparent abgewickelt wird.
Standardmäßig verschlüsselt Amazon Connect Decisions Ihre Daten mit AWS-eigenen Verschlüsselungsschlüsseln von AWS Key Management Service (AWS KMS). Sie müssen keine Maßnahmen ergreifen, um die AWS-eigenen Schlüssel zu schützen, mit denen Ihre Daten verschlüsselt werden. Weitere Informationen finden Sie im AWS Key Management Service Developer Guide unter AWS-eigene Schlüssel.
Sie können optional einen vom Kunden verwalteten KMS-Schlüssel konfigurieren, um die volle Kontrolle über den Schlüssellebenszyklus zu haben, einschließlich Erstellung, Rotation, Deaktivierung und Verwaltung der Zugriffsrichtlinien.
Verschlüsselung von Daten im Ruhezustand mit vom Kunden verwalteten KMS-Schlüsseln
Wie Amazon Connect Decisions einen vom Kunden verwalteten KMS-Schlüssel verwendet
Wenn Sie einen vom Kunden verwalteten KMS-Schlüssel konfigurieren, verwendet Amazon Connect Decisions ihn, um alle Daten in Ihrer Instance im Ruhezustand zu verschlüsseln. Dies schließt Daten ein, die in der dem Dienst zugrunde liegenden Infrastruktur gespeichert sind.
Der Dienst greift über drei Mechanismen auf Ihren Schlüssel zu:
-
Dienstprinzipal — Der
scn.amazonaws.com.rproxy.goskope.comDienstprinzipal ruft KMS direkt für Encrypt, Decrypt und GenerateDataKey Operationen auf und übergibt dabei den Verschlüsselungskontext und verwirrte stellvertretende Header. -
Zuschüsse — Der Dienst gewährt Ihren Schlüssel, wenn Sie eine Instanz erstellen. Diese Zuschüsse ermöglichen es abhängigen AWS-Services, Daten mithilfe Ihres Schlüssels zu verschlüsseln und zu entschlüsseln. Zuschüsse werden zurückgezogen, wenn die Instanz gelöscht wird.
-
Instanzrolle über FAS — Eine serviceverknüpfte Rolle greift über die
scn.<region>.amazonaws.com.rproxy.goskope.comViaService Bedingung auf Ihren Schlüssel zu, wenn Sie mit der Konsole interagieren.
Verschlüsselungskontext: Alle direkten KMS-Operationen beinhalten den folgenden Verschlüsselungskontext:
{"aws:scn:arn": "arn:aws:scn:<region>:<account-id>:instance/<instance-id>"}
Zwischenspeichern von Datenschlüsseln: Amazon Connect Decisions speichert Datenschlüssel für bis zu 15 Minuten im Cache. Das bedeutet, dass der Dienst, nachdem Sie den Zugriff auf Ihren KMS-Schlüssel deaktiviert oder widerrufen haben, einen zwischengespeicherten Datenschlüssel bis zu 15 Minuten lang weiter verwenden kann, bevor der Betrieb fehlschlägt.
Konfiguration eines vom Kunden verwalteten KMS-Schlüssels
Amazon Connect Decisions unterstützt nur KMS-Schlüssel mit symmetrischer Verschlüsselung. Multi-region Schlüssel werden unterstützt.
Konfiguration von Berechtigungen zur Verwendung eines vom Kunden verwalteten KMS-Schlüssels
Um einen vom Kunden verwalteten KMS-Schlüssel zu verwenden, konfigurieren Sie Ihre Schlüsselrichtlinie anhand der folgenden drei Schritte:
-
Erstellen Sie einen KMS-Schlüssel mit der unten aufgeführten Basisrichtlinie.
-
Erstellen Sie eine Amazon Connect Decisions-Instanz und wählen Sie diesen Schlüssel aus.
-
(Optional, empfohlen) Aktualisieren Sie die Schlüsselrichtlinie mit Einschränkungen auf Instanzebene.
Schritt 1 — Erstellen Sie einen Schlüssel mit der Basisrichtlinie
Öffnen Sie die AWS KMS-Konsole<customer-account-id>Ersetzen Sie es durch Ihre AWS-Konto-ID und <region> durch Ihre AWS-Region.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAccountRootFullAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<customer-account-id>:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "AllowScnRetrievalOfKeyMetadata", "Effect": "Allow", "Principal": { "Service": "scn.amazonaws.com" }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "<customer-account-id>" } } }, { "Sid": "AllowScnEncryptDecryptWithContext", "Effect": "Allow", "Principal": { "Service": "scn.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "<customer-account-id>" } } }, { "Sid": "AllowScnCryptoViaDependencyServices", "Effect": "Allow", "Principal": { "Service": "scn.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": [ "redshift-serverless.<region>.amazonaws.com", "aoss.<region>.amazonaws.com", "dynamodb.<region>.amazonaws.com", "s3.<region>.amazonaws.com" ] } } }, { "Sid": "AllowScnCreateGrantForDependencyServices", "Effect": "Allow", "Principal": { "Service": "scn.amazonaws.com" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Encrypt", "Decrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "DescribeKey", "RetireGrant", "ReEncryptFrom", "ReEncryptTo", "CreateGrant" ] }, "Bool": { "kms:GrantIsForAWSResource": "true" } } }, { "Sid": "AllowInstanceRoleDescribeKey", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::<customer-account-id>:role/service-role/scn-instance-role-*" }, "StringEquals": { "kms:ViaService": "scn.<region>.amazonaws.com" } } }, { "Sid": "AllowInstanceRoleEncryptDecrypt", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::<customer-account-id>:role/service-role/scn-instance-role-*" }, "StringEquals": { "kms:ViaService": "scn.<region>.amazonaws.com" } } }, { "Sid": "AllowInstanceRoleCreateGrant", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::<customer-account-id>:role/service-role/scn-instance-role-*" }, "StringEquals": { "kms:ViaService": "scn.<region>.amazonaws.com" }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Encrypt", "Decrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "DescribeKey", "CreateGrant" ] }, "Bool": { "kms:GrantIsForAWSResource": "true" } } } ] }
Erläuterungen zur Grundsatzerklärung:
-
AllowAccountRootFullAccess— Stellt sicher, dass der Schlüsselinhaber die volle Kontrolle behält. Erforderlich, um das Sperren des Schlüssels zu verhindern.
-
AllowScnRetrievalOfKeyMetadata— Ermöglicht dem Service, die Schlüsselkonfiguration bei der Instanzerstellung zu überprüfen. Eingeschränkt auf Ihr Konto über.
aws:SourceAccount -
AllowScnEncryptDecryptWithContext— Ermöglicht direkte kryptografische Operationen mit Ihren Daten. Nach Schritt 3 wird dies über den Verschlüsselungskontext weiter auf Ihre spezifische Instanz beschränkt.
-
AllowScnCryptoViaDependencyServices— Ermöglicht kryptografische Operationen über Abhängigkeitsdienste, die den Verschlüsselungskontext nicht unterstützen. Eingeschränkt auf bestimmte
kms:ViaServiceDienstendpunkte. -
AllowScnCreateGrantForDependencyServices— Ermöglicht die Erstellung von Zuschüssen für Abhängigkeitsdienste. Beschränkt auf aufgelistete Operationen und nur auf AWS-Ressourcen.
-
AllowInstanceRoleDescribeKey— Ermöglicht der serviceverknüpften Rolle der Instance, den Schlüssel über FAS zu beschreiben.
-
AllowInstanceRoleEncryptDecrypt— Ermöglicht der Instanzrolle, Datenschlüssel über FAS zu entschlüsseln und zu generieren.
-
AllowInstanceRoleCreateGrant— Ermöglicht der Instanzrolle, Zuschüsse für nachgelagerte Integrationen zu gewähren.
Schritt 2 — Erstellen Sie Ihre Amazon Connect Decisions-Instance
Wählen Sie bei der Instanzerstellung unter den Verschlüsselungseinstellungen die Option Kundenverwalteter Schlüssel aus und wählen Sie den Schlüssel aus, den Sie in Schritt 1 erstellt haben.
Wichtig
Sie können diese Auswahl nach der Instanzerstellung nicht mehr ändern. Wenn Sie in Zukunft einen anderen Schlüssel verwenden müssen, müssen Sie eine neue Instanz erstellen.
Schritt 3 (optional) — Einschränkungen auf Instanzebene hinzufügen
Nachdem Sie Ihre Instance erstellt haben, aktualisieren Sie die Schlüsselrichtlinie, um den Zugriff nur auf diese Instance einzuschränken. Dadurch wird verhindert, dass andere Instanzen im selben Konto den Schlüssel verwenden.
Ersetzen Sie <customer-account-id><region>, und <instance-id> (die UUID, die auf der Amazon Connect Decisions-Konsole sichtbar ist).
Die Änderungen gegenüber der Basisrichtlinie sind:
-
Fügen Sie den Service Principal-Anweisungen
aws:SourceArnBedingungen hinzu und beschränken Sie sich dabei auf Ihren Instanz-ARN. -
Fügen Sie
kms:EncryptionContext:aws:scn:arnBedingungen zu kryptografischen Vorgängen hinzu, wobei der Verschlüsselungskontext Ihrer Instanz entsprechen muss.
Aktualisierte Richtlinie (es werden nur die Anweisungen angezeigt, die sich ändern):
AllowScnRetrievalOfKeyMetadata— ArnLike Bedingung hinzufügen:
"Condition": { "StringEquals": { "aws:SourceAccount": "<customer-account-id>" }, "ArnLike": { "aws:SourceArn": "arn:aws:scn:<region>:<customer-account-id>:instance/<instance-id>" } }
AllowScnEncryptDecryptWithContext— EncryptionContext SourceArn Bedingungen hinzufügen:
"Condition": { "StringEquals": { "aws:SourceAccount": "<customer-account-id>", "kms:EncryptionContext:aws:scn:arn": "arn:aws:scn:<region>:<customer-account-id>:instance/<instance-id>" }, "ArnLike": { "aws:SourceArn": "arn:aws:scn:<region>:<customer-account-id>:instance/<instance-id>" } }
AllowInstanceRoleEncryptDecrypt— EncryptionContext Bedingung hinzufügen:
"Condition": { "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::<customer-account-id>:role/scn-instance-role-*" }, "StringEquals": { "kms:EncryptionContext:aws:scn:arn": "arn:aws:scn:<region>:<customer-account-id>:instance/<instance-id>", "kms:ViaService": "scn.<region>.amazonaws.com" } }
Eine neue Instanz mit einem vom Kunden verwalteten KMS-Schlüssel erstellen
Sie wählen den KMS-Schlüssel bei der Instanzerstellung in der Amazon Connect Decisions-Konsole aus. Weitere Informationen zum Erstellen einer Instance finden Sie unter Erstellen einer Amazon Connect Decisions-Instance.
Änderung der Verschlüsselungskonfiguration auf einer vorhandenen Instance
Amazon Connect Decisions unterstützt das Ändern des KMS-Schlüssels auf einer aktiven Instance nicht. Wenn Sie einen anderen Schlüssel verwenden müssen, müssen Sie eine neue Instanz erstellen, die mit dem gewünschten Schlüssel konfiguriert ist. Mit dem vorherigen Schlüssel verschlüsselte Daten werden auf der neuen Instanz nicht beibehalten.
Einschränkung des Zugriffs auf den vom Kunden verwalteten KMS-Schlüssel
Sie können den Zugriff auf Ihren Schlüssel mithilfe der folgenden Mechanismen einschränken:
-
Verschlüsselungskontext — Verwenden Sie ihn
kms:EncryptionContext:aws:scn:arnin Ihrer Schlüsselrichtlinie, um Operationen auf eine bestimmte Instanz zu beschränken (siehe Schritt 3). -
Verwirrter stellvertretender Schutz — Der Dienst leitet KMS-Aufrufe
aws:SourceArnweiteraws:SourceAccountund weiter. Verwenden Sie diese Bedingungen, um sicherzustellen, dass nur Ihr Konto und Ihre Instanz auf den Schlüssel zugreifen können. -
kms: ViaService — Die Instanzrolle greift nur über den Schlüssel zu
scn.<region>.amazonaws.com, wodurch eine direkte Verwendung außerhalb des Dienstes verhindert wird. -
Einschränkungen bei der Gewährung — Zuschüsse beziehen sich auf explizit aufgeführte Operationen
kms:GrantIsForAWSResourceund sind auf diese beschränkt.
Anmerkung
Abhängigkeitsdienste (Redshift Serverless, OpenSearch Serverless, DynamoDB) unterstützen keinen Verschlüsselungskontext oder verwirrte stellvertretende Header. Der Zugriff auf diese Dienste erfolgt ausschließlich anhand eines Bereichs. kms:ViaService
Überwachung der Interaktion von Amazon Connect Decisions mit AWS KMS
Sie können AWS verwenden CloudTrail , um KMS-Anfragen zu verfolgen, die Amazon Connect Decisions in Ihrem Namen stellt. Suchen Sie nach Protokolleinträgen mit den folgenden Werten:
| Feld | Erwarteter Wert |
|---|---|
eventName |
|
Benutzer Identity.invokedBy |
|
Anfrage Parameters.encryptionContext |
|
Sie können CloudTrail Ereignisse anhand dieser Werte filtern, um zu überprüfen, wann und wie Amazon Connect Decisions auf Ihren KMS-Schlüssel zugreift.
Weitere Informationen finden Sie unter Protokollieren von AWS KMS-API-Aufrufen mit AWS CloudTrail.