This README will provide a baseline introduction into the Secure Cloud Architecture (SCA). Links will be provided for more in-depth explanations.
The biggest challenge in cloud computing today is the security and privacy problems caused by its multi-tenancy nature and the outsourcing of infrastructure. Enterprises are rapidly adopting cloud services for their businesses and measures need to be developed so that organizations can be assured of security in their businesses, and can choose a suitable vendor for their computing needs.
The purpose of Secure Cloud Architecture (SCA) is to provide a barrier of protection between your mission-critical apps & sensitive data and the Cloud Service Provider. Even when information resides in a Cloud Service Provider (CSP), there must be requirements to protect your information. SCA focuses on delivering a concept to migrate to the cloud with security as a priority, not an after thought.
This project originated because of the Department of Defense (DoD) requirements to protect the Defense Information System Networks (DISN) and DoD Information Networks (DoDIN), even when living in a Cloud Service Provider (CSP). Per the SCCA Functional Requirements Document, the purpose of SCCA is to provide a barrier of protection between the DISN and commercial cloud services used by the DoD.
“It specifically addresses attacks originating from mission applications that reside within the Cloud Service Environment (CSE) upon both the DISN infrastructure and neighboring tenants in a multi-tenant environment. It provides a consistent CSP independent level of security that enables the use of commercially available Cloud Service Offerings (CSO) for hosting DoD mission applications operating at all DoD Information System Impact Levels (i.e. 2, 4, 5, & 6).” https://iasecontent.disa.mil/stigs/pdf/SCCA_FRD_v2-9.pdf
Security is built-in, …
The Application Economy is not driven by humans or physical assets. It is driven by the ability to scale and secure digital services, such as your applications. To thrive in the Application Economy, organizations need to manage, secure, and optimize their applications.
Secure cloud architecture (SCA) for organizations can strengthen the security of your applications and sensitive data, thus minimizing enterprise risks.
The Secure Cloud Architecture (SCA) provides a 3-Tier architecture. This architecture has the following components:
5 subnets:
Below is an image of the architecture:
External and Internal Tiers are F5 BIG-IP devices (HA via API), while the middle tier hosts a VM to emulate a 3rd party IPS vendor (in this demo, an Ubuntu box with routing enabled). The main reason this middle tier or inspection zone is included in this demo is to show how to integrate 3rd party, non-F5 security products.
There is a root Cloud Formation Template (CFT) which in turn calls multiple child CFT's.
under construction
Parameter | Required | Description |
---|---|---|
BaselineCompliance | Yes | Choose your baseline compliance posture. 'Enterprise' consists of standard architecture. 'SCCA' consists of some extra layers of security. |
Deploy Demo Apps | No | Choose Yes to have demo apps deployed in connected VPC's |
Security VPC CIDR | Yes | CIDR Block for the VDSS VPC. Default is '10.0.0.0/16'. |
Demo App 1 VPC CIDR | No | CIDR Block for the app VPC. Only used if demo apps are deployed. |
Demo App 2 VPC CIDR | No | CIDR Block for the Fargate VPC. Only used if demo apps are deployed. |
SSH Key | Yes | EC2 SSH Key for BIG-IP and Linux images |
licenseKey1 | Yes | BIG-IP License #1 BYOL |
licenseKey2 | Yes | BIG-IP License #2 BYOL |
licenseKey3 | Yes | BIG-IP License #3 BYOL |
licenseKey4 | Yes | BIG-IP License #4 BYOL |
Project Tag | No | Project name to use for tagging. |
S3 Bucket Name | Yes | S3 bucket name for the Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Default is 'f5-sca-securitystack'. |
S3 Key Prefix | Yes | Quick Start key prefix can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slash (/). Default is 'master'. |
If you find an issue, we would love to hear about it.
Individuals or business entities who contribute to this project must have completed and submitted the F5 Contributor License Agreement.
This project uses AWS CodePipeline to build the required Lambda functions as well as generating some of the Cloudformatoin templates.
To start developing against this project please follow the below procedures:
1) Create a GitHub Personal Access Token 2) Add the GitHub PAT to your AWS Secrets Manager. Note: ensure the key uses the value GitHubPersonalAccessToken 3) Deploy the deploy-pipeline.template CloudFormation Template
F5 Networks