Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Pubblicazione di un messaggio Amazon SNS da Amazon VPC

Modalità Focus
Pubblicazione di un messaggio Amazon SNS da Amazon VPC - 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à.

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

In questa sezione viene descritto come pubblicare in un argomento Amazon SNS mantenendo i messaggi protetti in una rete privata. Pubblichi un messaggio da un' EC2 istanza Amazon ospitata in Amazon Virtual Private Cloud (Amazon VPC). Il messaggio rimane all'interno della AWS rete senza spostarsi sulla rete Internet pubblica. Per pubblicare messaggi privatamente da un VPC, è possibile migliorare la sicurezza del traffico tra le applicazioni e Amazon SNS. Questa sicurezza è importante quando si pubblicano informazioni personali identificabili (PII) sui tuoi clienti oppure quando l'applicazione è soggetta a normative di mercato. Ad esempio, la pubblicazione in privato è utile se si tratta di un sistema sanitario che deve rispettare l'Health Insurance Portability and Accountability Act (HIPAA) o di un sistema finanziario che deve essere conforme al Payment Card Industry Data Security Standard (PCI DSS).

La procedura generale da seguire è riportata di seguito:

  • Usa un AWS CloudFormation modello per creare automaticamente una rete privata temporanea nel tuo Account AWS.

  • Creare un endpoint VPC che collega VPC con Amazon SNS.

  • Accedi a un' EC2 istanza Amazon e pubblica un messaggio in privato su un argomento di Amazon SNS.

  • Verificare che il messaggio sia stato consegnato correttamente.

  • Elimina le risorse che hai creato durante questo processo in modo che non rimangano nel tuo. Account AWS

Il diagramma seguente illustra la rete privata che crei nel tuo AWS account durante il completamento di questi passaggi:

L'architettura della rete privata creata con questa procedura.

Questa rete è costituita da un VPC che contiene un'istanza Amazon EC2 . L'istanza si collega a Amazon SNS; attraverso un endpoint VPC di interfaccia. Questo tipo di endpoint si connette a servizi alimentati da. AWS PrivateLink Una volta stabilita questa connessione, puoi accedere all' EC2 istanza Amazon e pubblicare messaggi sull'argomento Amazon SNS, anche se la rete è disconnessa dalla rete Internet pubblica. L'argomento suddivide i messaggi che riceve in due funzioni di sottoscrizione AWS Lambda . Queste funzioni registrano i messaggi che ricevono in Amazon CloudWatch Logs.

Per completare questi passaggi occorrono circa 20 minuti.

Prima di iniziare

Prima di iniziare è necessario un account Amazon Web Services (AWS). Quando ti registri, il tuo account viene automaticamente registrato per tutti i servizi in AWS, inclusi Amazon SNS e Amazon VPC. Se non hai già creato un account, vai a https://aws.amazon.com/, quindi scegli Crea un account gratuito.

Fase 1: creare una coppia di EC2 chiavi Amazon

Una coppia di key pair viene utilizzata per accedere a un' EC2 istanza Amazon. È costituita da una chiave pubblica utilizzata per crittografare le informazioni di accesso e una chiave privata utilizzata per decifrarle. Quando crei una coppia di chiavi, viene scaricata una copia della chiave privata. Successivamente, utilizzi la key pair per accedere a un' EC2 istanza Amazon. Per effettuare l'accesso, è necessario specificare il nome della coppia di chiavi e fornire la chiave privata.

Per creare la coppia di chiavi
  1. Accedi a AWS Management Console e apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel menu di navigazione a sinistra, individua la sezione Network & Security (Rete e sicurezza). Quindi scegli Key Pairs (Coppie di chiavi).

  3. Scegli Crea coppia di chiavi.

  4. Nella finestra Create Key Pair (Crea coppia di chiavi), per Key pair name (Nome coppia di chiavi), digita VPCE-Tutorial-KeyPair. Quindi scegli Create (Crea).

    La finestra Crea coppia di chiavi con il testo «VPCE-Tutorial-KeyPair" nel campo Nome della coppia di chiavi.
  5. Il file della chiave privata viene automaticamente scaricato dal browser. Salvalo in un posto sicuro. Amazon EC2 fornisce al file un'estensione di.pem.

  6. (Facoltativo) Se usi un client SSH su un computer Mac o Linux per connetterti alla tua istanza, usa il comando chmod per impostare le autorizzazioni del file della chiave privata in modo da essere l'unico a poterlo leggere:

    1. Apri un terminale e vai alla directory che contiene la chiave privata:

      $ cd /filepath_to_private_key/
    2. Imposta le autorizzazioni utilizzando il comando seguente:

      $ chmod 400 VPCE-Tutorial-KeyPair.pem

Fase 2: Creare le AWS risorse

Per configurare l'infrastruttura, si utilizza un AWS CloudFormation modello. Un modello è un file che funge da modello per la creazione di AWS risorse, come EC2 istanze Amazon e argomenti Amazon SNS. Il modello per questo processo è disponibile e può essere GitHub scaricato.

Fornisci il modello e fornisci AWS CloudFormation le risorse di cui hai bisogno come pila del tuo Account AWS. AWS CloudFormation Uno stack è una raccolta di risorse che puoi gestire come un'unità singola. Una volta completati questi passaggi, puoi AWS CloudFormation eliminare tutte le risorse dello stack contemporaneamente. Queste risorse non rimangono nelle tue mani Account AWS, a meno che tu non voglia che lo facciano.

Lo stack per questa procedura include le seguenti risorse:

  • Un VPC e le risorse di rete associate, tra cui una sottorete, un gruppo di sicurezza, un gateway Internet e una tabella di routing.

  • Un' EC2 istanza Amazon che viene lanciata nella sottorete del VPC.

  • Argomento Amazon SNS

  • Due funzioni AWS Lambda . Queste funzioni ricevono messaggi pubblicati sull'argomento Amazon SNS e registrano gli eventi in CloudWatch Logs.

  • CloudWatch Metriche e log di Amazon.

  • Un ruolo IAM che consente all' EC2 istanza Amazon di utilizzare Amazon SNS e un ruolo IAM che consente alle funzioni Lambda di scrivere nei log. CloudWatch

Per creare le risorse AWS
  1. Scaricate il file modello dal GitHub sito Web.

  2. Accedere alla console AWS CloudFormation.

  3. Scegli Create Stack (Crea stack).

  4. Nella pagina Select Template (Scegli modello), scegli Upload a template to Amazon S3 (Carica un modello in Amazon S3), scegli il file, quindi scegli Next (Avanti).

  5. Nella pagina Specify Details (Specifica dettagli), specifica i nomi dello stack e della chiave:

    1. Per Stack name (Nome stack), digitare VPCE-Tutorial-Stack.

    2. Per KeyName, scegli VPCE-Tutorial -. KeyPair

    3. Per SSHLocation, mantieni il valore predefinito di. 0.0.0.0/0

      La pagina Specificare i dettagli visualizza i campi con valori compilati per il nome dello stack, KeyName, e. SSHLocation
    4. Scegli Next (Successivo).

  6. Nella pagina Options (Opzioni), lascia tutti i valori predefiniti e scegli Next (Avanti).

  7. Nella pagina Review (Rivedi), verifica i dettagli dello stack.

  8. In Funzionalità, riconosci che AWS CloudFormation potrebbe creare risorse IAM con nomi personalizzati.

  9. Scegli Create (Crea) .

    La AWS CloudFormation console apre la pagina Stacks. Lo VPCE-Tutorial-Stack stato è CREATE_IN_PROGRESS. Dopo pochi minuti, quando il processo di creazione è stato completato, lo stato diventa CREATE_COMPLETE.

    Lo AWS CloudFormation stack con lo stato CREATE_COMPLETE.
    Suggerimento

    Scegli il pulsante Refresh (Aggiorna) per visualizzare l'ultimo stato dello stack.

Passaggio 3: verifica che la tua EC2 istanza Amazon non abbia accesso a Internet

L' EC2 istanza Amazon che è stata lanciata nel tuo VPC nel passaggio precedente non ha accesso a Internet. Non consente il traffico in uscita e non è in grado di pubblicare messaggi a Amazon SNS. Verifica accedendo all'istanza. Quindi, prova a connetterti a un endpoint pubblico e ad inviare un messaggio a Amazon SNS.

A questo punto della procedura il tentativo di pubblicazione ha esito negativo. In un secondo momento, dopo aver creato un endpoint VPC per Amazon SNS il tentativo di pubblicazione va a buon fine.

Per connetterti alla tua EC2 istanza Amazon
  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel menu di navigazione a sinistra, individua la sezione Instances (Istanze). Quindi scegli Instances (Istanze).

  3. Nell'elenco delle istanze, seleziona VPCE -. Tutorial-EC2Instance

  4. Copia il nome host fornito nella colonna Public DNS (). IPv4

    Dettagli sull' EC2 istanza Amazon lanciata da AWS CloudFormation.
  5. Apri un terminale. Dalla directory che contiene la coppia di chiavi, connettiti all'istanza utilizzando il seguente comando, instance-hostname dov'è il nome host che hai copiato dalla console Amazon EC2 :

    $ ssh -i VPCE-Tutorial-KeyPair.pem ec2-user@instance-hostname
Per verificare che l'istanza non dispone di una connessione a Internet
  • Nel terminale, tenta di connetterti a un endpoint pubblico, ad esempio amazon.com:

    $ ping amazon.com

    Poiché il tentativo di connessione ha esito negativo, è possibile annullare in qualsiasi momento (Ctrl+C in Windows o Comando+C su macOS).

Per verificare che l'istanza non dispone di una connessione a Amazon SNS
  1. Accedi alla console Amazon SNS.

  2. Nel menu di navigazione a sinistra, scegli Topics (Argomenti).

  3. Nella pagina Topics (Argomenti), copia l'Amazon Resource Name (ARN) per l'argomento VPCE-Tutorial-Topic.

  4. Nel terminale, tenta di pubblicare un messaggio all'argomento:

    $ aws sns publish --region aws-region --topic-arn sns-topic-arn --message "Hello"

    Poiché il tentativo di pubblicazione ha esito negativo, è possibile annullare in qualsiasi momento.

Fase 4: Creazione di un endpoint Amazon VPC per Amazon SNS

Per collegare il tuo VPC a Amazon SNS, definisci un endpoint VPC dell'interfaccia. Dopo aver aggiunto l'endpoint, puoi accedere all' EC2 istanza Amazon nel tuo VPC e da lì puoi utilizzare l'API Amazon SNS. È possibile pubblicare messaggi all'argomento che vengono pubblicati privatamente. Rimangono all'interno della AWS rete e non viaggiano sulla rete Internet pubblica.

Nota

L'istanza non ha ancora accesso ad altri AWS servizi ed endpoint su Internet.

Per creare l'endpoint
  1. Apri la console Amazon VPC all'indirizzo https://console.aws.amazon.com/vpc/.

  2. Nel menu di navigazione a sinistra, scegli Endpoints.

  3. Scegliere Create Endpoint (Crea endpoint).

  4. Nella pagina Crea endpoint, per Categoria di servizio lascia la scelta predefinita di AWS Servizi.

  5. Per Nome servizio, scegli il nome del servizio per Amazon SNS;.

    I nomi dei servizi variano in base alla regione scelta. Ad esempio, se hai scelto Stati Uniti orientali (Virginia settentrionale), il nome del servizio è com.amazonaws. us-east-1.sns.

  6. Per VPC, scegli il VPC che ha il nome VPCE-Tutorial-VPC.

    Il menu VPC nella pagina Create Endpoint (Crea endpoint).
  7. Per Subnets (Sottoreti), scegli la sottorete che ha VPCE-Tutorial-Subnet nell'ID della sottorete.

    Le sottoreti nella pagina Create Endpoints (Crea endpoint).
  8. Per Enable Private DNS Name (Abilita nome DNS privato), seleziona Enable for this endpoint (Abilita per questo endpoint).

  9. Per il gruppo di sicurezza, scegli Seleziona gruppo di sicurezza e scegli VPCE-Tutorial -. SecurityGroup

    I gruppi di sicurezza nella pagina Create Endpoints (Crea endpoint).
  10. Seleziona Crea endpoint. La console Amazon VPC conferma che è stato creato un endpoint VPC.

    Il messaggio di conferma visualizzato dopo aver creato un endpoint.
  11. Scegli Chiudi.

    La console Amazon VPC apre la pagina Endpoints. Il nuovo endpoint ha lo stato pending (in sospeso). Dopo pochi minuti, quando il processo di creazione è stato completato, lo stato diventa available (disponibile).

    L'endpoint VPC con stato disponibile.

Fase 5: Pubblicazione di un messaggio nel proprio argomento Amazon SNS

Ora che il tuo VPC include un endpoint per Amazon SNS, puoi accedere all' EC2 istanza Amazon e pubblicare messaggi sull'argomento.

Per pubblicare un messaggio
  1. Se il tuo terminale non è più connesso alla tua EC2 istanza Amazon, connettiti nuovamente:

    $ ssh -i VPCE-Tutorial-KeyPair.pem ec2-user@instance-hostname
  2. Eseguire lo stesso comando eseguito precedentemente per pubblicare un messaggio nel proprio argomento Amazon SNS. Questa volta, il tentativo di pubblicazione va a buon fine e Amazon SNS; restituisce un ID messaggio:

    $ aws sns publish --region aws-region --topic-arn sns-topic-arn --message "Hello" { "MessageId": "5b111270-d169-5be6-9042-410dfc9e86de" }

Fase 6: verifica delle consegne del messaggio

Quando l'argomento Amazon SNS riceve un messaggio, distribuisce il messaggio inviandolo alle due funzioni Lambda di sottoscrizione. Quando queste funzioni ricevono il messaggio, registrano l'evento CloudWatch nei registri. Per verificare che il recapito del messaggio sia avvenuto correttamente, verifica che le funzioni siano state richiamate e verifica che i CloudWatch registri siano stati aggiornati.

Per verificare che le funzioni Lambda; siano state richiamate
  1. Apri la console all' AWS Lambda indirizzo. https://console.aws.amazon.com/lambda/

  2. Nella pagina Functions (Funzioni), scegli VPCE-Tutorial-Lambda-1.

  3. Selezionare Monitoring (Monitoraggio).

  4. Controlla il grafico Invocation count (Conteggio invocazioni). Questo grafico mostra il numero di volte che la funzione Lambda; è stata eseguita.

    Il conteggio di invocazioni corrisponde al numero di volte in cui è stato pubblicato un messaggio all'argomento.

    Il grafico del conteggio invocazioni nella console Lambda.
Per verificare che i CloudWatch registri siano stati aggiornati
  1. Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.

  2. Nel menu di navigazione a sinistra, scegli Logs.

  3. Controlla i log scritti dalle funzioni Lambda:

    1. Scegli il gruppo di log/aws/lambda/VPCE-Tutorial-Lambda-1/.

    2. Scegli il flusso di log.

    3. Verifica che il log includa la voce From SNS: Hello.

      Il CloudWatch registro include la voce «From SNS: Hello».
    4. Scegli Log Groups (Gruppi di log) nella parte superiore della console per tornare alla pagina Log Groups (Gruppi di log). Quindi, ripeti i passaggi precedenti per the /aws/lambda/VPCE -Tutorial-Lambda-2/ log group.

Complimenti! Aggiungendo un endpoint per Amazon SNS a un VPC, è possibile pubblicare un messaggio in un argomento all'interno della rete gestita dal VPC. Il messaggio è stato pubblicato privatamente senza essere esposto sulla rete Internet pubblica.

Passaggio 7: eseguire l'eliminazione

Se non si desidera conservare le risorse create, è possibile eliminarle ora. Eliminando AWS le risorse che non utilizzi più, eviti addebiti inutili a tuo carico. Account AWS

In primo luogo, elimina l'endpoint VPC utilizzando la console Amazon VPC. Quindi, elimina le altre risorse che hai creato eliminando lo stack nella console. AWS CloudFormation Quando elimini uno stack, AWS CloudFormation rimuove le risorse dello stack dal tuo. Account AWS

Per eliminare l'endpoint VPC
  1. Apri la console Amazon VPC all'indirizzo https://console.aws.amazon.com/vpc/.

  2. Nel menu di navigazione a sinistra, scegli Endpoints.

  3. Seleziona l'endpoint creato.

  4. Scegli Actions (Operazioni), quindi Delete Endpoint (Elimina endpoint).

  5. Nella finestra Delete Endpoint (Elimina endpoint), scegli Yes, Delete (Sì, elimina).

    Lo stato dell'endpoint diventa deleting (in eliminazione). Quando l'eliminazione viene completata, l'endpoint viene rimosso dalla pagina.

Per eliminare il tuo stack AWS CloudFormation
  1. Apri la AWS CloudFormation console all'indirizzo https://console.aws.amazon.com/cloudformazione.

  2. Selezionare lo stack VPCE-Tutorial-Stack.

  3. Scegliere Actions (Operazioni), quindi Delete Stack (Elimina stack).

  4. Nella finestra Delete Stack (Elimina stack), scegli Yes, Delete (Sì, elimina).

    Lo stato dello stack diventa DELETE_IN_PROGRESS. Quando l'eliminazione viene completata, lo stack viene rimosso dalla pagina.

Per ulteriori informazioni, consulta le risorse seguenti.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.