Skip to content
v2.277.0

GeoRestrictionProperty Struct ​

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.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_cloudfront as cloudfront } from 'aws-cdk-lib';
const geoRestrictionProperty: cloudfront.CfnDistribution.GeoRestrictionProperty = {
  restrictionType: 'restrictionType',

  // the properties below are optional
  locations: ['locations'],
};
python
# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_cloudfront as cloudfront

geo_restriction_property = cloudfront.CfnDistribution.GeoRestrictionProperty(
    restriction_type="restrictionType",

    # the properties below are optional
    locations=["locations"]
)
java
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.cloudfront.*;

GeoRestrictionProperty geoRestrictionProperty = GeoRestrictionProperty.builder()
        .restrictionType("restrictionType")

        // the properties below are optional
        .locations(List.of("locations"))
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.CloudFront;

var geoRestrictionProperty = new GeoRestrictionProperty {
    RestrictionType = "restrictionType",

    // the properties below are optional
    Locations = new [] { "locations" }
};
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

geoRestrictionProperty := &GeoRestrictionProperty{
	RestrictionType: jsii.String("restrictionType"),

	// the properties below are optional
	Locations: []*string{
		jsii.String("locations"),
	},
}

Properties ​

locationsoptionalstring[]locationsoptionaltyping.List[str]locationsoptionalList<String>Locationsoptionalstring[]Locationsoptional*[]*string#
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` ).
notes

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.

restrictionTypestringrestriction_typestrrestrictionTypeStringRestrictionTypestringRestrictionType*stringrequired#
The method that you want to use to restrict distribution of your content by country:.
notes
  • 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.