AWS::CloudFront::Distribution GeoRestriction - AWS CloudFormation

AWS::CloudFront::Distribution GeoRestriction

A complex type that controls the countries in which your content is distributed. CloudFront determines the location of your users using MaxMind GeoIP databases. To disable geo restriction, remove the Restrictions property from your stack template.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Locations" : [ String, ... ], "RestrictionType" : String }

YAML

Locations: - String RestrictionType: String

Properties

Locations

A complex type that contains a Location element for each country in which you want CloudFront either to distribute your content (whitelist) or not distribute your content (blacklist).

The Location element is a two-letter, uppercase country code for a country that you want to include in your blacklist or whitelist. Include one Location element for each country.

CloudFront and MaxMind both use ISO 3166 country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on the International Organization for Standardization website. You can also refer to the country list on the CloudFront console, which includes both country names and codes.

Required: Conditional

Type: Array of String

Update requires: No interruption

RestrictionType

The method that you want to use to restrict distribution of your content by country:

  • none: No geo restriction is enabled, meaning access to content is not restricted by client geo location.

  • blacklist: The Location elements specify the countries in which you don't want CloudFront to distribute your content.

  • whitelist: The Location elements specify the countries in which you want CloudFront to distribute your content.

Required: Yes

Type: String

Allowed values: blacklist | whitelist | none

Update requires: No interruption

Examples

Add georestrictions

The following examples show how to add georestrictions.

JSON

{ "Restrictions": { "GeoRestriction": { "RestrictionType": "whitelist", "Locations": [ "ES", "GB" ] } } }

YAML

Restrictions: GeoRestriction: RestrictionType: whitelist Locations: - ES - GB

See also