Security at Infra Agent

Monitoring configuration is sensitive; it describes your infrastructure. Here is how it is protected.

Tenant isolation, enforced by the database

Core monitoring data (monitors, check results, incidents, alert channels, and maintenance windows) is scoped to your organization with Postgres Row-Level Security, enforced on the role the application runs as, not just in application code. Remaining organization-scoped tables are filtered by organization in the data-access layer.

Least-privilege access

The application connects to the database with a restricted role. Schema migrations run through a separate privileged role; the application itself only ever connects with the restricted one.

Status pages never leak configuration

Public status pages are built from an explicit allowlist of fields: display name, current status, and uptime. Monitor URLs, request headers, and heartbeat tokens are never sent to the public page.

HTTPS everywhere

All traffic is redirected to HTTPS at the edge. Sign-in uses session-based authentication with email/password or Google.

Opt-in alerting

SMS alerts go only to phone numbers added under Alert Channels, and adding a number confirms its owner has consented to receive monitoring alerts. Numbers and opt-in data are never shared or sold, and replying STOP stops the messages.

Minimal third parties

Alert delivery uses an email provider, an SMS carrier, and Discord webhooks you configure. Each receives only what it needs to deliver the message. There are no advertising or analytics trackers on your data.

Reporting a vulnerability

If you believe you have found a security issue, email contact@infraagent.app with the details. We read every report and will respond as quickly as we can. Please give us a reasonable window to fix the issue before disclosing it publicly.