Dgraph Graph Database - Secured

AWS Databases

A distributed, native GraphQL graph database with its own DQL query language.

Base
Hardened build
minimal ports, security patches applied at build time
Access
Unique credentials
generated on first boot, readable only by root
Verified
Boots working
services pass a health gate before release
Support
24/7, 365 days
by email and live chat, 24 hour response SLA

Overview

Dgraph is a distributed, open source graph database built for high performance and horizontal scale, written in Go. It stores data as a graph of nodes and typed relationships and answers deeply joined traversals, full text, geo and regular expression queries in milliseconds through its own DQL query language and a native GraphQL API, over clean HTTP and gRPC endpoints.

It suits any team building knowledge graphs, recommendations, fraud detection, identity graphs or retrieval augmented generation that wants a fast graph database they run and own inside their own cloud account rather than a hosted service.

Why the cloudimg image

The cloudimg image installs Dgraph from the official release and runs its coordinator and data node behind an nginx reverse proxy that binds every database listener to loopback and terminates TLS, so the HTTP API is reachable securely within minutes. Open source Dgraph ships with no built in access control, so this image adds two independent layers, both unique to each machine and generated on first boot rather than baked in: nginx HTTP basic authentication gates every request, and a per machine security token guards administrative operations such as altering the schema. Graph data lives on a dedicated, independently resizable data volume. The paired deployment guide covers reading your credentials, setting a schema, running your first mutation and query and enabling a real TLS certificate, and every deployment carries 24/7 support.

Common uses

  • Knowledge graphs, identity graphs and richly connected data models
  • Recommendations, fraud detection and relationship queries at scale
  • A self hosted graph database you run inside your own cloud account

Key features

  • Unlike a bare Dgraph install that exposes full admin access to anyone who can reach the port, this AMI launches a production-secured graph database with TLS encryption, HTTP basic authentication, and a fail-closed startup - eliminating hours of manual hardening. Native GraphQL and DQL over HTTP and gRPC with ACID transactions, schema indexes, and a dedicated EBS data volume for independently resizable storage.
  • Per-instance security credentials generated on every first boot - never baked into the image and never shared across deployments. A unique HTTP basic-auth password controls all API access while a separate admin token restricts schema changes to authorized operators only. Database processes bind exclusively to loopback and are reachable only through the nginx TLS reverse proxy on port 443.
  • 24/7 technical support from cloudimg engineers via email and live chat, with a one-hour average response on critical issues. Our team assists with schema and index design, TLS configuration, credential rotation, performance tuning, and EBS volume management - providing the hands-on expertise that a bare open-source install or self-managed deployment cannot offer.

Description

This is a repackaged open source software product wherein additional charges apply for cloudimg support services.

## The Problem: Open Source Dgraph Ships Unsecured

A bare Dgraph deployment exposes full read, write, and admin access - including drop-all - to anyone who can reach the port. There is no built-in access control and no authentication out of the box. Hardening it yourself means installing packages, configuring a reverse proxy, generating credentials, and troubleshooting dependencies. This AMI eliminates that entire process.

## How This AMI Solves It

Every instance generates two independent secrets on first boot - unique per machine and never baked into the image - and fronts the database with a TLS reverse proxy. You move from EC2 launch to a secured, authenticated graph database in minutes with zero manual configuration. Unlike a bare install, the alpha start wrapper is fail-closed: it refuses to start without a token, so the server can never run open.

## Graph Database Stack

  • Dgraph v25.3.8 running as two coordinated systemd services from a single Go binary: a cluster coordinator (zero) and a data node (alpha)
  • Native GraphQL and DQL query languages over clean HTTP and gRPC endpoints, with schema indexes, ACID transactions, and data import/export
  • nginx TLS reverse proxy on port 443 terminating HTTPS and enforcing HTTP basic authentication in front of the alpha HTTP API
  • Dedicated EBS data volume for all graph state (raft WAL, postings), independently resizable from the root volume

## Secure First Boot

On first launch a one-shot systemd service generates a per-instance nginx basic-auth username and password and a per-instance Dgraph admin security token, writing the plain-text values to a file readable only by the root OS user. Every request to the HTTP API is refused without the basic-auth credentials. Every administrative operation such as altering the schema additionally requires the security token, and admin access is restricted to the local host. The database processes bind only to the loopback interface and are reached solely through the nginx reverse proxy.

## Security and Encryption Guidance

  • Encryption in transit: nginx terminates TLS on port 443 with a per-instance self-signed certificate. Replace it with your own CA-signed certificate for production, or front the instance with a load balancer that terminates TLS.
  • Encryption at rest: Enable EBS encryption on the dedicated data volume at launch to protect graph data with AWS-managed or customer-managed KMS keys.
  • Network isolation: Deploy in a private VPC subnet and restrict Security Group ingress on port 443 to only the source IPs your workload requires. Ports 8080 and 9080 stay bound to loopback and are never network-exposed.

## Getting Started

Retrieve the generated credentials with sudo cat /root/dgraph-info.txt, then call the HTTPS API with the basic-auth user and password. Set a schema with the admin token, run RDF or GraphQL mutations, and query the graph immediately.

## Use Cases

  • Knowledge graphs and recommendations: Query deeply joined relationships in milliseconds through the authenticated HTTPS endpoint while the admin token gates schema changes to your data pipeline only
  • Identity and fraud-detection graphs
  • Retrieval augmented generation (RAG) knowledge stores
  • Social and network relationship graphs
  • GraphQL application back ends

## Why cloudimg Support

24/7 technical support by email and live chat. Our engineers assist with Dgraph deployment, schema and index design, TLS and reverse-proxy configuration, credential rotation, and performance tuning. Critical issues receive a one-hour average response time.

All product and company names are trademarks or registered trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.

Related technologies

graph databasegraphql databasedqlknowledge graphdistributed databaserag knowledge storefraud detection graphtls secured databasenginx reverse proxyebs data volume