AWSTemplateFormatVersion: '2010-09-09' Description: >- This template deploys IIS in an Auto Scaling group using AWS services such as AWS Systems Managers, Amazon CloudWatch, Amazon Elastic Compute Cloud (EC2) and/or Amazon Elastic Container Service. The main template deploys Active Directory and a scalable VPC. The workload template deploys into an existing Active Directory (AD) and VPC environment. **WARNING** This template creates Amazon EC2 Windows instances, ECS containers and related resources. You will be billed for the AWS resources used if you create a stack from this template. (qs-1r91fg4hu) Metadata: QuickStartDocumentation: EntrypointName: Deploy into a new VPC Order: "1" AWS::CloudFormation::Interface: ParameterGroups: - Label: default: Deployment Type Parameters: - DeploymentType - ECSImage - Label: default: Active Directory configuration Parameters: - ADScenarioType - DomainDNSName - DomainNetBIOSName - DomainAdminUser - DomainAdminPassword - Label: default: Self-managed Active Directory configuration (optional if Active Directory is deployed on EC2) Parameters: - ADServer1InstanceType - ADServer1NetBIOSName - ADServer1PrivateIP - ADServer2InstanceType - ADServer2NetBIOSName - ADServer2PrivateIP - Label: default: Amazon EC2 configuration Parameters: - KeyPairName - Label: default: Network configuration Parameters: - AvailabilityZones - VPCCIDR - NumberOfAZs - PublicSubnet1CIDR - PublicSubnet2CIDR - PublicSubnet3CIDR - PrivateSubnet1CIDR - PrivateSubnet2CIDR - PrivateSubnet3CIDR - Label: default: RD gateway configuration Parameters: - RDGWCIDR - NumberOfRDGWHosts - RDGWInstanceType - Label: default: Auto Scaling group / Application Load Balancer configuration Parameters: - ASGDesiredCapacity - ASGMaxSize - ASGMinSize - ELBSchemeParameter - WebAccessCIDR - IISServerInstanceType - SetupAppInsightsMonitoring - Label: default: IIS Webpage Parameters: - WebBucketName - WebBucketKey - Label: default: AWS Quick Start configuration Parameters: - QSS3BucketName - QSS3BucketRegion - QSS3KeyPrefix ParameterLabels: ADScenarioType: default: Active Directory scenario type ADServer1InstanceType: default: Domain controller 1 instance type ADServer1NetBIOSName: default: Domain controller 1 NetBIOS name ADServer1PrivateIP: default: Domain controller 1 private IP address ADServer2InstanceType: default: Domain controller 2 instance type ADServer2NetBIOSName: default: Domain controller 2 NetBIOS name ADServer2PrivateIP: default: Domain controller 2 private IP address ASGDesiredCapacity: default: Desired capacity of the Auto Scaling group ASGMaxSize: default: Auto Scaling group maximum instance size ASGMinSize: default: Auto Scaling group minimum instance size AvailabilityZones: default: Availability Zones DeploymentType: default: Deployment type for IIS DomainAdminPassword: default: Domain administrator password DomainAdminUser: default: Domain administrator name DomainDNSName: default: Domain DNS name DomainNetBIOSName: default: Domain NetBIOS name ECSImage: default: ECS Windows Container Image ELBSchemeParameter: default: Elastic Load Balancing scheme IISServerInstanceType: default: IIS servers instance type KeyPairName: default: Key-pair name NumberOfAZs: default: Number of Availability Zones NumberOfRDGWHosts: default: Number of RD gateway hosts PrivateSubnet1CIDR: default: Private subnet 1 CIDR PrivateSubnet2CIDR: default: Private subnet 2 CIDR PrivateSubnet3CIDR: default: Private subnet 3 CIDR PublicSubnet1CIDR: default: Public subnet 1 CIDR PublicSubnet2CIDR: default: Public subnet 2 CIDR PublicSubnet3CIDR: default: Public subnet 3 CIDR QSS3BucketName: default: Quick Start S3 bucket name QSS3BucketRegion: default: Quick Start S3 bucket Region QSS3KeyPrefix: default: Quick Start S3 key prefix SetupAppInsightsMonitoring: default: Setup Application Insights monitoring RDGWInstanceType: default: RD gateway instance type RDGWCIDR: default: Allowed RD gateway external access CIDR WebAccessCIDR: default: Elastic Load Balancers CIDR range WebBucketName: default: S3 Bucket Webpage Location WebBucketKey: default: S3 Key Webpage Location VPCCIDR: default: VPC CIDR Parameters: ADScenarioType: AllowedValues: - AWS Directory Service for Microsoft AD (Enterprise Edition) - Microsoft AD on Amazon EC2 Default: AWS Directory Service for Microsoft AD (Enterprise Edition) Description: Select the type of deployment to use, either AWS Directory Service for Microsoft Active Directory or managing your own Amazon EC2 Active Directory instances. Type: String ADServer1InstanceType: AllowedValues: - t3.medium - t3.large - t3.xlarge - t3.2xlarge - m5.large - m5.xlarge - m5.2xlarge - m5.4xlarge Default: m5.xlarge Description: Amazon EC2 instance type for the first Active Directory instance. Type: String ADServer1NetBIOSName: AllowedPattern: '^[a-zA-Z0-9]+$' Default: DC1 Description: NetBIOS name of the first Active Directory server (up to 15 characters). MaxLength: '15' MinLength: '1' Type: String ADServer1PrivateIP: AllowedPattern: '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$' Default: 10.0.0.10 Description: Fixed private IP address for the first Active Directory server, located in Availability Zone 1. Type: String ADServer2InstanceType: AllowedValues: - t3.medium - t3.large - t3.xlarge - t3.2xlarge - m5.large - m5.xlarge - m5.2xlarge - m5.4xlarge Default: m5.xlarge Description: Amazon EC2 instance type for the second Active Directory instance. Type: String ADServer2NetBIOSName: AllowedPattern: '^[a-zA-Z0-9]+$' Default: DC2 Description: NetBIOS name of the second Active Directory server (up to 15 characters). MaxLength: '15' MinLength: '1' Type: String ADServer2PrivateIP: AllowedPattern: '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$' Default: 10.0.32.10 Description: Fixed private IP address for the second Active Directory server, located in Availability Zone 2. Type: String ASGMinSize: Default: 2 Type: Number Description: Minimum instance size for the Auto Scaling group. ASGMaxSize: Default: 4 Type: Number Description: Maximum instance size for the Auto Scaling group. ASGDesiredCapacity: Default: 2 Type: Number Description: Desired capacity of the Auto Scaling group. AvailabilityZones: Description: >- List of Availability Zones to use for the subnets in the VPC. The logical order is preserved. At least two Availability Zones must be provided. Type: List DeploymentType: Type: String Description: Deploy IIS on EC2 or ECS Default: EC2 AllowedValues: - EC2 - ECS DomainAdminPassword: AllowedPattern: '(?=^.{8,32}$)((?=.*\d)(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[^A-Za-z0-9])(?=.*[a-z])|(?=.*[^A-Za-z0-9])(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9]))^.*' Description: Password for the domain administrator. Must be at least 8 characters containing letters, numbers, and symbols. MaxLength: '32' MinLength: '8' NoEcho: 'true' Type: String DomainAdminUser: AllowedPattern: '^[a-zA-Z0-9]+$' Default: Admin Description: >- User name for the domain administrator account. This is separate from the default administrator account. Note: This is for a self-managed Active Directory scenario. When using AWS Directory Service for Microsoft Active Directory, "Admin" is the default regardless of the value provided. MaxLength: '25' MinLength: '5' Type: String DomainDNSName: AllowedPattern: '^[a-zA-Z0-9]+[a-zA-Z0-9\-]*\.[a-zA-Z0-9]+$' Default: example.com Description: Fully qualified domain name (FQDN) of the forest root domain. MaxLength: '64' MinLength: '2' Type: String DomainNetBIOSName: AllowedPattern: '^[a-zA-Z0-9]+$' Default: example Description: NetBIOS name of the domain for users of earlier Windows versions (up to 15 characters). MaxLength: '15' MinLength: '1' Type: String ECSImage: AllowedPattern: '^[\w\-\:\.\#\/]*$' Default: "microsoft/iis" Description: ECS Container Image for Windows. Only needed if ECS deployment type is used MaxLength: "255" MinLength: "2" Type: String ELBSchemeParameter: Type: String Description: Choose whether the Elastic Load Balancer is public or private. Default: internet-facing AllowedValues: - internet-facing - internal IISServerInstanceType: AllowedValues: - t2.micro - t2.small - t2.medium - t2.large - t2.xlarge - t2.2xlarge - t3.micro - t3.small - t3.medium - t3.large - t3.xlarge - t3.2xlarge - m4.large - m4.xlarge - m4.2xlarge - m4.4xlarge - m4.10xlarge - m5.large - m5.xlarge - m5.2xlarge - m5.4xlarge - m5.8xlarge - m5.12xlarge - m5.16xlarge - m5.24xlarge - c4.large - c4.xlarge - c4.2xlarge - c4.4xlarge - c4.8xlarge - c5.large - c5.xlarge - c5.2xlarge - c5.4xlarge - c5.9xlarge - c5.12xlarge - c5.18xlarge - c5.24xlarge - r4.large - r4.xlarge - r4.2xlarge - r4.4xlarge - r4.8xlarge - r5.large - r5.xlarge - r5.2xlarge - r5.4xlarge - r5.8xlarge - r5.12xlarge - r5.16xlarge - r5.24xlarge Default: t3.2xlarge Description: Amazon EC2 instance type for the IIS Server instances. Type: String KeyPairName: Description: Key pairs for connecting to your instance after it launches. Type: AWS::EC2::KeyPair::KeyName NumberOfRDGWHosts: AllowedValues: - '0' - '1' - '2' - '3' - '4' Default: '1' Description: Enter the number of RD gateway hosts to create. Type: String NumberOfAZs: AllowedValues: - '2' - '3' Default: '2' Description: >- Number of Availability Zones to use in the VPC. This must correspond to the number of Availability Zones entered in the Availability Zones parameter. Type: String PrivateSubnet1CIDR: AllowedPattern: '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$' Default: 10.0.0.0/19 Description: CIDR block for private subnet 1, located in Availability Zone 1. Type: String PrivateSubnet2CIDR: AllowedPattern: '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$' Default: 10.0.32.0/19 Description: CIDR block for private subnet 2, located in Availability Zone 2. Type: String PrivateSubnet3CIDR: AllowedPattern: '^$|^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$' Default: 10.0.64.0/19 Description: (Optional) CIDR block for optional private subnet 3, located in Availability Zone 3. Type: String PublicSubnet1CIDR: AllowedPattern: '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$' Default: 10.0.128.0/20 Description: CIDR block for the public subnet 2, located in Availability Zone 2. Type: String PublicSubnet2CIDR: AllowedPattern: '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$' Default: 10.0.144.0/20 Description: CIDR block for the optional public subnet 3, located in Availability Zone 3. Type: String PublicSubnet3CIDR: AllowedPattern: '^$|^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$' Default: 10.0.160.0/20 Description: (Optional) CIDR block for the optional public subnet 3, located in Availability Zone 3. Type: String QSS3BucketName: AllowedPattern: '^[a-z0-9]+[a-z0-9\.\-]*[a-z0-9]+$' ConstraintDescription: Can include numbers, lowercase letters, uppercase letters, and hyphens (-). However, it cannot start or end with a hyphen (-). Default: aws-quickstart Description: S3 bucket name for the Quick Start assets. This name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Type: String QSS3BucketRegion: AllowedPattern: '^[a-z]+\-[a-z\-]+\-[0-9]{1}$' Default: us-east-1 Description: AWS Region where the Quick Start S3 bucket (QSS3BucketName) is hosted. Specify this value when using your own S3 bucket. Type: String QSS3KeyPrefix: AllowedPattern: '^[a-zA-Z0-9\-\/]+$' ConstraintDescription: Can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slashes (/). Default: quickstart-microsoft-iis/ Description: S3 key prefix for the Quick Start assets. This prefix can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slashes (/). Type: String SetupAppInsightsMonitoring: AllowedValues: - 'true' - 'false' ConstraintDescription: Can include either true or false. Default: 'false' Description: Setup Application Insights monitoring for all IIS resources. This parameter can include either true or false. Type: String RDGWInstanceType: Default: t2.large AllowedValues: - t2.small - t2.medium - t2.large - t3.micro - t3.small - t3.medium - t3.large - t3.xlarge - t3.2xlarge - t3a.micro - t3a.small - t3a.medium - t3a.large - t3a.xlarge - t3a.2xlarge - m5.large - m5.xlarge - m5.2xlarge - m5.4xlarge - m5a.large - m5a.xlarge - m5a.2xlarge Description: Amazon EC2 instance type for the RD gateway instances. Type: String RDGWCIDR: AllowedPattern: '^$|^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$' ConstraintDescription: CIDR block parameter, in the form x.x.x.x/x. Description: The CIDR IP range that is permitted to access the RD gateway instances. Type: String WebAccessCIDR: AllowedPattern: '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$' ConstraintDescription: CIDR block parameter, in the form x.x.x.x/x. Description: The CIDR IP range that is permitted to access the Elastic Load Balancers. Type: String WebBucketName: AllowedPattern: '^([a-z0-9]+[a-z0-9\.\-]*[a-z0-9]+)?$' Type: String Description: Bucket name where html file is located for iis. If left blank, a sample page will be used. Default: "" WebBucketKey: AllowedPattern: '^[0-9a-zA-Z\-\/\.]+$' ConstraintDescription: Can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slashes (/). Description: Bucket Key where html file is located for iis. Only change S3 Bucket Wepage is specified, otherwise leave as default. Default: "webfiles/index.html" Type: String VPCCIDR: AllowedPattern: '^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(1[6-9]|2[0-8]))$' ConstraintDescription: CIDR block parameter, in the form x.x.x.x/16-28. Default: 10.0.0.0/16 Description: CIDR block for the VPC. Type: String Conditions: AppInsightsEnabled: !Equals [!Ref SetupAppInsightsMonitoring, true] UsingDefaultBucket: !Equals [!Ref QSS3BucketName, 'aws-quickstart'] IncludeRDGW: !Not - !Equals - !Ref NumberOfRDGWHosts - '0' UseADonEC2: !Equals - !Ref 'ADScenarioType' - Microsoft AD on Amazon EC2 UseELBPublicSubnets: !Equals - !Ref 'ELBSchemeParameter' - internet-facing 3AZCondition: !Equals - !Ref NumberOfAZs - '3' Rules: ValidateRdgw: RuleCondition: !Not - !Equals - !Ref NumberOfRDGWHosts - '0' Assertions: - Assert: !Not - !Equals - !Ref RDGWCIDR - '' AssertDescription: if condition IncludeRDGW is true, then RDGWCIDR cannot be left empty Resources: VPCStack: Type: AWS::CloudFormation::Stack Properties: TemplateURL: Fn::Sub: - 'https://${S3Bucket}.s3.${S3Region}.${AWS::URLSuffix}/${QSS3KeyPrefix}submodules/quickstart-aws-vpc/templates/aws-vpc.template.yaml' - S3Region: !If - UsingDefaultBucket - !Ref AWS::Region - !Ref QSS3BucketRegion S3Bucket: !If - UsingDefaultBucket - !Sub '${QSS3BucketName}-${AWS::Region}' - !Ref QSS3BucketName Parameters: AvailabilityZones: !Join - ',' - !Ref 'AvailabilityZones' NumberOfAZs: !Ref 'NumberOfAZs' PrivateSubnet1ACIDR: !Ref 'PrivateSubnet1CIDR' PrivateSubnet2ACIDR: !Ref 'PrivateSubnet2CIDR' PrivateSubnet3ACIDR: !If - 3AZCondition - !Ref 'AWS::NoValue' - !Ref 'PrivateSubnet3CIDR' PublicSubnet1CIDR: !Ref 'PublicSubnet1CIDR' PublicSubnet2CIDR: !Ref 'PublicSubnet2CIDR' PublicSubnet3CIDR: !If - 3AZCondition - !Ref 'AWS::NoValue' - !Ref 'PublicSubnet3CIDR' VPCCIDR: !Ref 'VPCCIDR' ADStack: Type: AWS::CloudFormation::Stack Properties: TemplateURL: !Sub - https://${S3Bucket}.s3.${S3Region}.${AWS::URLSuffix}/${QSS3KeyPrefix}submodules/quickstart-microsoft-activedirectory/templates/${QSADTemplate} - QSADTemplate: !If - UseADonEC2 - ad-1.template - ad-3.template S3Region: !If - UsingDefaultBucket - !Ref AWS::Region - !Ref QSS3BucketRegion S3Bucket: !If - UsingDefaultBucket - !Sub '${QSS3BucketName}-${AWS::Region}' - !Ref QSS3BucketName Parameters: !If - UseADonEC2 - ADServer1InstanceType: !Ref 'ADServer1InstanceType' ADServer1NetBIOSName: !Ref 'ADServer1NetBIOSName' ADServer1PrivateIP: !Ref 'ADServer1PrivateIP' ADServer2InstanceType: !Ref 'ADServer2InstanceType' ADServer2NetBIOSName: !Ref 'ADServer2NetBIOSName' ADServer2PrivateIP: !Ref 'ADServer2PrivateIP' DomainAdminPassword: !Ref 'DomainAdminPassword' DomainAdminUser: !Ref 'DomainAdminUser' DomainDNSName: !Ref 'DomainDNSName' DomainNetBIOSName: !Ref 'DomainNetBIOSName' KeyPairName: !Ref 'KeyPairName' PrivateSubnet1ID: !GetAtt 'VPCStack.Outputs.PrivateSubnet1AID' PrivateSubnet2ID: !GetAtt 'VPCStack.Outputs.PrivateSubnet2AID' QSS3BucketName: !Ref 'QSS3BucketName' QSS3BucketRegion: !Ref 'QSS3BucketRegion' QSS3KeyPrefix: !Sub '${QSS3KeyPrefix}submodules/quickstart-microsoft-activedirectory/' VPCCIDR: !Ref 'VPCCIDR' VPCID: !GetAtt 'VPCStack.Outputs.VPCID' - DomainAdminPassword: !Ref 'DomainAdminPassword' DomainDNSName: !Ref 'DomainDNSName' DomainNetBIOSName: !Ref 'DomainNetBIOSName' KeyPairName: !Ref 'KeyPairName' PrivateSubnet1ID: !GetAtt 'VPCStack.Outputs.PrivateSubnet1AID' PrivateSubnet2ID: !GetAtt 'VPCStack.Outputs.PrivateSubnet2AID' QSS3BucketName: !Ref 'QSS3BucketName' QSS3BucketRegion: !Ref 'QSS3BucketRegion' QSS3KeyPrefix: !Sub '${QSS3KeyPrefix}submodules/quickstart-microsoft-activedirectory/' VPCCIDR: !Ref 'VPCCIDR' VPCID: !GetAtt 'VPCStack.Outputs.VPCID' RDGWStack: Condition: IncludeRDGW Type: AWS::CloudFormation::Stack Properties: TemplateURL: Fn::Sub: - 'https://${S3Bucket}.s3.${S3Region}.${AWS::URLSuffix}/${QSS3KeyPrefix}submodules/quickstart-microsoft-rdgateway/templates/rdgw-domain.template' - S3Region: !If - UsingDefaultBucket - !Ref AWS::Region - !Ref QSS3BucketRegion S3Bucket: !If - UsingDefaultBucket - !Sub '${QSS3BucketName}-${AWS::Region}' - !Ref QSS3BucketName Parameters: DomainAdminPassword: !Ref 'DomainAdminPassword' DomainAdminUser: !If - UseADonEC2 - !Ref 'DomainAdminUser' - admin DomainDNSName: !Ref 'DomainDNSName' DomainMemberSGID: !GetAtt 'ADStack.Outputs.DomainMemberSGID' DomainNetBIOSName: !Ref 'DomainNetBIOSName' KeyPairName: !Ref 'KeyPairName' NumberOfRDGWHosts: !Ref 'NumberOfRDGWHosts' PublicSubnet1ID: !GetAtt 'VPCStack.Outputs.PublicSubnet1ID' PublicSubnet2ID: !GetAtt 'VPCStack.Outputs.PublicSubnet2ID' QSS3BucketName: !Ref 'QSS3BucketName' QSS3BucketRegion: !Ref 'QSS3BucketRegion' QSS3KeyPrefix: !Sub '${QSS3KeyPrefix}submodules/quickstart-microsoft-rdgateway/' RDGWCIDR: !Ref 'RDGWCIDR' RDGWInstanceType: !Ref 'RDGWInstanceType' VPCID: !GetAtt 'VPCStack.Outputs.VPCID' IISStack: Type: AWS::CloudFormation::Stack Properties: TemplateURL: Fn::Sub: - 'https://${S3Bucket}.s3.${S3Region}.${AWS::URLSuffix}/${QSS3KeyPrefix}templates/iis-workload.template.yaml' - S3Region: !If - UsingDefaultBucket - !Ref AWS::Region - !Ref QSS3BucketRegion S3Bucket: !If - UsingDefaultBucket - !Sub '${QSS3BucketName}-${AWS::Region}' - !Ref QSS3BucketName Parameters: AppInsightsApplicationName: !If [AppInsightsEnabled, !Sub "ApplicationInsights-${AWS::StackName}", !Ref AWS::NoValue] ASGDesiredCapacity: !Ref ASGDesiredCapacity ASGMaxSize: !Ref ASGMaxSize ASGMinSize: !Ref ASGMinSize DeploymentType: !Ref DeploymentType DomainAdminPassword: !Ref 'DomainAdminPassword' DomainAdminUser: !Ref 'DomainAdminUser' DomainDNSName: !Ref 'DomainDNSName' DomainMemberSecurityGroup: !GetAtt 'ADStack.Outputs.DomainMemberSGID' DomainNetBIOSName: !Ref 'DomainNetBIOSName' ELBSchemeParameter: !Ref ELBSchemeParameter ELBSubnet1ID: !If [UseELBPublicSubnets, !GetAtt VPCStack.Outputs.PublicSubnet1ID, !GetAtt VPCStack.Outputs.PrivateSubnet1AID] ELBSubnet2ID: !If [UseELBPublicSubnets, !GetAtt VPCStack.Outputs.PublicSubnet2ID, !GetAtt VPCStack.Outputs.PrivateSubnet2AID] ECSImage: !Ref ECSImage IISServerInstanceType: !Ref IISServerInstanceType PrivateSubnet1ID: !GetAtt 'VPCStack.Outputs.PrivateSubnet1AID' PrivateSubnet2ID: !GetAtt 'VPCStack.Outputs.PrivateSubnet2AID' QSS3BucketName: !Ref 'QSS3BucketName' QSS3KeyPrefix: !Sub '${QSS3KeyPrefix}' SetupAppInsightsMonitoring: !Ref SetupAppInsightsMonitoring VPCID: !GetAtt 'VPCStack.Outputs.VPCID' WebAccessCIDR: !Ref 'WebAccessCIDR' WebBucketKey: !Ref WebBucketKey WebBucketName: !Ref WebBucketName