[ aws . cloudfront ]
Creates a new origin access identity. If you’re using Amazon S3 for your origin, you can use an origin access identity to require users to access your content using a CloudFront URL instead of the Amazon S3 URL. For more information about how to use origin access identities, see Serving Private Content through CloudFront in the Amazon CloudFront Developer Guide .
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
create-cloud-front-origin-access-identity
--cloud-front-origin-access-identity-config <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--cloud-front-origin-access-identity-config (structure)
The current configuration information for the identity.
CallerReference -> (string)
A unique value (for example, a date-time stamp) that ensures that the request can’t be replayed.
If the value of
CallerReferenceis new (regardless of the content of theCloudFrontOriginAccessIdentityConfigobject), a new origin access identity is created.If the
CallerReferenceis a value already sent in a previous identity request, and the content of theCloudFrontOriginAccessIdentityConfigis identical to the original request (ignoring white space), the response includes the same information returned to the original request.If the
CallerReferenceis a value you already sent in a previous request to create an identity, but the content of theCloudFrontOriginAccessIdentityConfigis different from the original request, CloudFront returns aCloudFrontOriginAccessIdentityAlreadyExistserror.Comment -> (string)
Any comments you want to include about the origin access identity.
Shorthand Syntax:
CallerReference=string,Comment=string
JSON Syntax:
{
"CallerReference": "string",
"Comment": "string"
}
--cli-input-json | --cli-input-yaml (string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.
--generate-cli-skeleton (string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.
See ‘aws help’ for descriptions of global parameters.
To create a CloudFront origin access identity
The following example creates a CloudFront origin access identity (OAI) by providing the OAI configuration as a command line argument:
aws cloudfront create-cloud-front-origin-access-identity \
--cloud-front-origin-access-identity-config \
CallerReference="cli-example",Comment="Example OAI"
You can accomplish the same thing by providing the OAI configuration in a JSON file, as shown in the following example:
aws cloudfront create-cloud-front-origin-access-identity \
--cloud-front-origin-access-identity-config file://OAI-config.json
The file OAI-config.json is a JSON document in the current directory that
contains the following:
{
"CallerReference": "cli-example",
"Comment": "Example OAI"
}
Whether you provide the OAI configuration with a command line argument or a JSON file, the output is the same:
{
"Location": "https://cloudfront.amazonaws.com/2019-03-26/origin-access-identity/cloudfront/E74FTE3AEXAMPLE",
"ETag": "E2QWRUHEXAMPLE",
"CloudFrontOriginAccessIdentity": {
"Id": "E74FTE3AEXAMPLE",
"S3CanonicalUserId": "cd13868f797c227fbea2830611a26fe0a21ba1b826ab4bed9b7771c9aEXAMPLE",
"CloudFrontOriginAccessIdentityConfig": {
"CallerReference": "cli-example",
"Comment": "Example OAI"
}
}
}
CloudFrontOriginAccessIdentity -> (structure)
The origin access identity’s information.
Id -> (string)
The ID for the origin access identity, for example,
E74FTE3AJFJ256A.S3CanonicalUserId -> (string)
The Amazon S3 canonical user ID for the origin access identity, used when giving the origin access identity read permission to an object in Amazon S3.
CloudFrontOriginAccessIdentityConfig -> (structure)
The current configuration information for the identity.
CallerReference -> (string)
A unique value (for example, a date-time stamp) that ensures that the request can’t be replayed.
If the value of
CallerReferenceis new (regardless of the content of theCloudFrontOriginAccessIdentityConfigobject), a new origin access identity is created.If the
CallerReferenceis a value already sent in a previous identity request, and the content of theCloudFrontOriginAccessIdentityConfigis identical to the original request (ignoring white space), the response includes the same information returned to the original request.If the
CallerReferenceis a value you already sent in a previous request to create an identity, but the content of theCloudFrontOriginAccessIdentityConfigis different from the original request, CloudFront returns aCloudFrontOriginAccessIdentityAlreadyExistserror.Comment -> (string)
Any comments you want to include about the origin access identity.
Location -> (string)
The fully qualified URI of the new origin access identity just created.
ETag -> (string)
The current version of the origin access identity created.