Substrate is an opinionated suite of tools that manage secure and reliable cloud infrastructure in AWS. These tools create strict security boundaries and limit the blast radius of changes through control of AWS resources themselves as well as the networks through which applications communicate. They're built for users with stringent security and reliability requirements and can operate within rigid compliance regimes.

Here's what customers get from Substrate: At the most basic levels, they know they’re using AWS properly. They maximize the security benefits they reap from AWS. They maximize the potential reliability of their software. They avoid having to read every release note and bit of documentation AWS writes. They have tools they're very unlikely to outgrow and yet are easy to stop using if they do. And they avoid taking on difficult-to-pay-down ("high interest") technical debt in their AWS implementation.

The public cloud is not without its drawbacks: Security mistakes there are quickly noticed and exploited. And yet the cost and elasticity of the public cloud is too compelling to ignore because availability expectations continue to grow. The public cloud, especially AWS, is the obvious place to host the next generation of software. Substrate sets customers up to deliver that software securely and reliably.

Glossary

These terms are used precisely in this document so it’s best to define them early.

Substrate-managed infrastructure is categorized as follows:

Domain, Environment, and Quality are fundamental. Almost every resource has exactly one value for each of these parameters; a few exceptional resources have none. Most AWS accounts in an Organization will be annotated with values for all three and all resources within that AWS account will match.

More terminology will be added as it becomes necessary.

Principles