Skip to content

Commit f9bcf3c

Browse files
authored
Revert "Merge-150-Codebase (#827)" (#831)
This reverts commit a603963.
1 parent a603963 commit f9bcf3c

File tree

1,108 files changed

+31220
-95172
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,108 files changed

+31220
-95172
lines changed

.eslintrc.js

Lines changed: 255 additions & 188 deletions
Large diffs are not rendered by default.

.github/workflows/build.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
- name: Use Node.js
1818
uses: actions/setup-node@v1
1919
with:
20-
node-version: 14
20+
node-version: 12
2121
- name: Cache Node.js modules
2222
uses: actions/cache@v1
2323
with:
@@ -28,7 +28,7 @@ jobs:
2828
${{ runner.OS }}-
2929
- name: Install Node.js modules
3030
run: |
31-
npm install -g pnpm@6.2.3
31+
npm install -g pnpm@5.18.9
3232
pnpm install --unsafe-perm --frozen-lockfile
3333
- name: Fix nasty bug in CDK
3434
run: |
@@ -37,7 +37,7 @@ jobs:
3737
find node_modules -name runtime-info.js -exec sed -i 's/mod.paths/(mod.paths || [])/g' {} \;
3838
- name: Build all workspaces
3939
run: |
40-
pnpm recursive run build
40+
pnpm recursive run build -- --noEmit
4141
- name: Run tests in all workspaces
4242
run: |
4343
pnpm recursive run test -- --pass-with-no-tests --silent

.github/workflows/lint-prettier.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
- name: Use Node.js
1818
uses: actions/setup-node@v1
1919
with:
20-
node-version: 14
20+
node-version: 12
2121
- name: Cache Node.js modules
2222
uses: actions/cache@v1
2323
with:
@@ -28,7 +28,7 @@ jobs:
2828
${{ runner.OS }}-
2929
- name: Install Node.js modules
3030
run: |
31-
npm install -g pnpm@6.2.3
31+
npm install -g pnpm@5.18.9
3232
pnpm install --frozen-lockfile
3333
- name: Analyze TypeScript files
3434
run: |
@@ -42,10 +42,10 @@ jobs:
4242
- name: Use Node.js
4343
uses: actions/setup-node@v1
4444
with:
45-
node-version: 14
45+
node-version: 12
4646
- name: Install Prettier
4747
run: |
48-
npm install -g prettier@2.2.1
48+
npm install -g prettier@2.2.0
4949
- name: Analyze TypeScript files
5050
run: |
5151
prettier --check **/*.ts

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ jobs:
2828
env:
2929
RUNNER_TEMP: /tmp/runner
3030
with:
31-
node-version: 14
31+
node-version: 12
3232
- name: Install pnpm
3333
run: |
34-
npm install -g pnpm@6.2.3
34+
npm install -g pnpm@5.18.9
3535
- name: Generate Changelog
3636
id: changelog
3737
env:

.gitignore

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
cdk.out
2-
node_modules
3-
.DS_Store
4-
*.log
5-
config.json
6-
aws-landing-zone-configuration.zip
7-
**/dist
8-
.idea
1+
cdk.out
2+
node_modules
3+
.DS_Store
4+
*.log
5+
config.json
6+
aws-landing-zone-configuration.zip
7+
**/dist
8+
.idea

CHANGELOG.md

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1 @@
1-
# Change Log
2-
3-
All notable changes to this project will be documented in this file.
4-
5-
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6-
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7-
8-
## [1.5.0] - 2021-10-01
9-
10-
### Added
11-
12-
- All files, initial AWS Solutions Version
13-
- This project is tracking change history using GitHub Releases located [here](https://github.com/aws-samples/aws-secure-environment-accelerator/releases).
1+
This project is tracking change history using GitHub Releases located [here](https://github.com/aws-samples/aws-secure-environment-accelerator/releases).

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ reported the issue. Please try to include as much information as you can. Detail
2929

3030
Contributions via pull requests are much appreciated. Before sending us a pull request, please ensure that:
3131

32-
1. You are working against the latest source on the _main_ branch.
32+
1. You are working against the latest source on the _master_ branch.
3333
2. You check existing open, and recently merged, pull requests to make sure someone else hasn't addressed the problem already.
3434
3. You open an issue to discuss any significant work - we would hate for your time to be wasted.
3535
4. You have reviewed and are aligned with the `Accelerator Development First Principles`

README.md

Lines changed: 25 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
The AWS Accelerator is a tool designed to help deploy and operate secure multi-account, multi-region AWS environments on an ongoing basis. The power of the solution is the configuration file that drives the architecture deployed by the tool. This enables extensive flexibility and for the completely automated deployment of a customized architecture within AWS without changing a single line of code.
44

5-
While flexible, the AWS Accelerator is delivered with a sample configuration file which deploys an opinionated and prescriptive architecture designed to help meet the security and operational requirements of many governments around the world. Tuning the parameters within the configuration file allows for the deployment of customized architectures and enables the solution to help meet the multitude of requirements of a broad range of governments and public sector organizations.
5+
While flexible, the AWS Accelerator is delivered with a sample configuration file which deploys an opinionated and prescriptive architecture designed to help meet the security and operational requirements of many governments around the world (initial focus was the Government of Canada). Tuning the parameters within the configuration file allows for the deployment of customized architectures and enables the solution to help meet the multitude of requirements of a broad range of governments and public sector organizations.
66

7-
The installation of the provided prescriptive architecture is reasonably simple, deploying a customized architecture does require extensive understanding of the AWS platform. The sample deployment specifically helps customers meet NIST 800-53 and/or CCCS Medium Cloud Control Profile (formerly PBMM).
7+
The installation of the provided prescriptive architecture is reasonably simple, deploying a customized architecture does require extensive understanding of the AWS platform.
88

99
![Diagram](./docs/operations/img/ASEA-high-level-architecture.png)
1010

@@ -22,14 +22,13 @@ Specifically the accelerator deploys and manages the following functionality, bo
2222
- Shared Network
2323
- Operations
2424
- Perimeter
25-
- Log Archive
26-
- Security Tooling
25+
- Log-Archive
26+
- Security-Audit
2727
- Workload Accounts - automated concurrent mass account creation or use AWS organizations to scale one account at a time. These accounts are used to host a customer's workloads and applications.
2828
- Scalable to 1000's of AWS accounts
2929
- Supports AWS Organizations nested [ou's](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_ous.html) and importing existing AWS accounts
3030
- Performs 'account warming' to establish initial limits, when required
3131
- Automatically submits limit increases, when required (complies with initial limits until increased)
32-
- Leverages AWS Control Tower **(NEW)**
3332

3433
### Creates Networking
3534

@@ -40,9 +39,7 @@ Specifically the accelerator deploys and manages the following functionality, bo
4039
- Route 53 Private and Public Zones, Resolver Rules and Endpoints, VPC Endpoint Overloaded Zones
4140
- All completely and individually customizable (per account, VPC, subnet, or OU)
4241
- Layout and customize your VPCs, subnets, CIDRs and connectivity the way you want
43-
- Static or Dynamic **(NEW)** VPC and subnet CIDR assignments
4442
- Deletes default VPC's (worldwide)
45-
- AWS Network Firewall **(NEW)**
4643

4744
### Cross-Account Object Sharing
4845

@@ -81,14 +78,13 @@ Specifically the accelerator deploys and manages the following functionality, bo
8178
### Other Security Capabilities
8279

8380
- Creates, deploys and applies Service Control Policies
84-
- Creates Customer Managed KMS Keys (SSM, EBS, S3), EC2 key pairs, and secrets
81+
- Creates Customer Managed KMS Keys (SSM, EBS, S3)
8582
- Enables account level default EBS encryption and S3 Block Public Access
8683
- Configures Systems Manager Session Manager w/KMS encryption and centralized logging
8784
- Creates and configures AWS budgets (customizable per ou and per account)
8885
- Imports or requests certificates into AWS Certificate Manager
8986
- Deploys both perimeter and account level ALB's w/Lambda health checks, certificates and TLS policies
90-
- Deploys & configures 3rd party firewall clusters and management instances (leverages marketplace)
91-
- Gateway Load Balancer w/auto-scaling **(NEW)** and VPN IPSec BGP ECMP deployment options
87+
- Deploys & configures 3rd party firewall clusters and management instances w/vendor best practices and sample security policies, w/automated TGW ECMP BGP tunnel standup (leverages marketplace)
9288
- Protects Accelerator deployed and managed objects
9389
- Sets Up SNS Alerting topics (High, Medium, Low, Blackhole priorities)
9490
- Deploys CloudWatch Log Metrics and Alarms
@@ -110,44 +106,44 @@ Specifically the accelerator deploys and manages the following functionality, bo
110106
- ALB Logs
111107
- SSM Session Logs (also sent to CWL)
112108
- Resolver Query Logs (also sent to CWL)
113-
- Email alerting for CloudTrail Metric Alarms, Firewall Manager Events **(NEW)**, Security Hub Findings incl. Guardduty Findings **(NEW)**
114109

115110
## Relationship with AWS Landing Zone Solution (ALZ)
116111

117-
The ALZ was an AWS Solution designed to deploy a multi-account AWS architecture for customers based on best practices and lessons learned from some of AWS' largest customers. The AWS Accelerator draws on design patterns from the Landing Zone, and re-uses several concepts and nomenclature, but it is not directly derived from it, nor does it leverage any code from the ALZ. The Accelerator is a standalone solution with no dependence on ALZ.
112+
The ALZ is an AWS Solution designed to deploy a multi-account AWS architecture for customers based on best practices and lessons learned from some of AWS' largest customers. The AWS Accelerator draws on design patterns from the Landing Zone, and re-uses several concepts and nomenclature, but it is not directly derived from it, nor does it leverage any code from the ALZ. The initial versions of the AWS Accelerator presupposed the existence of an AWS Landing Zone Solution in the AWS Organization; this requirement has since been removed as of release `v1.1.0`.
113+
114+
The Accelerator is now a completely standalone solution.
118115

119116
## Relationship with AWS Control Tower
120117

121-
The AWS Secure Environment Accelerator now leverages AWS Control Tower! **(NEW)**
118+
AWS Control Tower is the successor to the ALZ, but offered as an AWS managed service.
122119

123-
With the release of v1.5.0, the AWS Accelerator adds the capability to be deployed on top of AWS Control Tower. Customers get the benefits of the fully managed capabilities of AWS Control Tower combined with the power and flexibility of the Accelerators Networking and Security orchestration.
120+
When appropriate, it is envisioned that the AWS Accelerator will add the capability to be deployed on top of AWS Control Tower, as we initially allowed with the ALZ.
124121

125-
## Accelerator Installation Process (Summary)
122+
## Accelerator Deployment Process (Summary)
126123

127124
This summarizes the installation process, the full installation document can be found in the documentation section below.
128125

129-
- Create a config.json (or config.yaml) file to represent your organizations requirements ([several samples provided](./docs/installation/customization-index.md))
130-
- Create a Secrets Manager Secret which contains a GitHub token that provides access to the Accelerator code repository
131-
- Create a unique S3 input bucket in the management account of the region you wish to deploy the solution and place your config.json and any additional custom config files in the bucket
132-
- Download and execute the latest [release](https://github.com/aws-samples/aws-secure-environment-accelerator/releases) installer CloudFormation template in your management accounts preferred 'primary' / 'home' region
126+
- Create a config.json (or config.yaml) file to represent your organizations requirements (several samples provided)
127+
- Create a Secrets Manager Secret which contains a GitHub token that provides access to the Accelerator code repo
128+
- Create a unique S3 input bucket and place your config.json and any additional custom config files in the bucket
129+
- Download and execute the latest installer CloudFormation template in your root accounts preferred 'primary' / 'home' region
133130
- Wait for:
134131
- CloudFormation to deploy and start the Code Pipeline (~5 mins)
135-
- Code Pipeline to download the Accelerator codebase and install the Accelerator State Machine (~10 mins)
136-
- The Accelerator State Machine to finish execution (~1.25 hrs Standalone version, ~2.25 hrs Control Tower Version)
137-
- Perform required one-time [post installation](./docs/installation/installation.md#26-post-installation) activities (configure AWS SSO, set firewall passwords, etc.)
138-
- On an ongoing basis:
132+
- Code Pipeline to download the Accelerator codebase and install the Accelerator State Machine (~20 mins)
133+
- The Accelerator State Machine to finish execution (~1.5 hrs)
134+
- Perform required manual follow-up activities (configure AWS SSO, set firewall passwords, etc.)
135+
- When required:
139136
- Use AWS Organizations to create new AWS accounts, which will automatically be guardrailed by the Accelerator
140-
- Update the config file in CodeCommit and run the Accelerator State Machine to:
141-
- deploy, configure and guardrail multiple accounts at the same time (~25 min Standalone, ~50 min/account Control Tower)
142-
- change Accelerator configuration settings (~25 min)
137+
- Update the config file in CodeCommit and run the Accelerator State Machine (~25 min) to:
138+
- deploy, configure and guardrail multiple accounts at the same time
139+
- change Accelerator configuration settings
143140

144141
# **Documentation**
145142

146143
### - Accelerator Installation and Upgrade [Guide](./docs/installation/installation.md)
147144

148145
- Link to Accelerator [releases](https://github.com/aws-samples/aws-secure-environment-accelerator/releases) and change history
149146
- Sample configuration files and customization [details](./docs/installation/customization-index.md)
150-
- State Machine behavior and [inputs](./docs/installation/sm_inputs.md)
151147
- [Chart](./docs/installation/what-we-do-where.md) containing details as to WHAT we do and WHERE we support it (regions, accounts, etc.)
152148
- Accelerator central logging [bucket structures](./docs/architectures/pbmm/log-file-locations.md)
153149
- Unofficial Accelerator [Roadmap](https://github.com/aws-samples/aws-secure-environment-accelerator/projects) (GitHub projects) - _Please upvote desired features_
@@ -164,15 +160,11 @@ This summarizes the installation process, the full installation document can be
164160

165161
### - Prescriptive PBMM Architecture Design [Document](./docs/architectures/pbmm/architecture.md) (Early Draft)
166162

167-
- Accelerator Prescriptive Architecture Sample [diagrams](./docs/architectures/pbmm/AWS_PBMM_Accel_Account_Network_VPC.md)
163+
- AWS PBMM architecture sample [diagrams](./docs/architectures/pbmm/AWS_PBMM_Accel_Account_Network_VPC.md)
168164

169165
---
170166

171-
Note: Two ZIP files are attached as assets of each [release](https://github.com/aws-samples/aws-secure-environment-accelerator/releases):
172-
173-
- one contains a PDF version of the above documentation
174-
- the second contains a _DRAFT_ of the config file documentation, auto generated from a combination of the typescript schema and the field definitions added for the future GUI
175-
- Extract and open src\lib\docs-gen\output-docs\en\index.html in your browser
167+
Note: A ZIP file containing a PDF version of most documentation can be found [here](https://github.com/aws-samples/aws-secure-environment-accelerator/actions?query=workflow%3A%22Generate+Documentation%22).
176168

177169
---
178170

buildspec.yml

Lines changed: 0 additions & 56 deletions
This file was deleted.

0 commit comments

Comments
 (0)