Modifica di una AWS KMS politica per Performance Insights - Amazon Relational Database Service

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à.

Modifica di una AWS KMS politica per Performance Insights

Performance Insights utilizza an AWS KMS key per crittografare i dati sensibili. Quando abiliti Performance Insights mediante l'API o la console, sono disponibili le seguenti opzioni:

  • Scegli l'impostazione predefinita Chiave gestita da AWS.

    Amazon RDS lo utilizza Chiave gestita da AWS per la tua nuova istanza DB. Amazon RDS crea una Chiave gestita da AWS per il tuo Account AWS. Il tuo Account AWS ha un Amazon RDS diverso Chiave gestita da AWS per ognuno Regione AWS.

  • Scegli una chiave gestita dal cliente.

    Se si specifica una chiave gestita dal cliente, gli utenti dell'account che chiamano l'API Performance Insights necessitano delle autorizzazioni kms:Decrypt e kms:GenerateDataKey per la chiave KMS. È possibile configurare queste autorizzazioni mediante le policy IAM. Tuttavia, è consigliabile gestire queste autorizzazioni mediante la policy della chiave KMS. Per ulteriori informazioni, consulta Policy delle chiavi in AWS KMS nella Guida per gli sviluppatori di AWS Key Management Service .

Il seguente esempio mostra come aggiungere istruzioni alla policy della chiave KMS. Queste istruzioni consentono l'accesso a Performance Insights. A seconda della modalità di utilizzare la chiave KMS, potrebbe essere necessario modificare alcune restrizioni. Prima di aggiungere istruzioni alle policy, ai criteri, rimuovi tutti i commenti.

JSON
{ "Version" : "2012-10-17", "Id" : "your-policy", "Statement" : [ { "Sid" : "AllowViewingRDSPerformanceInsights", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::444455556666:role/Role1" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition" : { "StringEquals" : { "kms:ViaService" : "rds.us-east-1.amazonaws.com" }, "ForAnyValue:StringEquals": { "kms:EncryptionContext:aws:pi:service": "rds", "kms:EncryptionContext:service": "pi", "kms:EncryptionContext:aws:rds:db-id": "db-AAAAABBBBBCCCCDDDDDEEEEE" } } } ] }

In che modo Performance Insights utilizza la chiave gestita dal AWS KMS cliente

La funzionalità Approfondimenti sulle prestazioni utilizza una chiave gestita dal cliente per crittografare i dati sensibili. Quando attivi la funzionalità Approfondimenti sulle prestazioni, puoi specificare una chiave AWS KMS tramite l'API. La funzionalità Approfondimenti sulle prestazioni crea autorizzazioni KMS su questa chiave. Utilizza la chiave ed esegue le operazioni necessarie per elaborare i dati sensibili. I dati sensibili includono campi come utente, database, applicazione e testo di query SQL. La funzionalità Approfondimenti sulle prestazioni garantisce che i dati rimangano crittografati mentre sono sia in transito che inattivi..

Come funziona Performance Insights con IAM AWS KMS

IAM concede autorizzazioni a persone specifiche APIs. Performance Insights ha il seguente pubblico APIs, che puoi limitare utilizzando le policy IAM:

  • DescribeDimensionKeys

  • GetDimensionKeyDetails

  • GetResourceMetadata

  • GetResourceMetrics

  • ListAvailableResourceDimensions

  • ListAvailableResourceMetrics

Puoi utilizzare le seguenti richieste API per recuperare i dati sensibili.

  • DescribeDimensionKeys

  • GetDimensionKeyDetails

  • GetResourceMetrics

Quando utilizzi l'API per recuperare i dati sensibili, la funzionalità Approfondimenti sulle prestazioni usa le credenziali del chiamante. Questo controllo garantisce che l'accesso ai dati sensibili sia limitato a coloro che hanno accesso alla chiave KMS.

Quando le chiami APIs, hai bisogno delle autorizzazioni per chiamare l'API tramite la policy IAM e delle autorizzazioni per richiamare l'kms:decryptazione tramite la AWS KMS policy chiave.

L'API GetResourceMetrics può restituire dati sensibili e non sensibili. I parametri della richiesta determinano se la risposta deve includere dati sensibili. L'API restituisce dati sensibili quando la richiesta include una dimensione sensibile nei parametri del filtro o nei parametri di raggruppamento.

Per ulteriori informazioni sulle dimensioni che puoi utilizzare con l'GetResourceMetricsAPI, consulta. DimensionGroup

Esempio Esempi

L'esempio seguente richiede i dati sensibili per il gruppo db.user:

POST / HTTP/1.1 Host: <Hostname> Accept-Encoding: identity X-Amz-Target: PerformanceInsightsv20180227.GetResourceMetrics Content-Type: application/x-amz-json-1.1 User-Agent: <UserAgentString> X-Amz-Date: <Date> Authorization: AWS4-HMAC-SHA256 Credential=<Credential>, SignedHeaders=<Headers>, Signature=<Signature> Content-Length: <PayloadSizeBytes> { "ServiceType": "RDS", "Identifier": "db-ABC1DEFGHIJKL2MNOPQRSTUV3W", "MetricQueries": [ { "Metric": "db.load.avg", "GroupBy": { "Group": "db.user", "Limit": 2 } } ], "StartTime": 1693872000, "EndTime": 1694044800, "PeriodInSeconds": 86400 }

L'esempio seguente richiede i dati non sensibili per la metrica db.load.avg:

POST / HTTP/1.1 Host: <Hostname> Accept-Encoding: identity X-Amz-Target: PerformanceInsightsv20180227.GetResourceMetrics Content-Type: application/x-amz-json-1.1 User-Agent: <UserAgentString> X-Amz-Date: <Date> Authorization: AWS4-HMAC-SHA256 Credential=<Credential>, SignedHeaders=<Headers>, Signature=<Signature> Content-Length: <PayloadSizeBytes> { "ServiceType": "RDS", "Identifier": "db-ABC1DEFGHIJKL2MNOPQRSTUV3W", "MetricQueries": [ { "Metric": "db.load.avg" } ], "StartTime": 1693872000, "EndTime": 1694044800, "PeriodInSeconds": 86400 }