HomeInsightsCase StudyYou are here
Real-Time Security Surveillance with Amazon Guard Duty and OpenSearch
Case Study

Real-Time Security Surveillance with Amazon Guard Duty and OpenSearch

Apr 2026Abilytics Team8 min read

Scenario

A financial services company wanted to enhance their security surveillance to detect and respond to potential security threats in real-time. They decided to leverage Amazon GuardDuty and OpenSearch to analyze and visualize their security findings.

Solution

The company used the following services to set up their real-time security surveillance system:

Amazon GuardDuty: A threat detection service that continuously monitors AWS accounts for malicious activity and unauthorized behavior. The company enabled GuardDuty in their AWS account to detect any suspicious activity.
Amazon S3: The company created an S3 bucket to store GuardDuty findings. They configured GuardDuty to export findings to the S3 bucket every 15 minutes.
AWS Lambda: The company created a Lambda function to extract GuardDuty findings from the S3 bucket and send them to OpenSearch. The Lambda function was triggered by S3 events and used CloudWatch Logs to monitor its execution results.
Amazon OpenSearch: The company created an OpenSearch cluster to analyze and search their security findings. They configured OpenSearch to index and store the GuardDuty findings sent by the Lambda function.
Amazon QuickSight: The company used QuickSight to visualize their security findings. They connected QuickSight to their OpenSearch cluster and created dashboards to monitor their security findings in real-time.

Flow

Solution Flow Diagram

Summary

1

Step 1: Create an OpenSearch Cluster in AWS

The company created an OpenSearch domain in AWS with version 2.3 and an instance of t3.small. They used the default settings for the domain and configured it to be publicly accessible.

2

Step 2: Collect GuardDuty findings and export them to Amazon S3

The company enabled GuardDuty in their AWS account and configured it to export findings to an S3 bucket every 15 minutes. They created an S3 bucket with the correct bucket policies to store the GuardDuty findings.

3

Step 3: Send the logs from S3 to Amazon OpenSearch using Lambda

The company created a Lambda function using Python to extract GuardDuty findings from the S3 bucket and send them to OpenSearch. They gave the Lambda function an IAM execution role to access the S3 bucket data, OpenSearch, KMS Key, and CloudWatch Logs. The Lambda function was triggered by S3 input events and used CloudWatch Logs to monitor its execution results.

4

Step 4: Analyze, search, or aggregate findings in Amazon OpenSearch

The company created an index and index pattern for GuardDuty findings in OpenSearch. They configured the time filter and selected the event Last Seen as the Time Filter field. They added the index pattern and used keywords to query specific data.

5

Step 5: Visualize data using Amazon QuickSight integrated with OpenSearch

The company connected QuickSight to their OpenSearch cluster and created dashboards to monitor their security findings in real-time. They used QuickSight's visualization capabilities to analyze their security findings and take appropriate actions in response to any security threats.

Conclusion

The company was able to set up a real-time security surveillance system using Amazon GuardDuty and OpenSearch. They were able to detect and respond to potential security threats in real-time, which enhanced their security posture and reduced the risk of security breaches. The use of QuickSight to visualize their security findings allowed them to monitor their security posture in real-time and take appropriate actions in response to any security threats.

Abilytics Team

Abilytics Team

Abilytics

In this article5 sections

Related Articles

Stop Asking Your LLM to Write JSON: Typed Decisions with OpenJev on Unity Gateway
Blog

Stop Asking Your LLM to Write JSON: Typed Decisions with OpenJev on Unity Gateway

Most AI "decisions" in production are small. OpenJev on Databricks Unity Gateway scores choices in a single forward pass—slashing latency, eliminating JSON parsing risks, and keeping business actions in deterministic code.

8 min readOct 6, 2026
Read Article
Data Contracts on Databricks: Preventing Breaking Changes in Production Pipelines
Blog

Data Contracts on Databricks: Preventing Breaking Changes in Production Pipelines

Make schemas, quality rules, ownership and compatibility an explicit agreement between the teams that publish data and the teams that depend on it.

6 min readSep 2026
Read Article
The Hidden Cost of Data Pipeline Orchestration: Airflow vs Databricks Lakeflow Jobs
Blog

The Hidden Cost of Data Pipeline Orchestration: Airflow vs Databricks Lakeflow Jobs

A practical architecture guide to orchestration, operational overhead, governance, scalability and cost. Compare total operating cost and responsibility boundaries.

8-10 min readSep 2026
Read Article