Menu
Standardized Architecture for PCI DSS on AWS
Quick Start Reference Deployment Guide

Overview

AWS Enterprise Accelerator – Compliance Architectures

AWS Enterprise Accelerator – Compliance solutions help streamline, automate, and implement secure baselines in AWS—from initial design to operational security readiness. They incorporate the expertise of AWS solutions architects, security and compliance personnel to help you build a secure and reliable architecture easily through automation.

This Quick Start includes AWS CloudFormation templates, which can be integrated with AWS Service Catalog, to automate building a standardized reference architecture that follows the requirements for PCI DSS. It also includes a security controls reference, which maps security controls to architecture decisions, features, and configuration of the baseline.

Architecture for PCI DSS on AWS

Deploying this Quick Start builds a multi-tier, Linux-based web application in the AWS cloud. Figures 2 and 3 illustrate the architecture.

Note

You can also download these diagrams in Microsoft PowerPoint format, and edit the icons to reflect your specific workload.


        Standard three-tier web architecture for PCI DSS on AWS depicting integration with multiple VPCs (notional development VPC shown)

Figure 2: Standard three-tier web architecture for PCI DSS on AWS depicting integration with multiple VPCs (notional development VPC shown)


        Production VPC design for PCI DSS on AWS

Figure 3: Production VPC design for PCI DSS on AWS

The sample architecture includes the following components and features:

  • Basic AWS Identity and Access Management (IAM) configuration with custom (IAM) policies, with associated groups, roles, and instance profiles

  • Standard, external-facing Amazon Virtual Private Cloud (Amazon VPC) Multi-AZ architecture with separate subnets for different application tiers and private (back-end) subnets for application and database

  • Amazon Simple Storage Service (Amazon S3) buckets for encrypted web content, logging, and backup data

  • Standard Amazon VPC security groups for Amazon Elastic Compute Cloud (Amazon EC2) instances and load balancers used in the sample application stack

  • Three-tier Linux web application using Auto Scaling and Elastic Load Balancing, which can be modified and/or bootstrapped with customer application

  • A secured bastion login host to facilitate command-line Secure Shell (SSH) access to Amazon EC2 instances for troubleshooting and systems administration activities

  • Encrypted, Multi-AZ Amazon Relational Database Service (Amazon RDS) MySQL database

  • Logging, monitoring, and alerts using AWS CloudTrail, Amazon CloudWatch, and AWS Config rules

AWS Services

The core AWS components used by this Quick Start include the following AWS services. (If you are new to AWS, see the Getting Started section of the AWS documentation.)

  • AWS CloudTrail – AWS CloudTrail records AWS API calls and delivers log files that include caller identity, time, source IP address, request parameters, and response elements. The call history and details provided by CloudTrail enable security analysis, resource change tracking, and compliance auditing.

  • Amazon CloudWatch – Amazon CloudWatch is a monitoring service for AWS cloud resources and the applications you run on AWS. You can use CloudWatch to collect and track metrics, collect and monitor log files, set alarms, and automatically react to changes in your AWS resources.

  • AWS Config – AWS Config is a fully managed service that provides you with an AWS resource inventory, configuration history, and configuration change notifications to enable security and governance. AWS Config rules enable you to automatically check the configuration of AWS resources recorded by AWS Config.

    Note

    The AWS Config rules feature is currently available only in the AWS Regions listed on the AWS Regions and Endpoints webpage.

  • Amazon EBS – Amazon Elastic Block Store (Amazon EBS) provides persistent block-level storage volumes for use with Amazon EC2 instances in the AWS cloud. Each Amazon EBS volume is automatically replicated within its Availability Zone to protect you from component failure, offering high availability and durability. Amazon EBS volumes provide the consistent and low-latency performance needed to run your workloads.

  • Amazon EC2 – The Amazon Elastic Compute Cloud (Amazon EC2) service enables you to launch virtual machine instances with a variety of operating systems. You can choose from existing Amazon Machine Images (AMIs) or import your own virtual machine images.

  • Elastic Load Balancing – Elastic Load Balancing automatically distributes traffic across multiple EC2 instances, to help achieve better fault tolerance and availability.

  • Amazon Glacier – Amazon Glacier is a storage service for archiving and long-term backup of infrequently used data. It provides secure, durable, and extremely low-cost storage, supports data transfer over SSL, and automatically encrypts data at rest. With Amazon Glacier, you can store your data for months, years, or even decades at a very low cost.

  • Amazon RDS – Amazon Relational Database Service (Amazon RDS) enables you to set up, operate, and scale a relational database in the AWS cloud. It also handles many database management tasks, such as database backups, software patching, automatic failure detection, and recovery, for database products such as MySQL, MariaDB, PostgreSQL, Oracle, Microsoft SQL Server, and Amazon Aurora. This Quick Start includes a MySQL database by default.

  • Amazon VPC – The Amazon Virtual Private Cloud (Amazon VPC) service lets you provision a private, logically isolated section of the AWS cloud where you can launch AWS services and other resources in a virtual network that you define. You have complete control over your virtual networking environment, including selection of your own IP address range, creation of subnets, and configuration of route tables and network gateways.

Best Practices

The architecture built by this Quick Start supports AWS best practices for high availability and security:

  • Multi-AZ architecture intended for high availability

  • Isolation of instances between private/public subnets

  • Security groups limiting access to only necessary services

  • Network access control list (ACL) rules to filter traffic into subnets as an additional layer of network security

  • A secured bastion host instance to facilitate restricted login access for system administrator actions

  • Standard IAM policies with associated groups and roles, exercising least privilege

  • Monitoring and logging; alerts and notifications for critical events

  • S3 buckets (with security features enabled) for logging, archive, and application data

  • Implementation of proper load balancing and Auto Scaling capabilities

  • HTTPS-enabled Elastic Load Balancing (ELB) load balancers with hardened security policy

  • Amazon RDS database backup and encryption

How You Can Use This Quick Start

You can build an environment that serves as an example for learning, as a prototyping environment, or as a baseline for customization.

Since AWS provides a very mature set of configuration options (and new services are being released all the time), this Quick Start provides security templates that you can use for your own environment. These security templates (in the form of AWS CloudFormation templates) provide a comprehensive rule set that can be systematically enforced. You can use these templates as a starting point and customize them to match your specific use cases.

Cost

You are responsible for the cost of the AWS services used while running this Quick Start reference deployment. There is no additional cost for using the Quick Start.

The AWS CloudFormation template for this Quick Start includes configuration parameters that you can customize. Some of these settings will affect the cost of deployment. For cost estimates, see the pricing pages for each AWS service you will be using or the AWS Simple Monthly Calculator. Prices are subject to change.