

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS::CloudFront::StreamingDistribution
<a name="aws-resource-cloudfront-streamingdistribution"></a>

This resource is deprecated. Amazon CloudFront is deprecating real-time messaging protocol (RTMP) distributions on December 31, 2020. For more information, [read the announcement](https://forums.aws.amazon.com/ann.jspa?annID=7356) on the Amazon CloudFront discussion forum.

## Syntax
<a name="aws-resource-cloudfront-streamingdistribution-syntax"></a>

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

### JSON
<a name="aws-resource-cloudfront-streamingdistribution-syntax.json"></a>

```
{
  "Type" : "AWS::CloudFront::StreamingDistribution",
  "Properties" : {
      "[StreamingDistributionConfig](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig)" : StreamingDistributionConfig,
      "[Tags](#cfn-cloudfront-streamingdistribution-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-cloudfront-streamingdistribution-syntax.yaml"></a>

```
Type: AWS::CloudFront::StreamingDistribution
Properties:
  [StreamingDistributionConfig](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig): 
    StreamingDistributionConfig
  [Tags](#cfn-cloudfront-streamingdistribution-tags): 
    - Tag
```

## Properties
<a name="aws-resource-cloudfront-streamingdistribution-properties"></a>

`StreamingDistributionConfig`  <a name="cfn-cloudfront-streamingdistribution-streamingdistributionconfig"></a>
The current configuration information for the RTMP distribution.  
*Required*: Yes  
*Type*: [StreamingDistributionConfig](aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-cloudfront-streamingdistribution-tags"></a>
A complex type that contains zero or more `Tag` elements.  
*Required*: Yes  
*Type*: Array of [Tag](aws-properties-cloudfront-streamingdistribution-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-cloudfront-streamingdistribution-return-values"></a>

### Ref
<a name="aws-resource-cloudfront-streamingdistribution-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the streaming distribution ID, such as `E1E7FEN9T35R9W`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-cloudfront-streamingdistribution-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-cloudfront-streamingdistribution-return-values-fn--getatt-fn--getatt"></a>

`DomainName`  <a name="DomainName-fn::getatt"></a>
The domain name of the resource, such as `d111111abcdef8.cloudfront.net`.

# AWS::CloudFront::StreamingDistribution Logging
<a name="aws-properties-cloudfront-streamingdistribution-logging"></a>

A complex type that controls whether access logs are written for the streaming distribution.

## Syntax
<a name="aws-properties-cloudfront-streamingdistribution-logging-syntax"></a>

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

### JSON
<a name="aws-properties-cloudfront-streamingdistribution-logging-syntax.json"></a>

```
{
  "[Bucket](#cfn-cloudfront-streamingdistribution-logging-bucket)" : String,
  "[Enabled](#cfn-cloudfront-streamingdistribution-logging-enabled)" : Boolean,
  "[Prefix](#cfn-cloudfront-streamingdistribution-logging-prefix)" : String
}
```

### YAML
<a name="aws-properties-cloudfront-streamingdistribution-logging-syntax.yaml"></a>

```
  [Bucket](#cfn-cloudfront-streamingdistribution-logging-bucket): String
  [Enabled](#cfn-cloudfront-streamingdistribution-logging-enabled): Boolean
  [Prefix](#cfn-cloudfront-streamingdistribution-logging-prefix): String
```

## Properties
<a name="aws-properties-cloudfront-streamingdistribution-logging-properties"></a>

`Bucket`  <a name="cfn-cloudfront-streamingdistribution-logging-bucket"></a>
The Amazon S3 bucket to store the access logs in, for example, `amzn-s3-demo-bucket.s3.amazonaws.com`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Enabled`  <a name="cfn-cloudfront-streamingdistribution-logging-enabled"></a>
Specifies whether you want CloudFront to save access logs to an Amazon S3 bucket. If you don't want to enable logging when you create a streaming distribution or if you want to disable logging for an existing streaming distribution, specify `false` for `Enabled`, and specify `empty Bucket` and `Prefix` elements. If you specify `false` for `Enabled` but you specify values for `Bucket` and `Prefix`, the values are automatically deleted.  
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Prefix`  <a name="cfn-cloudfront-streamingdistribution-logging-prefix"></a>
An optional string that you want CloudFront to prefix to the access log filenames for this streaming distribution, for example, `myprefix/`. If you want to enable logging, but you don't want to specify a prefix, you still must include an empty `Prefix` element in the `Logging` element.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## See also
<a name="aws-properties-cloudfront-streamingdistribution-logging--seealso"></a>
+ [StreamingLoggingConfig](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_StreamingLoggingConfig.html) in the *Amazon CloudFront API Reference*



# AWS::CloudFront::StreamingDistribution S3Origin
<a name="aws-properties-cloudfront-streamingdistribution-s3origin"></a>

A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.

## Syntax
<a name="aws-properties-cloudfront-streamingdistribution-s3origin-syntax"></a>

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

### JSON
<a name="aws-properties-cloudfront-streamingdistribution-s3origin-syntax.json"></a>

```
{
  "[DomainName](#cfn-cloudfront-streamingdistribution-s3origin-domainname)" : String,
  "[OriginAccessIdentity](#cfn-cloudfront-streamingdistribution-s3origin-originaccessidentity)" : String
}
```

### YAML
<a name="aws-properties-cloudfront-streamingdistribution-s3origin-syntax.yaml"></a>

```
  [DomainName](#cfn-cloudfront-streamingdistribution-s3origin-domainname): String
  [OriginAccessIdentity](#cfn-cloudfront-streamingdistribution-s3origin-originaccessidentity): String
```

## Properties
<a name="aws-properties-cloudfront-streamingdistribution-s3origin-properties"></a>

`DomainName`  <a name="cfn-cloudfront-streamingdistribution-s3origin-domainname"></a>
The DNS name of the Amazon S3 origin.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OriginAccessIdentity`  <a name="cfn-cloudfront-streamingdistribution-s3origin-originaccessidentity"></a>
The CloudFront origin access identity to associate with the distribution. Use an origin access identity to configure the distribution so that end users can only access objects in an Amazon S3 bucket through CloudFront.  
If you want end users to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty `OriginAccessIdentity` element.  
To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty `OriginAccessIdentity` element.  
To replace the origin access identity, update the distribution configuration and specify the new origin access identity.  
For more information, see [Using an Origin Access Identity to Restrict Access to Your Amazon S3 Content](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) in the * Amazon CloudFront Developer Guide*.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## See also
<a name="aws-properties-cloudfront-streamingdistribution-s3origin--seealso"></a>
+ [S3Origin](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_S3Origin.html) in the *Amazon CloudFront API Reference*



# AWS::CloudFront::StreamingDistribution StreamingDistributionConfig
<a name="aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig"></a>

The RTMP distribution's configuration information.

## Syntax
<a name="aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig-syntax"></a>

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

### JSON
<a name="aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig-syntax.json"></a>

```
{
  "[Aliases](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-aliases)" : [ String, ... ],
  "[Comment](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-comment)" : String,
  "[Enabled](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-enabled)" : Boolean,
  "[Logging](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-logging)" : Logging,
  "[PriceClass](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-priceclass)" : String,
  "[S3Origin](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-s3origin)" : S3Origin,
  "[TrustedSigners](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-trustedsigners)" : TrustedSigners
}
```

### YAML
<a name="aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig-syntax.yaml"></a>

```
  [Aliases](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-aliases): 
    - String
  [Comment](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-comment): String
  [Enabled](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-enabled): Boolean
  [Logging](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-logging): 
    Logging
  [PriceClass](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-priceclass): String
  [S3Origin](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-s3origin): 
    S3Origin
  [TrustedSigners](#cfn-cloudfront-streamingdistribution-streamingdistributionconfig-trustedsigners): 
    TrustedSigners
```

## Properties
<a name="aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig-properties"></a>

`Aliases`  <a name="cfn-cloudfront-streamingdistribution-streamingdistributionconfig-aliases"></a>
A complex type that contains information about CNAMEs (alternate domain names), if any, for this streaming distribution.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Comment`  <a name="cfn-cloudfront-streamingdistribution-streamingdistributionconfig-comment"></a>
Any comments you want to include about the streaming distribution.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Enabled`  <a name="cfn-cloudfront-streamingdistribution-streamingdistributionconfig-enabled"></a>
Whether the streaming distribution is enabled to accept user requests for content.  
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Logging`  <a name="cfn-cloudfront-streamingdistribution-streamingdistributionconfig-logging"></a>
A complex type that controls whether access logs are written for the streaming distribution.  
*Required*: No  
*Type*: [Logging](aws-properties-cloudfront-streamingdistribution-logging.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PriceClass`  <a name="cfn-cloudfront-streamingdistribution-streamingdistributionconfig-priceclass"></a>
A complex type that contains information about price class for this streaming distribution.  
*Required*: No  
*Type*: String  
*Allowed values*: `PriceClass_100 | PriceClass_200 | PriceClass_All | None`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3Origin`  <a name="cfn-cloudfront-streamingdistribution-streamingdistributionconfig-s3origin"></a>
A complex type that contains information about the Amazon S3 bucket from which you want CloudFront to get your media files for distribution.  
*Required*: Yes  
*Type*: [S3Origin](aws-properties-cloudfront-streamingdistribution-s3origin.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TrustedSigners`  <a name="cfn-cloudfront-streamingdistribution-streamingdistributionconfig-trustedsigners"></a>
A complex type that specifies any AWS accounts that you want to permit to create signed URLs for private content. If you want the distribution to use signed URLs, include this element; if you want the distribution to use public URLs, remove this element. For more information, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*.  
*Required*: Yes  
*Type*: [TrustedSigners](aws-properties-cloudfront-streamingdistribution-trustedsigners.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## See also
<a name="aws-properties-cloudfront-streamingdistribution-streamingdistributionconfig--seealso"></a>
+ [StreamingDistributionConfig](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_StreamingDistributionConfig.html) in the *Amazon CloudFront API Reference*



# AWS::CloudFront::StreamingDistribution Tag
<a name="aws-properties-cloudfront-streamingdistribution-tag"></a>

A complex type that contains `Tag` key and `Tag` value.

## Syntax
<a name="aws-properties-cloudfront-streamingdistribution-tag-syntax"></a>

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

### JSON
<a name="aws-properties-cloudfront-streamingdistribution-tag-syntax.json"></a>

```
{
  "[Key](#cfn-cloudfront-streamingdistribution-tag-key)" : String,
  "[Value](#cfn-cloudfront-streamingdistribution-tag-value)" : String
}
```

### YAML
<a name="aws-properties-cloudfront-streamingdistribution-tag-syntax.yaml"></a>

```
  [Key](#cfn-cloudfront-streamingdistribution-tag-key): String
  [Value](#cfn-cloudfront-streamingdistribution-tag-value): String
```

## Properties
<a name="aws-properties-cloudfront-streamingdistribution-tag-properties"></a>

`Key`  <a name="cfn-cloudfront-streamingdistribution-tag-key"></a>
A string that contains `Tag` key.  
The string length should be between 1 and 128 characters. Valid characters include `a-z`, `A-Z`, `0-9`, space, and the special characters `_ - . : / = + @`.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-cloudfront-streamingdistribution-tag-value"></a>
A string that contains an optional `Tag` value.  
The string length should be between 0 and 256 characters. Valid characters include `a-z`, `A-Z`, `0-9`, space, and the special characters `_ - . : / = + @`.  
*Required*: Yes  
*Type*: String  
*Pattern*: `([\p{L}\p{Z}\p{N}_.:/=+\-@]*)`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::CloudFront::StreamingDistribution TrustedSigners
<a name="aws-properties-cloudfront-streamingdistribution-trustedsigners"></a>

A list of AWS accounts whose public keys CloudFront can use to verify the signatures of signed URLs and signed cookies.

## Syntax
<a name="aws-properties-cloudfront-streamingdistribution-trustedsigners-syntax"></a>

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

### JSON
<a name="aws-properties-cloudfront-streamingdistribution-trustedsigners-syntax.json"></a>

```
{
  "[AwsAccountNumbers](#cfn-cloudfront-streamingdistribution-trustedsigners-awsaccountnumbers)" : [ String, ... ],
  "[Enabled](#cfn-cloudfront-streamingdistribution-trustedsigners-enabled)" : Boolean
}
```

### YAML
<a name="aws-properties-cloudfront-streamingdistribution-trustedsigners-syntax.yaml"></a>

```
  [AwsAccountNumbers](#cfn-cloudfront-streamingdistribution-trustedsigners-awsaccountnumbers): 
    - String
  [Enabled](#cfn-cloudfront-streamingdistribution-trustedsigners-enabled): Boolean
```

## Properties
<a name="aws-properties-cloudfront-streamingdistribution-trustedsigners-properties"></a>

`AwsAccountNumbers`  <a name="cfn-cloudfront-streamingdistribution-trustedsigners-awsaccountnumbers"></a>
An AWS account number that contains active CloudFront key pairs that CloudFront can use to verify the signatures of signed URLs and signed cookies. If the AWS account that owns the key pairs is the same account that owns the CloudFront distribution, the value of this field is `self`.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Enabled`  <a name="cfn-cloudfront-streamingdistribution-trustedsigners-enabled"></a>
This field is `true` if any of the AWS accounts in the list are configured as trusted signers. If not, this field is `false`.  
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## See also
<a name="aws-properties-cloudfront-streamingdistribution-trustedsigners--seealso"></a>
+ [TrustedSigners](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_TrustedSigners.html) in the *Amazon CloudFront API Reference*

