Amazon CloudFront

2021/07/07 - Amazon CloudFront - 2 new api methods

Changes  Amazon CloudFront now provides two new APIs, ListConflictingAliases and AssociateAlias, that help locate and move Alternate Domain Names (CNAMEs) if you encounter the CNAMEAlreadyExists error code.

ListConflictingAliases (new) Link ¶

Gets a list of aliases (also called CNAMEs or alternate domain names) that conflict or overlap with the provided alias, and the associated CloudFront distributions and Amazon Web Services accounts for each conflicting alias. In the returned list, the distribution and account IDs are partially hidden, which allows you to identify the distributions and accounts that you own, but helps to protect the information of ones that you don’t own.

Use this operation to find aliases that are in use in CloudFront that conflict or overlap with the provided alias. For example, if you provide www.example.com as input, the returned list can include www.example.com and the overlapping wildcard alternate domain name ( *.example.com), if they exist. If you provide *.example.com as input, the returned list can include *.example.com and any alternate domain names covered by that wildcard (for example, www.example.com, test.example.com, dev.example.com, and so on), if they exist.

To list conflicting aliases, you provide the alias to search and the ID of a distribution in your account that has an attached SSL/TLS certificate that includes the provided alias. For more information, including how to set up the distribution and certificate, see Moving an alternate domain name to a different distribution in the Amazon CloudFront Developer Guide.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

See also: AWS API Documentation

Request Syntax

client.list_conflicting_aliases(
    DistributionId='string',
    Alias='string',
    Marker='string',
    MaxItems=123
)
type DistributionId:

string

param DistributionId:

[REQUIRED]

The ID of a distribution in your account that has an attached SSL/TLS certificate that includes the provided alias.

type Alias:

string

param Alias:

[REQUIRED]

The alias (also called a CNAME) to search for conflicting aliases.

type Marker:

string

param Marker:

Use this field when paginating results to indicate where to begin in the list of conflicting aliases. The response includes conflicting aliases in the list that occur after the marker. To get the next page of the list, set this field’s value to the value of NextMarker from the current page’s response.

type MaxItems:

integer

param MaxItems:

The maximum number of conflicting aliases that you want in the response.

rtype:

dict

returns:

Response Syntax

{
    'ConflictingAliasesList': {
        'NextMarker': 'string',
        'MaxItems': 123,
        'Quantity': 123,
        'Items': [
            {
                'Alias': 'string',
                'DistributionId': 'string',
                'AccountId': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • ConflictingAliasesList (dict) --

      A list of conflicting aliases.

      • NextMarker (string) --

        If there are more items in the list than are in this response, this element is present. It contains the value that you should use in the Marker field of a subsequent request to continue listing conflicting aliases where you left off.

      • MaxItems (integer) --

        The maximum number of conflicting aliases requested.

      • Quantity (integer) --

        The number of conflicting aliases returned in the response.

      • Items (list) --

        Contains the conflicting aliases in the list.

        • (dict) --

          An alias (also called a CNAME) and the CloudFront distribution and Amazon Web Services account ID that it’s associated with. The distribution and account IDs are partially hidden, which allows you to identify the distributions and accounts that you own, but helps to protect the information of ones that you don’t own.

          • Alias (string) --

            An alias (also called a CNAME).

          • DistributionId (string) --

            The (partially hidden) ID of the CloudFront distribution associated with the alias.

          • AccountId (string) --

            The (partially hidden) ID of the Amazon Web Services account that owns the distribution that’s associated with the alias.

AssociateAlias (new) Link ¶

Associates an alias (also known as a CNAME or an alternate domain name) with a CloudFront distribution.

With this operation you can move an alias that’s already in use on a CloudFront distribution to a different distribution in one step. This prevents the downtime that could occur if you first remove the alias from one distribution and then separately add the alias to another distribution.

To use this operation to associate an alias with a distribution, you provide the alias and the ID of the target distribution for the alias. For more information, including how to set up the target distribution, prerequisites that you must complete, and other restrictions, see Moving an alternate domain name to a different distribution in the Amazon CloudFront Developer Guide.

See also: AWS API Documentation

Request Syntax

client.associate_alias(
    TargetDistributionId='string',
    Alias='string'
)
type TargetDistributionId:

string

param TargetDistributionId:

[REQUIRED]

The ID of the distribution that you’re associating the alias with.

type Alias:

string

param Alias:

[REQUIRED]

The alias (also known as a CNAME) to add to the target distribution.

returns:

None