Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

423
Views
Publishing AWS SQS message from Public Internet

My Agents running on various environments/devices are going to drop periodic messages from public network. These messages will be processed by my AWS Lambda. The systems are asynchronous.

I am thinking of using SQS to feed the Lambda. Just that, SQS endpoint will be open to internet. How can I validate the messages posted on AWS SQS.

Most of the devices/agents pushing messages will be on customer VPN. So, establishing a private-vpn-link is a possible solution.

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

You shoudn't make an SQS queue public so that anyone without AWS credentials could use it. Its not a good practice.

A better option is to uses API gateway in front of your SQS queue:

  • Creating an AWS Service Proxy for Amazon SQS

This way you can make your API gateway endpoint public, control its throughput, limits, throttling, access using API keys, and more.

The API gateway would be integrated with your SQS queue which would allow you to trigger your lambda function.

With the use of API keys or lambda authorizes you will be able to control access of your devices/agents to the API gateway, and subsequently, to the SQS.

over 4 years ago · Santiago Trujillo Report

0

The Amazon SQS endpoint is on the Internet not in a VPC. There is no benefit to using a VPN connection, unless you wish to create a policy that only allows messages to be sent to the queue if they come via the VPN connection.

Your use-case might be better-suited for AWS IoT rather than Amazon SQS:

AWS IoT

It is designed to handle large quantities of data some from various devices, with in-built rules for handling the messages.

over 4 years ago · Santiago Trujillo Report

0

If you're looking to minimise your messages traversing the public internet space the you have a few options that are available to you.

Firstly, as you mention you have devices that can connect via a VPN, if this is possible you can create a VPC endpoint for SQS using a custom domain name.

In your application by referring to the custom domain name or a private IP address from one of the ENIs it might be possible to actually interact through the VPC privately.

You could enhance your security checking by adding a proxy layer in front to validate the input to perform any checks against the content. Your application would pass to this validation layer, and then add to the queue if it passes.

One thing worth pointing out is even with VPN the traffic is traversing the internet, however it is encrypted in transit. The best line of security is combining HTTPS alongside private credentials (preferably as an IAM role) to reduce the chance of someone being able to add improper data to your queue.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!