Skip to content
Docs
foxborne.comRequest a pilot

Deploy in AWS GovCloud

Prepare an AWS GovCloud account with no internet egress, a customer-managed key, write-once storage for originals and PostgreSQL 16. Then install the signed release and confirm each panel on Hosting.

How-toAWS GovCloudAdminMarkdown
On this page6

Foxborne deploys into your own AWS GovCloud account. Originals stay in your buckets under your key, and the deployment sends nothing outside your network. This page shows the example deployment from the console's Hosting page, what to prepare for the same layout and how to confirm it.

The same layout applies in a commercial AWS region, since Foxborne deploys into your AWS, AWS GovCloud or Azure Government account. In a commercial region, ARNs start with arn:aws: rather than arn:aws-us-gov:.

The example deployment#

The console's example dataset describes one deployment in AWS GovCloud (US-West), region us-gov-west-1. Its Hosting page draws each part inside a dashed line labeled with the account and region.

PartExample valueWhat it does
Foxborne application2 nodes, m7i.xlargeServes the console on your network only
Workers2 nodes, c7i.2xlargeParse, align and run rules
Inference node1 node, g4dn.2xlarge, one GPURuns the AI models. Optional
PostgreSQL 16Multi-AZ, in the VPCHolds events, notes, reports and the audit log
Original filess3://hfr-foxborne-originalsSSE-KMS with the customer key. Object Lock, compliance mode, 7 years.
Reports and case filess3://hfr-foxborne-exportsSSE-KMS with the customer key. Kept 10 years.
Basemaps and elevations3://hfr-foxborne-basemapsSSE-KMS with the customer key. Kept until replaced.
Customer-managed keyalias/foxborne-evidenceAWS KMS, rotated yearly and automatically
BackupsAWS Backup vault hfr-foxborneCustomer key. Daily, kept 35 days.
NetworkNo outbound internetEgress is denied at the VPC
Identity and auditYour IdP and SIEMSAML assertions in. Audit events out over syslog with TLS.

Example values

These values come from the example dataset. The instance types, bucket names, retention periods and backup schedule describe one deployment, not sizing guidance or requirements.

Before you start#

  • You need the Admin role in Foxborne to open Hosting. Admins manage hosting, keys and access.
  • You need an AWS GovCloud account where you can create a VPC, KMS keys, S3 buckets, a PostgreSQL database and a backup vault.
  • Your identity provider signs users in over SAML 2.0, and your SIEM accepts syslog over TLS inside your network.
  • You have the signed release bundle, a .fxb file, for the version you install.

Prepare the account#

  1. Build a VPC with no path out

    Create the VPC without an internet gateway or a NAT gateway, so no route leads to the internet. Reach Amazon S3 through a gateway VPC endpoint, which keeps that traffic inside AWS. Workers that assume an IAM role to read a source bucket also need AWS STS, through an interface VPC endpoint.

    Keep the console private as well. Engineers reach it from your corporate network or VPN, over a private connection such as AWS Site-to-Site VPN or AWS Direct Connect. In the example, the status bar tooltip reads No outbound internet. Egress is denied at the VPC.

  2. Create the customer-managed key

    In AWS KMS, create a symmetric customer-managed key in the deployment's region and turn on automatic rotation. The example key is alias/foxborne-evidence and rotates yearly. Rotation keeps the key ID and every earlier version of the key material, so objects encrypted before a rotation stay readable.

    The key controls the evidence

    Disabling this key makes every stored original unreadable, to Foxborne as much as to anyone. Reports, case files and backups encrypted with it become unreadable too.

  3. Create the three buckets

    Create the originals bucket with S3 Object Lock turned on, which also turns on versioning. Set its default retention to compliance mode. No user, including the root user, can then overwrite or delete a locked version before its retention ends.

    Create the exports and basemaps buckets, then set default encryption on all three to SSE-KMS with the customer key. In the example, originals are locked for 7 years. Reports and case files are kept for 10.

  4. Create the database

    Run PostgreSQL 16 inside the VPC, with its storage encrypted with the customer key. The example runs it Multi-AZ. On Amazon RDS, encryption is fixed when the instance is created, so choose the customer key then.

  5. Set up backups

    Keep backups in a vault encrypted with the customer key. The example uses an AWS Backup vault named hfr-foxborne, with a plan that backs up daily and keeps each backup 35 days. Set the schedule and retention your program requires.

  6. Connect identity and audit

    Foxborne signs users in through your identity provider over SAML 2.0 and provisions them over SCIM. Evidence marked export-controlled opens only for users whose identity provider asserts US person status, in the usPerson SAML attribute. The audit log streams to your SIEM over syslog with TLS, inside your network.

    Single sign-on and SCIM provisioning cover the settings on the Foxborne side.

  7. Install the signed release

    Each Foxborne release is one signed bundle, a .fxb file, with a software bill of materials. Foxborne checks the bundle's signature against the Foxborne release key before anything installs, and a bundle that does not match installs nothing.

Check the result#

Sign in through your identity provider and open Hosting. Compare each panel with the example below, with your own values in place of the example's.

PanelFieldExample value
SummaryModeSelf-hosted
SummaryEnvironmentAWS GovCloud (US-West)
SummaryVersion1.4.2, with Signature verified
SummaryNetworkNo outbound internet
SummaryLicense8 of 40 seats, renews 30 Jun 2027
Data boundaryDashed lineYour AWS GovCloud (US-West) account, its ID and us-gov-west-1
Data boundaryInside the lineFoxborne application, workers, PostgreSQL 16, original files, customer-managed key, your IdP and SIEM
Data boundaryOutside the lineFoxborne, Inc. receives nothing
Where each kind of data livesSix rowsOne row per store, from original files to backups, each with location, encryption and retention
Encryption keyKeyalias/foxborne-evidence
Encryption keyARNThe key's ARN, starting arn:aws-us-gov:kms:us-gov-west-1:
Encryption keyCustodyAWS KMS, FIPS 140-3 validated HSMs
Encryption keyRotationYearly, automatic, last on 30 Jun 2026
UpdatesInstalled1.4.2, 12 Sep 2026
UpdatesSigned byFoxborne release key 7C1E 4B90 3A2F 9A42
UpdatesBill of materialsSPDX 2.3, 412 components, stored with the release
NodesFour rowsApplication 2 m7i.xlarge, workers 2 c7i.2xlarge, database 1 PostgreSQL 16 Multi-AZ, inference 1 g4dn.2xlarge, each Healthy
NodesFooterLast backup 7 h ago. Restore tested on 12 Sep 2026.
Outbound connectionsFive rowsFoxborne, Inc. None, map and tile services None, AI model providers None, identity provider Inbound, your SIEM Internal

The Custody line names the service that holds the key. Its FIPS 140-3 validation belongs to the AWS KMS hardware security modules, not to Foxborne.

The status bar repeats the environment, No outbound internet and the version on every screen. The Encryption key panel also carries the note Disabling this key makes every stored original unreadable, to Foxborne as much as to anyone.

Troubleshoot#

Compliance mode cannot be undone. Once a version is locked in compliance mode, nobody can shorten its retention or delete it before the period ends. Settle the retention period before the first original arrives.

The key is disabled or scheduled for deletion. Stored originals and exports stay unreadable until the key is back in service. A disabled key can be enabled again. AWS KMS waits 7 to 30 days before deleting a key, and you can cancel the deletion inside that window.

The console is not reachable from outside your network. That is the intended layout: the application serves the console on your network only. Connect over the VPN or from a network listed under Access, Sign-in, Sessions.

Collectors cannot connect. Each vehicle opens an outbound HTTPS connection to the deployment's address while it is on the ground. Give that address a route from the network the vehicles use, as in Install and enroll the collector.

Next#