Amazon Redshift non supporterà più la creazione di nuovi Python a UDFs partire dal 1° novembre 2025. Se vuoi usare Python UDFs, crea la UDFs data precedente a quella data. Python esistente UDFs continuerà a funzionare normalmente. Per ulteriori informazioni, consulta il post del blog
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo AWS KMS con l'API dati Amazon Redshift
Quando crittografi il tuo cluster Amazon Redshift o il gruppo di lavoro Redshift Serverless con una chiave gestita dal cliente, l'API dati di Amazon Redshift utilizza la stessa chiave gestita dal cliente per archiviare e crittografare le tue query e i tuoi risultati.
L'API Data crittografa i dati per impostazione predefinita per proteggere le informazioni sensibili, come il testo delle query e i risultati delle query. Per questa protezione utilizza chiavi di AWS KMS crittografia AWS di proprietà di.
La crittografia predefinita per i dati archiviati riduce il sovraccarico operativo e la complessità quando si proteggono i dati sensibili. Questo approccio consente di creare applicazioni sicure che soddisfano i rigorosi requisiti normativi e di conformità alla crittografia.
Utilizzo delle sovvenzioni in AWS KMS
L'API Data richiede una concessione per utilizzare la chiave gestita dal cliente.
Quando chiami ExecuteStatement o BatchExecuteStatement contro un cluster crittografato con una chiave gestita dal cliente, Amazon Redshift crea una concessione per tuo conto inviando una CreateGrantrichiesta a. AWS KMS AWS KMSutilizza le concessioni per consentire all'API Data di accedere a una chiave KMS nel tuo account.
L'API Data richiede la concessione dell'utilizzo della chiave gestita dal cliente per le seguenti operazioni:
-
Invia
Encryptrichieste per AWS KMS crittografare i metadati delle query con la tua chiave gestita dal cliente. -
Invia
GenerateDataKeyrichieste per AWS KMS generare chiavi di dati crittografate dalla chiave gestita dal cliente. -
Invia
Decryptrichieste a per AWS KMS decrittografare le chiavi di dati crittografate in modo che possano crittografare i tuoi dati.
Puoi revocare l'accesso alla concessione o rimuovere l'accesso di Amazon Redshift alla tua chiave gestita dai clienti in qualsiasi momento. In tal caso, l'API Data non può più accedere ai dati crittografati dalla chiave gestita dal cliente, il che influisce sulle operazioni che dipendono da tali dati. Ad esempio, se tenti di recuperare i risultati della query o di tenere traccia dello stato della query dopo la revoca della concessione, l'API Data restituisce un. AccessDeniedException
Politiche chiave per la chiave gestita dai clienti
Le policy della chiave controllano l’accesso alla chiave gestita dal cliente. Ogni chiave gestita dal cliente deve avere esattamente una policy della chiave, che contiene istruzioni che determinano chi può usare la chiave e come la possono usare. Quando crei la chiave gestita dal cliente, è possibile specificare una policy della chiave. Per ulteriori informazioni, consulta Customer managed keys nella Guida per sviluppatori AWS Key Management Service.
Per utilizzare le chiavi gestite dai clienti con l'API Data, devi prima consentire l'accesso ad Amazon Redshift. Le seguenti operazioni API devono essere consentite nella policy chiave:
-
kms:CreateGrant: aggiunge una concessione a una chiave gestita dal cliente. Concede l'accesso di controllo a una AWS KMS chiave specificata, che consente l'accesso alle operazioni di concessione richieste da Amazon Redshift. Per ulteriori informazioni, consulta Using grants in. AWS KMS
Di seguito è riportato un esempio di politica chiave:
"Statement":[ { "Sid":"Allow access to principals authorized to use Amazon Redshift", "Effect":"Allow", "Principal":{ "AWS":"*" }, "Action":[ "kms:DescribeKey", "kms:CreateGrant" ], "Resource":"*", "Condition":{ "StringEquals":{ "kms:ViaService":"redshift.amazonaws.com", "kms:CallerAccount":"111122223333" } } }, { "Sid":"AllowKeyAdministratorsAccess", "Effect":"Allow", "Principal":{ "AWS":"arn:aws:iam::111122223333:role/ExampleAdminRole" }, "Action":"kms:*", "Resource":"*" }, { "Sid":"AllowKeyUseForExampleRole", "Effect":"Allow", "Principal":{ "AWS":"arn:aws:iam::111122223333:role/ExampleUserRole" }, "Action":[ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource":"*" } ]
Contesto di crittografia dell'API dei dati
Un contesto di crittografia è un insieme opzionale di coppie chiave-valore che contiene informazioni contestuali aggiuntive sui dati. AWS KMSutilizza il contesto di crittografia come dati autenticati aggiuntivi per supportare la crittografia autenticata. Quando includi un contesto di crittografia in una richiesta di crittografia dei dati, AWS KMS associa il contesto di crittografia ai dati crittografati. Per decrittografare i dati, è necessario includere lo stesso contesto di crittografia nella richiesta.
L'API Data utilizza le stesse tre coppie chiave-valore del contesto di crittografia in tutte le operazioni AWS KMS crittografiche per i cluster predisposti:
-
aws:redshift:arn— Amazon Resource Name (ARN) del cluster -
aws:redshift:createtime— Il timestamp in cui è stata richiesta la creazione del cluster -
serviceName–RedshiftDataAPI
"EncryptionContextSubset": { "aws:redshift:arn": "arn:aws:redshift:us-east-1:123456789012:cluster:redshift-cluster", "aws:redshift:createtime": "20250815T0000Z", "serviceName": "RedshiftDataAPI", }
L'API Data utilizza due coppie chiave-valore del contesto di crittografia in tutte le operazioni AWS KMS crittografiche per gruppi di lavoro senza server:
-
aws:redshift-serverless:arn— L'Amazon Resource Name (ARN) dello spazio dei nomi -
serviceName— RedshiftData API
"EncryptionContextSubset": { "aws:redshift-serverless:arn": "arn:aws:redshift-serverless:us-east-1:123456789012:namespace:12345678-1234-1234-1234-123456789012", "serviceName": "RedshiftDataAPI" }
Per ulteriori informazioni sulla crittografia, vedere Introduzione ai dettagli crittografici di AWS KMS. Per ulteriori informazioni su Amazon Redshift e l'AWS KMSintegrazione, consulta Come utilizza Amazon Redshift. AWS KMS