Gestione delle chiavi e dei costi di SNS crittografia Amazon - Amazon Simple Notification 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à.

Gestione delle chiavi e dei costi di SNS crittografia Amazon

Nelle sezioni seguenti vengono fornite informazioni sull'utilizzo delle chiavi gestite in AWS Key Management Service (AWS KMS). Per saperne di più su

Nota

Amazon supporta SNS solo chiavi di crittografia KMS simmetriche. Non puoi utilizzare nessun altro tipo di KMS chiave per crittografare le risorse del servizio. Per informazioni su come determinare se una KMS chiave è una chiave di crittografia simmetrica, vedi Identificazione delle chiavi asimmetriche. KMS

AWS KMS Stima dei costi

Per prevedere i costi e comprendere meglio la tua AWS bolletta, potresti voler sapere con che frequenza Amazon SNS utilizza la tua AWS KMS key.

Nota

Sebbene la formula seguente possa darti un'idea molto precisa dei costi previsti, i costi effettivi potrebbero essere più elevati a causa della natura distribuita di AmazonSNS.

Per calcolare il numero di API richieste (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 editoriali che inviano all'SNSargomento Amazon.

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 AWS KMS API chiamate 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 AWS KMS API chiamate 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 poterle utilizzareSSE, è necessario configurare AWS KMS key le policy per consentire la crittografia degli argomenti e la crittografia e la decrittografia dei messaggi. Per esempi e ulteriori informazioni sulle AWS KMS autorizzazioni, consulta AWS KMS APIPermissions: Actions and Resources Reference nella Developer Guide.AWS Key Management Service Per informazioni dettagliate su come configurare un SNS argomento di Amazon con crittografia lato server, consulta. Imposta un SNS argomento Amazon con crittografia lato server

Nota

Puoi anche gestire le autorizzazioni per le chiavi di crittografia simmetriche utilizzando le policy. KMS IAM Per ulteriori informazioni, vedere Utilizzo IAM delle politiche con. AWS KMS

Sebbene sia possibile configurare le autorizzazioni globali per l'invio e la ricezione da AmazonSNS, è AWS KMS necessario indicare esplicitamente il nome completo ARN KMSs in aree specifiche nella Resource sezione di una politica. IAM

È inoltre necessario assicurarsi che le politiche chiave di AWS KMS key consentano le autorizzazioni necessarie. A tale scopo, indica i responsabili che producono e utilizzano messaggi crittografati in Amazon SNS come utenti nella policy KMS chiave.

In alternativa, puoi specificare le AWS KMS azioni richieste e KMS ARN in una IAM politica assegnata ai mandanti che pubblicano e sottoscrivono per ricevere messaggi crittografati in AmazonSNS. Per ulteriori informazioni, consulta Gestione dell'accesso a AWS KMS nella Guida per sviluppatori di AWS Key Management Service .

Se selezioni una chiave gestita dal cliente per il tuo SNS argomento Amazon e utilizzi degli alias per controllare l'accesso alle KMS chiavi utilizzando IAM policy o policy KMS chiave con la condition keykms:ResourceAliases, assicurati che alla chiave gestita dal cliente selezionata sia associato anche un alias. Per ulteriori informazioni sull'utilizzo degli alias per controllare l'accesso alle KMS chiavi, consulta Usare gli alias per controllare l'accesso alle chiavi nella Developer Guide. KMS AWS Key Management Service

Consenti a un utente di inviare messaggi a un argomento con SSE

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 SNS argomenti di Amazon. Per consentire a queste origini eventi di utilizzare argomenti crittografati, devi eseguire la seguente procedura.

  1. Utilizzo di una chiave gestita dal cliente. Per ulteriori informazioni, consulta Creazione di chiavi nella Guida per gli sviluppatori di AWS Key Management Service .

  2. Per consentire al AWS servizio di disporre delle kms:Decrypt autorizzazioni kms:GenerateDataKey* and, aggiungi la seguente dichiarazione alla KMS policy.

    { "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 CodeStar codestar-notifications.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 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 SNS eventi Amazon richiedono che tu fornisca un IAM ruolo (anziché il responsabile del servizio) nella AWS KMS key politica:

  3. Aggiungi i tasti aws:SourceAccount e aws:SourceArn condition alla politica delle KMS risorse per proteggere ulteriormente la KMS chiave da confusi attacchi secondari. Fare riferimento all'elenco della documentazione specifica del servizio (sopra) per i dettagli esatti in ciascun caso.

    Importante

    L'aggiunta di aws:SourceAccount e aws:SourceArn a una AWS KMS politica 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" } } }
  4. Abilita SSE il tuo argomento usando il tuoKMS.

  5. Fornisci ARN l'argomento crittografato alla fonte dell'evento.

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.

HTTPCodice di stato: 400

KMSDisabledException

La richiesta è stata rifiutata perché il valore specificato KMS non è abilitato.

HTTPCodice di stato: 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 .

HTTPCodice di stato: 400

KMSNotFoundException

La richiesta è stata rifiutata perché non è possibile trovare l'entità o la risorsa specificata.

HTTPCodice di stato: 400

KMSOptInRequired

L'ID della chiave di AWS accesso richiede un abbonamento al servizio.

HTTPCodice di stato: 403

KMSThrottlingException

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 .

HTTPCodice di stato: 400