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à.
Nelle sezioni seguenti vengono fornite informazioni sull'utilizzo delle chiavi gestite in AWS Key Management Service (AWS KMS).
Nota
Amazon SNS supporta solo chiavi KMS di crittografia simmetrica. Non è possibile utilizzare nessun altro tipo di chiave KMS per crittografare le risorse del servizio. Per informazioni su come determinare se una chiave KMS è simmetrica o asimmetrica, consultare Identifying asymmetric KMS keys (Individuazione di chiavi KMS asimmetriche).
Stima dei costi AWS KMS
Per prevedere i costi e comprendere meglio la tua AWS bolletta, potresti voler sapere con quale frequenza Amazon SNS utilizza la tua. AWS KMS key
Nota
Anche se la seguente formula può darti un'idea molto precisa dei costi previsti, i costi effettivi potrebbero essere più elevati a causa della natura diffusa di Amazon SNS.
Per calcolare il numero di richieste API (R
) per argomento, usa la formula seguente:
R = B / D * (2 * P)
B
è il periodo di fatturazione (in secondi).
D
è il periodo di riutilizzo della chiave dati (in secondi–Amazon SNS riutilizza una chiave dati per un massimo di 5 minuti).
P
è il numero di principali per la pubblicazione che effettuano invii all’argomento Amazon SNS.
Di seguito vengono riportati esempi di calcolo. Per informazioni dettagliate sui prezzi, consulta Prezzi di AWS Key Management Service
Esempio 1: calcolo del numero di chiamate AWS KMS API per 1 editore e 1 argomento
Questo esempio assume quanto segue:
-
Il periodo di fatturazione è compreso tra il 1° e il 31 gennaio (2.678.400 secondi).
-
Il periodo di riutilizzo della chiave di dati è di 5 minuti (300 secondi).
-
C'è 1 argomento.
-
C'è un principale per la pubblicazione.
2,678,400 / 300 * (2 * 1) = 17,856
Esempio 2: calcolo del numero di chiamate API AWS KMS per più editori e 2 argomenti
Questo esempio assume quanto segue:
-
Il periodo di fatturazione è compreso tra il 1° e il 28 febbraio (2.419.200 secondi).
-
Il periodo di riutilizzo della chiave di dati è di 5 minuti (300 secondi).
-
Ci sono 2 argomenti.
-
Il primo argomento ha 3 principali per la pubblicazione.
-
Il secondo argomento ha 5 principali per la pubblicazione.
(2,419,200 / 300 * (2 * 3)) + (2,419,200 / 300 * (2 * 5)) = 129,024
Configurazione delle autorizzazioni AWS KMS
Prima di poter utilizzare SSE, è necessario configurare AWS KMS key le politiche per consentire la crittografia degli argomenti e la crittografia e la decrittografia dei messaggi. Per esempi e ulteriori informazioni sulle autorizzazioni di AWS KMS , consulta AWS KMS Autorizzazioni API: Documentazione su operazioni e risorse nellaAWS Key Management Service Guida per sviluppatori. Per dettagli su come configurare un argomento Amazon SNS con crittografia lato server, consulta Informazioni aggiuntive.
Nota
È possibile gestire le autorizzazioni per le chiavi KMS utilizzando le policy IAM. Per ulteriori informazioni, consulta Using IAM Policies with. AWS KMS
Sebbene sia possibile configurare le autorizzazioni globali per l'invio e la ricezione da Amazon SNS AWS KMS
, è necessario nominare esplicitamente l' KMSs ARN completo di in regioni Resource
specifiche nella sezione di una policy IAM.
È inoltre necessario assicurarsi che le politiche chiave di consentano le AWS KMS key autorizzazioni necessarie. Per eseguire questa operazione, denomina i principali che producono e utilizzano messaggi crittografati in Amazon SNS come utenti nella policy della chiave KMS.
In alternativa, puoi specificare AWS KMS le azioni richieste e l'ARN KMS in una policy IAM assegnata ai principali che pubblicano e sottoscrivono per ricevere messaggi crittografati in Amazon SNS. Per ulteriori informazioni, consulta Gestione dell'accesso a AWS KMS nella Guida per sviluppatori di AWS Key Management Service .
Se stai selezionando una chiave gestita dal cliente per l'argomento Amazon SNS e stai utilizzando alias per controllare l'accesso alle chiavi KMS utilizzando le policy IAM o le policy delle chiavi KMS con la chiave di condizione kms:ResourceAliases
, assicurati che alla chiave gestita dal cliente selezionata sia associato anche un alias. Per ulteriori informazioni sull'uso degli alias per controllare l'accesso alle chiavi KMS, consulta Using aliases to control access to KMS keys (Utilizzo degli alias per controllare l'accesso alle chiavi KMS) nella Guida per gli sviluppatori di AWS Key Management Service
.
Consentire a un utente di inviare messaggi a un argomento con SEE
L'editore deve avere le autorizzazioni kms:GenerateDataKey*
e kms:Decrypt
per la chiave AWS KMS key.
{
"Statement": [{
"Effect": "Allow",
"Action": [
"kms:GenerateDataKey*",
"kms:Decrypt"
],
"Resource": "arn:aws:kms:us-east-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab"
}, {
"Effect": "Allow",
"Action": [
"sns:Publish"
],
"Resource": "arn:aws:sns:*:123456789012:MyTopic"
}]
}
Abilita la compatibilità tra le fonti di eventi provenienti dai AWS servizi e gli argomenti crittografati
Diversi AWS servizi pubblicano eventi su argomenti di Amazon SNS. Per consentire a queste origini eventi di utilizzare argomenti crittografati, devi eseguire la seguente procedura.
-
Utilizzo di una chiave gestita dal cliente. Per ulteriori informazioni, consulta Creazione di chiavi nella Guida per gli sviluppatori di AWS Key Management Service .
-
Per consentire al AWS servizio di disporre delle
kms:Decrypt
autorizzazionikms:GenerateDataKey*
and, aggiungi la seguente dichiarazione alla politica KMS.{ "Statement": [{ "Effect": "Allow", "Principal": { "Service": "
service
.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "*" }] }Origine eventi Principale del servizio Amazon CloudWatch cloudwatch.amazonaws.com
CloudWatch Eventi Amazon events.amazonaws.com
AWS CodeCommit codecommit.amazonaws.com
AWS Database Migration Service dms.amazonaws.com
AWS Directory Service ds.amazonaws.com
Amazon DynamoDB dynamodb.amazonaws.com
Amazon Inspector inspector.amazonaws.com
Amazon Redshift redshift.amazonaws.com
Amazon RDS events.rds.amazonaws.com
Amazon S3 Glacier glacier.amazonaws.com
Amazon Simple Email Service ses.amazonaws.com
Amazon Simple Storage Service s3.amazonaws.com
AWS Snowball Edge importexport.amazonaws.com
AWS Systems Manager Incident Manager AWS Systems Manager Incident Manager è costituito da due principi di servizio:
ssm-incidents.amazonaws.com
;ssm-contacts.amazonaws.com
Nota
Alcune fonti di eventi Amazon SNS richiedono di fornire un ruolo IAM (anziché il responsabile del servizio) nella AWS KMS key policy:
-
Aggiungi le chiavi di condizione
aws:SourceAccount
eaws:SourceArn
per la policy delle risorse KMS per proteggere ulteriormente la chiave KMS da attacchi confused deputy. Fare riferimento all'elenco della documentazione specifica del servizio (sopra) per i dettagli esatti in ciascun caso.Importante
L'aggiunta di
aws:SourceAccount
aws:SourceArn
, eaws:SourceOrgID
a un AWS KMS criterio non è supportata per EventBridge-to-encrypted gli argomenti.{ "Effect": "Allow", "Principal": { "Service": "service.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "
customer-account-id
" }, "ArnLike": { "aws:SourceArn": "arn:aws:service:region:customer-account-id
:resource-type:customer-resource-id
" } } } -
Abilitare SSE per il proprio argomento utilizzando la chiave KMS.
-
Fornire l'ARN dell'argomento crittografato per l'origine eventi.
AWS KMS errori
Quando lavori con Amazon SNS e AWS KMS, potresti riscontrare errori. Di seguito sono descritti gli errori e le possibili opzioni per la risoluzione dei problemi.
- KMSAccessDeniedException
-
Il testo cifrato fa riferimento a una chiave che non esiste o a cui non hai accesso.
Codice di stato HTTP: 400
- KMSDisabledEccezione
-
La richiesta è stata rifiutata perché la chiave KMS specificata non è abilitata.
Codice di stato HTTP: 400
- KMSInvalidStateException
-
La richiesta è stata rifiutata perché lo stato della risorsa specificata non è valido per questa richiesta. Per ulteriori informazioni, consulta Key states of AWS KMS keys (Stati chiave nelle chiavi AWS KMS keys) nella Guida per gli sviluppatori di AWS Key Management Service .
Codice di stato HTTP: 400
- KMSNotFoundException
-
La richiesta è stata rifiutata perché non è possibile trovare l'entità o la risorsa specificata.
Codice di stato HTTP: 400
- KMSOptInRequired
-
L'ID della chiave di AWS accesso richiede un abbonamento al servizio.
Codice di stato HTTP: 403
- KMSThrottlingEccezione
-
La richiesta è stata negata a causa del throttling della richiesta. Per ulteriori informazioni sulla limitazione della larghezza di banda della rete consulta Quote nella Guida per gli sviluppatori di AWS Key Management Service .
Codice di stato HTTP: 400