[][src]Trait rusoto_cloudfront::CloudFront

pub trait CloudFront {
    fn create_cloud_front_origin_access_identity(
        &self,
        input: CreateCloudFrontOriginAccessIdentityRequest
    ) -> RusotoFuture<CreateCloudFrontOriginAccessIdentityResult, CreateCloudFrontOriginAccessIdentityError>;
fn create_distribution(
        &self,
        input: CreateDistributionRequest
    ) -> RusotoFuture<CreateDistributionResult, CreateDistributionError>;
fn create_distribution_with_tags(
        &self,
        input: CreateDistributionWithTagsRequest
    ) -> RusotoFuture<CreateDistributionWithTagsResult, CreateDistributionWithTagsError>;
fn create_field_level_encryption_config(
        &self,
        input: CreateFieldLevelEncryptionConfigRequest
    ) -> RusotoFuture<CreateFieldLevelEncryptionConfigResult, CreateFieldLevelEncryptionConfigError>;
fn create_field_level_encryption_profile(
        &self,
        input: CreateFieldLevelEncryptionProfileRequest
    ) -> RusotoFuture<CreateFieldLevelEncryptionProfileResult, CreateFieldLevelEncryptionProfileError>;
fn create_invalidation(
        &self,
        input: CreateInvalidationRequest
    ) -> RusotoFuture<CreateInvalidationResult, CreateInvalidationError>;
fn create_public_key(
        &self,
        input: CreatePublicKeyRequest
    ) -> RusotoFuture<CreatePublicKeyResult, CreatePublicKeyError>;
fn create_streaming_distribution(
        &self,
        input: CreateStreamingDistributionRequest
    ) -> RusotoFuture<CreateStreamingDistributionResult, CreateStreamingDistributionError>;
fn create_streaming_distribution_with_tags(
        &self,
        input: CreateStreamingDistributionWithTagsRequest
    ) -> RusotoFuture<CreateStreamingDistributionWithTagsResult, CreateStreamingDistributionWithTagsError>;
fn delete_cloud_front_origin_access_identity(
        &self,
        input: DeleteCloudFrontOriginAccessIdentityRequest
    ) -> RusotoFuture<(), DeleteCloudFrontOriginAccessIdentityError>;
fn delete_distribution(
        &self,
        input: DeleteDistributionRequest
    ) -> RusotoFuture<(), DeleteDistributionError>;
fn delete_field_level_encryption_config(
        &self,
        input: DeleteFieldLevelEncryptionConfigRequest
    ) -> RusotoFuture<(), DeleteFieldLevelEncryptionConfigError>;
fn delete_field_level_encryption_profile(
        &self,
        input: DeleteFieldLevelEncryptionProfileRequest
    ) -> RusotoFuture<(), DeleteFieldLevelEncryptionProfileError>;
fn delete_public_key(
        &self,
        input: DeletePublicKeyRequest
    ) -> RusotoFuture<(), DeletePublicKeyError>;
fn delete_streaming_distribution(
        &self,
        input: DeleteStreamingDistributionRequest
    ) -> RusotoFuture<(), DeleteStreamingDistributionError>;
fn get_cloud_front_origin_access_identity(
        &self,
        input: GetCloudFrontOriginAccessIdentityRequest
    ) -> RusotoFuture<GetCloudFrontOriginAccessIdentityResult, GetCloudFrontOriginAccessIdentityError>;
fn get_cloud_front_origin_access_identity_config(
        &self,
        input: GetCloudFrontOriginAccessIdentityConfigRequest
    ) -> RusotoFuture<GetCloudFrontOriginAccessIdentityConfigResult, GetCloudFrontOriginAccessIdentityConfigError>;
fn get_distribution(
        &self,
        input: GetDistributionRequest
    ) -> RusotoFuture<GetDistributionResult, GetDistributionError>;
fn get_distribution_config(
        &self,
        input: GetDistributionConfigRequest
    ) -> RusotoFuture<GetDistributionConfigResult, GetDistributionConfigError>;
fn get_field_level_encryption(
        &self,
        input: GetFieldLevelEncryptionRequest
    ) -> RusotoFuture<GetFieldLevelEncryptionResult, GetFieldLevelEncryptionError>;
fn get_field_level_encryption_config(
        &self,
        input: GetFieldLevelEncryptionConfigRequest
    ) -> RusotoFuture<GetFieldLevelEncryptionConfigResult, GetFieldLevelEncryptionConfigError>;
fn get_field_level_encryption_profile(
        &self,
        input: GetFieldLevelEncryptionProfileRequest
    ) -> RusotoFuture<GetFieldLevelEncryptionProfileResult, GetFieldLevelEncryptionProfileError>;
fn get_field_level_encryption_profile_config(
        &self,
        input: GetFieldLevelEncryptionProfileConfigRequest
    ) -> RusotoFuture<GetFieldLevelEncryptionProfileConfigResult, GetFieldLevelEncryptionProfileConfigError>;
fn get_invalidation(
        &self,
        input: GetInvalidationRequest
    ) -> RusotoFuture<GetInvalidationResult, GetInvalidationError>;
fn get_public_key(
        &self,
        input: GetPublicKeyRequest
    ) -> RusotoFuture<GetPublicKeyResult, GetPublicKeyError>;
fn get_public_key_config(
        &self,
        input: GetPublicKeyConfigRequest
    ) -> RusotoFuture<GetPublicKeyConfigResult, GetPublicKeyConfigError>;
fn get_streaming_distribution(
        &self,
        input: GetStreamingDistributionRequest
    ) -> RusotoFuture<GetStreamingDistributionResult, GetStreamingDistributionError>;
fn get_streaming_distribution_config(
        &self,
        input: GetStreamingDistributionConfigRequest
    ) -> RusotoFuture<GetStreamingDistributionConfigResult, GetStreamingDistributionConfigError>;
fn list_cloud_front_origin_access_identities(
        &self,
        input: ListCloudFrontOriginAccessIdentitiesRequest
    ) -> RusotoFuture<ListCloudFrontOriginAccessIdentitiesResult, ListCloudFrontOriginAccessIdentitiesError>;
fn list_distributions(
        &self,
        input: ListDistributionsRequest
    ) -> RusotoFuture<ListDistributionsResult, ListDistributionsError>;
fn list_distributions_by_web_acl_id(
        &self,
        input: ListDistributionsByWebACLIdRequest
    ) -> RusotoFuture<ListDistributionsByWebACLIdResult, ListDistributionsByWebACLIdError>;
fn list_field_level_encryption_configs(
        &self,
        input: ListFieldLevelEncryptionConfigsRequest
    ) -> RusotoFuture<ListFieldLevelEncryptionConfigsResult, ListFieldLevelEncryptionConfigsError>;
fn list_field_level_encryption_profiles(
        &self,
        input: ListFieldLevelEncryptionProfilesRequest
    ) -> RusotoFuture<ListFieldLevelEncryptionProfilesResult, ListFieldLevelEncryptionProfilesError>;
fn list_invalidations(
        &self,
        input: ListInvalidationsRequest
    ) -> RusotoFuture<ListInvalidationsResult, ListInvalidationsError>;
fn list_public_keys(
        &self,
        input: ListPublicKeysRequest
    ) -> RusotoFuture<ListPublicKeysResult, ListPublicKeysError>;
fn list_streaming_distributions(
        &self,
        input: ListStreamingDistributionsRequest
    ) -> RusotoFuture<ListStreamingDistributionsResult, ListStreamingDistributionsError>;
fn list_tags_for_resource(
        &self,
        input: ListTagsForResourceRequest
    ) -> RusotoFuture<ListTagsForResourceResult, ListTagsForResourceError>;
fn tag_resource(
        &self,
        input: TagResourceRequest
    ) -> RusotoFuture<(), TagResourceError>;
fn untag_resource(
        &self,
        input: UntagResourceRequest
    ) -> RusotoFuture<(), UntagResourceError>;
fn update_cloud_front_origin_access_identity(
        &self,
        input: UpdateCloudFrontOriginAccessIdentityRequest
    ) -> RusotoFuture<UpdateCloudFrontOriginAccessIdentityResult, UpdateCloudFrontOriginAccessIdentityError>;
fn update_distribution(
        &self,
        input: UpdateDistributionRequest
    ) -> RusotoFuture<UpdateDistributionResult, UpdateDistributionError>;
fn update_field_level_encryption_config(
        &self,
        input: UpdateFieldLevelEncryptionConfigRequest
    ) -> RusotoFuture<UpdateFieldLevelEncryptionConfigResult, UpdateFieldLevelEncryptionConfigError>;
fn update_field_level_encryption_profile(
        &self,
        input: UpdateFieldLevelEncryptionProfileRequest
    ) -> RusotoFuture<UpdateFieldLevelEncryptionProfileResult, UpdateFieldLevelEncryptionProfileError>;
fn update_public_key(
        &self,
        input: UpdatePublicKeyRequest
    ) -> RusotoFuture<UpdatePublicKeyResult, UpdatePublicKeyError>;
fn update_streaming_distribution(
        &self,
        input: UpdateStreamingDistributionRequest
    ) -> RusotoFuture<UpdateStreamingDistributionResult, UpdateStreamingDistributionError>; }

Trait representing the capabilities of the CloudFront API. CloudFront clients implement this trait.

Required methods

fn create_cloud_front_origin_access_identity(
    &self,
    input: CreateCloudFrontOriginAccessIdentityRequest
) -> RusotoFuture<CreateCloudFrontOriginAccessIdentityResult, CreateCloudFrontOriginAccessIdentityError>

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.

fn create_distribution(
    &self,
    input: CreateDistributionRequest
) -> RusotoFuture<CreateDistributionResult, CreateDistributionError>

Creates a new web distribution. You create a CloudFront distribution to tell CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery. Send a POST request to the /CloudFront API version/distribution/distribution ID resource.

When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using UpdateDistribution, follow the steps included in the documentation to get the current configuration and then make your updates. This helps to make sure that you include all of the required fields. To view a summary, see Required Fields for Create Distribution and Update Distribution in the Amazon CloudFront Developer Guide.

If you are using Adobe Flash Media Server's RTMP protocol, you set up a different kind of CloudFront distribution. For more information, see CreateStreamingDistribution.

fn create_distribution_with_tags(
    &self,
    input: CreateDistributionWithTagsRequest
) -> RusotoFuture<CreateDistributionWithTagsResult, CreateDistributionWithTagsError>

Create a new distribution with tags.

fn create_field_level_encryption_config(
    &self,
    input: CreateFieldLevelEncryptionConfigRequest
) -> RusotoFuture<CreateFieldLevelEncryptionConfigResult, CreateFieldLevelEncryptionConfigError>

Create a new field-level encryption configuration.

fn create_field_level_encryption_profile(
    &self,
    input: CreateFieldLevelEncryptionProfileRequest
) -> RusotoFuture<CreateFieldLevelEncryptionProfileResult, CreateFieldLevelEncryptionProfileError>

Create a field-level encryption profile.

fn create_invalidation(
    &self,
    input: CreateInvalidationRequest
) -> RusotoFuture<CreateInvalidationResult, CreateInvalidationError>

Create a new invalidation.

fn create_public_key(
    &self,
    input: CreatePublicKeyRequest
) -> RusotoFuture<CreatePublicKeyResult, CreatePublicKeyError>

Add a new public key to CloudFront to use, for example, for field-level encryption. You can add a maximum of 10 public keys with one AWS account.

fn create_streaming_distribution(
    &self,
    input: CreateStreamingDistributionRequest
) -> RusotoFuture<CreateStreamingDistributionResult, CreateStreamingDistributionError>

Creates a new RMTP distribution. An RTMP distribution is similar to a web distribution, but an RTMP distribution streams media files using the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files using HTTP.

To create a new web distribution, submit a POST request to the CloudFront API version/distribution resource. The request body must include a document with a StreamingDistributionConfig element. The response echoes the StreamingDistributionConfig element and returns other information about the RTMP distribution.

To get the status of your request, use the GET StreamingDistribution API action. When the value of Enabled is true and the value of Status is Deployed, your distribution is ready. A distribution usually deploys in less than 15 minutes.

For more information about web distributions, see Working with RTMP Distributions in the Amazon CloudFront Developer Guide.

Beginning with the 2012-05-05 version of the CloudFront API, we made substantial changes to the format of the XML document that you include in the request body when you create or update a web distribution or an RTMP distribution, and when you invalidate objects. With previous versions of the API, we discovered that it was too easy to accidentally delete one or more values for an element that accepts multiple values, for example, CNAMEs and trusted signers. Our changes for the 2012-05-05 release are intended to prevent these accidental deletions and to notify you when there's a mismatch between the number of values you say you're specifying in the Quantity element and the number of values specified.

fn create_streaming_distribution_with_tags(
    &self,
    input: CreateStreamingDistributionWithTagsRequest
) -> RusotoFuture<CreateStreamingDistributionWithTagsResult, CreateStreamingDistributionWithTagsError>

Create a new streaming distribution with tags.

fn delete_cloud_front_origin_access_identity(
    &self,
    input: DeleteCloudFrontOriginAccessIdentityRequest
) -> RusotoFuture<(), DeleteCloudFrontOriginAccessIdentityError>

Delete an origin access identity.

fn delete_distribution(
    &self,
    input: DeleteDistributionRequest
) -> RusotoFuture<(), DeleteDistributionError>

Delete a distribution.

fn delete_field_level_encryption_config(
    &self,
    input: DeleteFieldLevelEncryptionConfigRequest
) -> RusotoFuture<(), DeleteFieldLevelEncryptionConfigError>

Remove a field-level encryption configuration.

fn delete_field_level_encryption_profile(
    &self,
    input: DeleteFieldLevelEncryptionProfileRequest
) -> RusotoFuture<(), DeleteFieldLevelEncryptionProfileError>

Remove a field-level encryption profile.

fn delete_public_key(
    &self,
    input: DeletePublicKeyRequest
) -> RusotoFuture<(), DeletePublicKeyError>

Remove a public key you previously added to CloudFront.

fn delete_streaming_distribution(
    &self,
    input: DeleteStreamingDistributionRequest
) -> RusotoFuture<(), DeleteStreamingDistributionError>

Delete a streaming distribution. To delete an RTMP distribution using the CloudFront API, perform the following steps.

To delete an RTMP distribution using the CloudFront API:

  1. Disable the RTMP distribution.

  2. Submit a GET Streaming Distribution Config request to get the current configuration and the Etag header for the distribution.

  3. Update the XML document that was returned in the response to your GET Streaming Distribution Config request to change the value of Enabled to false.

  4. Submit a PUT Streaming Distribution Config request to update the configuration for your distribution. In the request body, include the XML document that you updated in Step 3. Then set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

  5. Review the response to the PUT Streaming Distribution Config request to confirm that the distribution was successfully disabled.

  6. Submit a GET Streaming Distribution Config request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

  7. Submit a DELETE Streaming Distribution request. Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

  8. Review the response to your DELETE Streaming Distribution request to confirm that the distribution was successfully deleted.

For information about deleting a distribution using the CloudFront console, see Deleting a Distribution in the Amazon CloudFront Developer Guide.

fn get_cloud_front_origin_access_identity(
    &self,
    input: GetCloudFrontOriginAccessIdentityRequest
) -> RusotoFuture<GetCloudFrontOriginAccessIdentityResult, GetCloudFrontOriginAccessIdentityError>

Get the information about an origin access identity.

fn get_cloud_front_origin_access_identity_config(
    &self,
    input: GetCloudFrontOriginAccessIdentityConfigRequest
) -> RusotoFuture<GetCloudFrontOriginAccessIdentityConfigResult, GetCloudFrontOriginAccessIdentityConfigError>

Get the configuration information about an origin access identity.

fn get_distribution(
    &self,
    input: GetDistributionRequest
) -> RusotoFuture<GetDistributionResult, GetDistributionError>

Get the information about a distribution.

fn get_distribution_config(
    &self,
    input: GetDistributionConfigRequest
) -> RusotoFuture<GetDistributionConfigResult, GetDistributionConfigError>

Get the configuration information about a distribution.

fn get_field_level_encryption(
    &self,
    input: GetFieldLevelEncryptionRequest
) -> RusotoFuture<GetFieldLevelEncryptionResult, GetFieldLevelEncryptionError>

Get the field-level encryption configuration information.

fn get_field_level_encryption_config(
    &self,
    input: GetFieldLevelEncryptionConfigRequest
) -> RusotoFuture<GetFieldLevelEncryptionConfigResult, GetFieldLevelEncryptionConfigError>

Get the field-level encryption configuration information.

fn get_field_level_encryption_profile(
    &self,
    input: GetFieldLevelEncryptionProfileRequest
) -> RusotoFuture<GetFieldLevelEncryptionProfileResult, GetFieldLevelEncryptionProfileError>

Get the field-level encryption profile information.

fn get_field_level_encryption_profile_config(
    &self,
    input: GetFieldLevelEncryptionProfileConfigRequest
) -> RusotoFuture<GetFieldLevelEncryptionProfileConfigResult, GetFieldLevelEncryptionProfileConfigError>

Get the field-level encryption profile configuration information.

fn get_invalidation(
    &self,
    input: GetInvalidationRequest
) -> RusotoFuture<GetInvalidationResult, GetInvalidationError>

Get the information about an invalidation.

fn get_public_key(
    &self,
    input: GetPublicKeyRequest
) -> RusotoFuture<GetPublicKeyResult, GetPublicKeyError>

Get the public key information.

fn get_public_key_config(
    &self,
    input: GetPublicKeyConfigRequest
) -> RusotoFuture<GetPublicKeyConfigResult, GetPublicKeyConfigError>

Return public key configuration informaation

fn get_streaming_distribution(
    &self,
    input: GetStreamingDistributionRequest
) -> RusotoFuture<GetStreamingDistributionResult, GetStreamingDistributionError>

Gets information about a specified RTMP distribution, including the distribution configuration.

fn get_streaming_distribution_config(
    &self,
    input: GetStreamingDistributionConfigRequest
) -> RusotoFuture<GetStreamingDistributionConfigResult, GetStreamingDistributionConfigError>

Get the configuration information about a streaming distribution.

fn list_cloud_front_origin_access_identities(
    &self,
    input: ListCloudFrontOriginAccessIdentitiesRequest
) -> RusotoFuture<ListCloudFrontOriginAccessIdentitiesResult, ListCloudFrontOriginAccessIdentitiesError>

Lists origin access identities.

fn list_distributions(
    &self,
    input: ListDistributionsRequest
) -> RusotoFuture<ListDistributionsResult, ListDistributionsError>

List distributions.

fn list_distributions_by_web_acl_id(
    &self,
    input: ListDistributionsByWebACLIdRequest
) -> RusotoFuture<ListDistributionsByWebACLIdResult, ListDistributionsByWebACLIdError>

List the distributions that are associated with a specified AWS WAF web ACL.

fn list_field_level_encryption_configs(
    &self,
    input: ListFieldLevelEncryptionConfigsRequest
) -> RusotoFuture<ListFieldLevelEncryptionConfigsResult, ListFieldLevelEncryptionConfigsError>

List all field-level encryption configurations that have been created in CloudFront for this account.

fn list_field_level_encryption_profiles(
    &self,
    input: ListFieldLevelEncryptionProfilesRequest
) -> RusotoFuture<ListFieldLevelEncryptionProfilesResult, ListFieldLevelEncryptionProfilesError>

Request a list of field-level encryption profiles that have been created in CloudFront for this account.

fn list_invalidations(
    &self,
    input: ListInvalidationsRequest
) -> RusotoFuture<ListInvalidationsResult, ListInvalidationsError>

Lists invalidation batches.

fn list_public_keys(
    &self,
    input: ListPublicKeysRequest
) -> RusotoFuture<ListPublicKeysResult, ListPublicKeysError>

List all public keys that have been added to CloudFront for this account.

fn list_streaming_distributions(
    &self,
    input: ListStreamingDistributionsRequest
) -> RusotoFuture<ListStreamingDistributionsResult, ListStreamingDistributionsError>

List streaming distributions.

fn list_tags_for_resource(
    &self,
    input: ListTagsForResourceRequest
) -> RusotoFuture<ListTagsForResourceResult, ListTagsForResourceError>

List tags for a CloudFront resource.

fn tag_resource(
    &self,
    input: TagResourceRequest
) -> RusotoFuture<(), TagResourceError>

Add tags to a CloudFront resource.

fn untag_resource(
    &self,
    input: UntagResourceRequest
) -> RusotoFuture<(), UntagResourceError>

Remove tags from a CloudFront resource.

fn update_cloud_front_origin_access_identity(
    &self,
    input: UpdateCloudFrontOriginAccessIdentityRequest
) -> RusotoFuture<UpdateCloudFrontOriginAccessIdentityResult, UpdateCloudFrontOriginAccessIdentityError>

Update an origin access identity.

fn update_distribution(
    &self,
    input: UpdateDistributionRequest
) -> RusotoFuture<UpdateDistributionResult, UpdateDistributionError>

Updates the configuration for a web distribution.

When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using this API action, follow the steps here to get the current configuration and then make your updates, to make sure that you include all of the required fields. To view a summary, see Required Fields for Create Distribution and Update Distribution in the Amazon CloudFront Developer Guide.

The update process includes getting the current distribution configuration, updating the XML document that is returned to make your changes, and then submitting an UpdateDistribution request to make the updates.

For information about updating a distribution using the CloudFront console instead, see Creating a Distribution in the Amazon CloudFront Developer Guide.

To update a web distribution using the CloudFront API

  1. Submit a GetDistributionConfig request to get the current configuration and an Etag header for the distribution.

    If you update the distribution again, you must get a new Etag header.

  2. Update the XML document that was returned in the response to your GetDistributionConfig request to include your changes.

    When you edit the XML file, be aware of the following:

    • You must strip out the ETag parameter that is returned.

    • Additional fields are required when you update a distribution. There may be fields included in the XML file for features that you haven't configured for your distribution. This is expected and required to successfully update the distribution.

    • You can't change the value of CallerReference. If you try to change this value, CloudFront returns an IllegalUpdate error.

    • The new configuration replaces the existing configuration; the values that you specify in an UpdateDistribution request are not merged into your existing configuration. When you add, delete, or replace values in an element that allows multiple values (for example, CNAME), you must specify all of the values that you want to appear in the updated distribution. In addition, you must update the corresponding Quantity element.

  3. Submit an UpdateDistribution request to update the configuration for your distribution:

    • In the request body, include the XML document that you updated in Step 2. The request body must include an XML document with a DistributionConfig element.

    • Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GetDistributionConfig request in Step 1.

  4. Review the response to the UpdateDistribution request to confirm that the configuration was successfully updated.

  5. Optional: Submit a GetDistribution request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

fn update_field_level_encryption_config(
    &self,
    input: UpdateFieldLevelEncryptionConfigRequest
) -> RusotoFuture<UpdateFieldLevelEncryptionConfigResult, UpdateFieldLevelEncryptionConfigError>

Update a field-level encryption configuration.

fn update_field_level_encryption_profile(
    &self,
    input: UpdateFieldLevelEncryptionProfileRequest
) -> RusotoFuture<UpdateFieldLevelEncryptionProfileResult, UpdateFieldLevelEncryptionProfileError>

Update a field-level encryption profile.

fn update_public_key(
    &self,
    input: UpdatePublicKeyRequest
) -> RusotoFuture<UpdatePublicKeyResult, UpdatePublicKeyError>

Update public key information. Note that the only value you can change is the comment.

fn update_streaming_distribution(
    &self,
    input: UpdateStreamingDistributionRequest
) -> RusotoFuture<UpdateStreamingDistributionResult, UpdateStreamingDistributionError>

Update a streaming distribution.

Loading content...

Implementors

impl CloudFront for CloudFrontClient[src]

fn create_cloud_front_origin_access_identity(
    &self,
    input: CreateCloudFrontOriginAccessIdentityRequest
) -> RusotoFuture<CreateCloudFrontOriginAccessIdentityResult, CreateCloudFrontOriginAccessIdentityError>
[src]

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.

fn create_distribution(
    &self,
    input: CreateDistributionRequest
) -> RusotoFuture<CreateDistributionResult, CreateDistributionError>
[src]

Creates a new web distribution. You create a CloudFront distribution to tell CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery. Send a POST request to the /CloudFront API version/distribution/distribution ID resource.

When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using UpdateDistribution, follow the steps included in the documentation to get the current configuration and then make your updates. This helps to make sure that you include all of the required fields. To view a summary, see Required Fields for Create Distribution and Update Distribution in the Amazon CloudFront Developer Guide.

If you are using Adobe Flash Media Server's RTMP protocol, you set up a different kind of CloudFront distribution. For more information, see CreateStreamingDistribution.

fn create_distribution_with_tags(
    &self,
    input: CreateDistributionWithTagsRequest
) -> RusotoFuture<CreateDistributionWithTagsResult, CreateDistributionWithTagsError>
[src]

Create a new distribution with tags.

fn create_field_level_encryption_config(
    &self,
    input: CreateFieldLevelEncryptionConfigRequest
) -> RusotoFuture<CreateFieldLevelEncryptionConfigResult, CreateFieldLevelEncryptionConfigError>
[src]

Create a new field-level encryption configuration.

fn create_field_level_encryption_profile(
    &self,
    input: CreateFieldLevelEncryptionProfileRequest
) -> RusotoFuture<CreateFieldLevelEncryptionProfileResult, CreateFieldLevelEncryptionProfileError>
[src]

Create a field-level encryption profile.

fn create_invalidation(
    &self,
    input: CreateInvalidationRequest
) -> RusotoFuture<CreateInvalidationResult, CreateInvalidationError>
[src]

Create a new invalidation.

fn create_public_key(
    &self,
    input: CreatePublicKeyRequest
) -> RusotoFuture<CreatePublicKeyResult, CreatePublicKeyError>
[src]

Add a new public key to CloudFront to use, for example, for field-level encryption. You can add a maximum of 10 public keys with one AWS account.

fn create_streaming_distribution(
    &self,
    input: CreateStreamingDistributionRequest
) -> RusotoFuture<CreateStreamingDistributionResult, CreateStreamingDistributionError>
[src]

Creates a new RMTP distribution. An RTMP distribution is similar to a web distribution, but an RTMP distribution streams media files using the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files using HTTP.

To create a new web distribution, submit a POST request to the CloudFront API version/distribution resource. The request body must include a document with a StreamingDistributionConfig element. The response echoes the StreamingDistributionConfig element and returns other information about the RTMP distribution.

To get the status of your request, use the GET StreamingDistribution API action. When the value of Enabled is true and the value of Status is Deployed, your distribution is ready. A distribution usually deploys in less than 15 minutes.

For more information about web distributions, see Working with RTMP Distributions in the Amazon CloudFront Developer Guide.

Beginning with the 2012-05-05 version of the CloudFront API, we made substantial changes to the format of the XML document that you include in the request body when you create or update a web distribution or an RTMP distribution, and when you invalidate objects. With previous versions of the API, we discovered that it was too easy to accidentally delete one or more values for an element that accepts multiple values, for example, CNAMEs and trusted signers. Our changes for the 2012-05-05 release are intended to prevent these accidental deletions and to notify you when there's a mismatch between the number of values you say you're specifying in the Quantity element and the number of values specified.

fn create_streaming_distribution_with_tags(
    &self,
    input: CreateStreamingDistributionWithTagsRequest
) -> RusotoFuture<CreateStreamingDistributionWithTagsResult, CreateStreamingDistributionWithTagsError>
[src]

Create a new streaming distribution with tags.

fn delete_cloud_front_origin_access_identity(
    &self,
    input: DeleteCloudFrontOriginAccessIdentityRequest
) -> RusotoFuture<(), DeleteCloudFrontOriginAccessIdentityError>
[src]

Delete an origin access identity.

fn delete_distribution(
    &self,
    input: DeleteDistributionRequest
) -> RusotoFuture<(), DeleteDistributionError>
[src]

Delete a distribution.

fn delete_field_level_encryption_config(
    &self,
    input: DeleteFieldLevelEncryptionConfigRequest
) -> RusotoFuture<(), DeleteFieldLevelEncryptionConfigError>
[src]

Remove a field-level encryption configuration.

fn delete_field_level_encryption_profile(
    &self,
    input: DeleteFieldLevelEncryptionProfileRequest
) -> RusotoFuture<(), DeleteFieldLevelEncryptionProfileError>
[src]

Remove a field-level encryption profile.

fn delete_public_key(
    &self,
    input: DeletePublicKeyRequest
) -> RusotoFuture<(), DeletePublicKeyError>
[src]

Remove a public key you previously added to CloudFront.

fn delete_streaming_distribution(
    &self,
    input: DeleteStreamingDistributionRequest
) -> RusotoFuture<(), DeleteStreamingDistributionError>
[src]

Delete a streaming distribution. To delete an RTMP distribution using the CloudFront API, perform the following steps.

To delete an RTMP distribution using the CloudFront API:

  1. Disable the RTMP distribution.

  2. Submit a GET Streaming Distribution Config request to get the current configuration and the Etag header for the distribution.

  3. Update the XML document that was returned in the response to your GET Streaming Distribution Config request to change the value of Enabled to false.

  4. Submit a PUT Streaming Distribution Config request to update the configuration for your distribution. In the request body, include the XML document that you updated in Step 3. Then set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

  5. Review the response to the PUT Streaming Distribution Config request to confirm that the distribution was successfully disabled.

  6. Submit a GET Streaming Distribution Config request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

  7. Submit a DELETE Streaming Distribution request. Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GET Streaming Distribution Config request in Step 2.

  8. Review the response to your DELETE Streaming Distribution request to confirm that the distribution was successfully deleted.

For information about deleting a distribution using the CloudFront console, see Deleting a Distribution in the Amazon CloudFront Developer Guide.

fn get_cloud_front_origin_access_identity(
    &self,
    input: GetCloudFrontOriginAccessIdentityRequest
) -> RusotoFuture<GetCloudFrontOriginAccessIdentityResult, GetCloudFrontOriginAccessIdentityError>
[src]

Get the information about an origin access identity.

fn get_cloud_front_origin_access_identity_config(
    &self,
    input: GetCloudFrontOriginAccessIdentityConfigRequest
) -> RusotoFuture<GetCloudFrontOriginAccessIdentityConfigResult, GetCloudFrontOriginAccessIdentityConfigError>
[src]

Get the configuration information about an origin access identity.

fn get_distribution(
    &self,
    input: GetDistributionRequest
) -> RusotoFuture<GetDistributionResult, GetDistributionError>
[src]

Get the information about a distribution.

fn get_distribution_config(
    &self,
    input: GetDistributionConfigRequest
) -> RusotoFuture<GetDistributionConfigResult, GetDistributionConfigError>
[src]

Get the configuration information about a distribution.

fn get_field_level_encryption(
    &self,
    input: GetFieldLevelEncryptionRequest
) -> RusotoFuture<GetFieldLevelEncryptionResult, GetFieldLevelEncryptionError>
[src]

Get the field-level encryption configuration information.

fn get_field_level_encryption_config(
    &self,
    input: GetFieldLevelEncryptionConfigRequest
) -> RusotoFuture<GetFieldLevelEncryptionConfigResult, GetFieldLevelEncryptionConfigError>
[src]

Get the field-level encryption configuration information.

fn get_field_level_encryption_profile(
    &self,
    input: GetFieldLevelEncryptionProfileRequest
) -> RusotoFuture<GetFieldLevelEncryptionProfileResult, GetFieldLevelEncryptionProfileError>
[src]

Get the field-level encryption profile information.

fn get_field_level_encryption_profile_config(
    &self,
    input: GetFieldLevelEncryptionProfileConfigRequest
) -> RusotoFuture<GetFieldLevelEncryptionProfileConfigResult, GetFieldLevelEncryptionProfileConfigError>
[src]

Get the field-level encryption profile configuration information.

fn get_invalidation(
    &self,
    input: GetInvalidationRequest
) -> RusotoFuture<GetInvalidationResult, GetInvalidationError>
[src]

Get the information about an invalidation.

fn get_public_key(
    &self,
    input: GetPublicKeyRequest
) -> RusotoFuture<GetPublicKeyResult, GetPublicKeyError>
[src]

Get the public key information.

fn get_public_key_config(
    &self,
    input: GetPublicKeyConfigRequest
) -> RusotoFuture<GetPublicKeyConfigResult, GetPublicKeyConfigError>
[src]

Return public key configuration informaation

fn get_streaming_distribution(
    &self,
    input: GetStreamingDistributionRequest
) -> RusotoFuture<GetStreamingDistributionResult, GetStreamingDistributionError>
[src]

Gets information about a specified RTMP distribution, including the distribution configuration.

fn get_streaming_distribution_config(
    &self,
    input: GetStreamingDistributionConfigRequest
) -> RusotoFuture<GetStreamingDistributionConfigResult, GetStreamingDistributionConfigError>
[src]

Get the configuration information about a streaming distribution.

fn list_cloud_front_origin_access_identities(
    &self,
    input: ListCloudFrontOriginAccessIdentitiesRequest
) -> RusotoFuture<ListCloudFrontOriginAccessIdentitiesResult, ListCloudFrontOriginAccessIdentitiesError>
[src]

Lists origin access identities.

fn list_distributions(
    &self,
    input: ListDistributionsRequest
) -> RusotoFuture<ListDistributionsResult, ListDistributionsError>
[src]

List distributions.

fn list_distributions_by_web_acl_id(
    &self,
    input: ListDistributionsByWebACLIdRequest
) -> RusotoFuture<ListDistributionsByWebACLIdResult, ListDistributionsByWebACLIdError>
[src]

List the distributions that are associated with a specified AWS WAF web ACL.

fn list_field_level_encryption_configs(
    &self,
    input: ListFieldLevelEncryptionConfigsRequest
) -> RusotoFuture<ListFieldLevelEncryptionConfigsResult, ListFieldLevelEncryptionConfigsError>
[src]

List all field-level encryption configurations that have been created in CloudFront for this account.

fn list_field_level_encryption_profiles(
    &self,
    input: ListFieldLevelEncryptionProfilesRequest
) -> RusotoFuture<ListFieldLevelEncryptionProfilesResult, ListFieldLevelEncryptionProfilesError>
[src]

Request a list of field-level encryption profiles that have been created in CloudFront for this account.

fn list_invalidations(
    &self,
    input: ListInvalidationsRequest
) -> RusotoFuture<ListInvalidationsResult, ListInvalidationsError>
[src]

Lists invalidation batches.

fn list_public_keys(
    &self,
    input: ListPublicKeysRequest
) -> RusotoFuture<ListPublicKeysResult, ListPublicKeysError>
[src]

List all public keys that have been added to CloudFront for this account.

fn list_streaming_distributions(
    &self,
    input: ListStreamingDistributionsRequest
) -> RusotoFuture<ListStreamingDistributionsResult, ListStreamingDistributionsError>
[src]

List streaming distributions.

fn list_tags_for_resource(
    &self,
    input: ListTagsForResourceRequest
) -> RusotoFuture<ListTagsForResourceResult, ListTagsForResourceError>
[src]

List tags for a CloudFront resource.

fn tag_resource(
    &self,
    input: TagResourceRequest
) -> RusotoFuture<(), TagResourceError>
[src]

Add tags to a CloudFront resource.

fn untag_resource(
    &self,
    input: UntagResourceRequest
) -> RusotoFuture<(), UntagResourceError>
[src]

Remove tags from a CloudFront resource.

fn update_cloud_front_origin_access_identity(
    &self,
    input: UpdateCloudFrontOriginAccessIdentityRequest
) -> RusotoFuture<UpdateCloudFrontOriginAccessIdentityResult, UpdateCloudFrontOriginAccessIdentityError>
[src]

Update an origin access identity.

fn update_distribution(
    &self,
    input: UpdateDistributionRequest
) -> RusotoFuture<UpdateDistributionResult, UpdateDistributionError>
[src]

Updates the configuration for a web distribution.

When you update a distribution, there are more required fields than when you create a distribution. When you update your distribution by using this API action, follow the steps here to get the current configuration and then make your updates, to make sure that you include all of the required fields. To view a summary, see Required Fields for Create Distribution and Update Distribution in the Amazon CloudFront Developer Guide.

The update process includes getting the current distribution configuration, updating the XML document that is returned to make your changes, and then submitting an UpdateDistribution request to make the updates.

For information about updating a distribution using the CloudFront console instead, see Creating a Distribution in the Amazon CloudFront Developer Guide.

To update a web distribution using the CloudFront API

  1. Submit a GetDistributionConfig request to get the current configuration and an Etag header for the distribution.

    If you update the distribution again, you must get a new Etag header.

  2. Update the XML document that was returned in the response to your GetDistributionConfig request to include your changes.

    When you edit the XML file, be aware of the following:

    • You must strip out the ETag parameter that is returned.

    • Additional fields are required when you update a distribution. There may be fields included in the XML file for features that you haven't configured for your distribution. This is expected and required to successfully update the distribution.

    • You can't change the value of CallerReference. If you try to change this value, CloudFront returns an IllegalUpdate error.

    • The new configuration replaces the existing configuration; the values that you specify in an UpdateDistribution request are not merged into your existing configuration. When you add, delete, or replace values in an element that allows multiple values (for example, CNAME), you must specify all of the values that you want to appear in the updated distribution. In addition, you must update the corresponding Quantity element.

  3. Submit an UpdateDistribution request to update the configuration for your distribution:

    • In the request body, include the XML document that you updated in Step 2. The request body must include an XML document with a DistributionConfig element.

    • Set the value of the HTTP If-Match header to the value of the ETag header that CloudFront returned when you submitted the GetDistributionConfig request in Step 1.

  4. Review the response to the UpdateDistribution request to confirm that the configuration was successfully updated.

  5. Optional: Submit a GetDistribution request to confirm that your changes have propagated. When propagation is complete, the value of Status is Deployed.

fn update_field_level_encryption_config(
    &self,
    input: UpdateFieldLevelEncryptionConfigRequest
) -> RusotoFuture<UpdateFieldLevelEncryptionConfigResult, UpdateFieldLevelEncryptionConfigError>
[src]

Update a field-level encryption configuration.

fn update_field_level_encryption_profile(
    &self,
    input: UpdateFieldLevelEncryptionProfileRequest
) -> RusotoFuture<UpdateFieldLevelEncryptionProfileResult, UpdateFieldLevelEncryptionProfileError>
[src]

Update a field-level encryption profile.

fn update_public_key(
    &self,
    input: UpdatePublicKeyRequest
) -> RusotoFuture<UpdatePublicKeyResult, UpdatePublicKeyError>
[src]

Update public key information. Note that the only value you can change is the comment.

fn update_streaming_distribution(
    &self,
    input: UpdateStreamingDistributionRequest
) -> RusotoFuture<UpdateStreamingDistributionResult, UpdateStreamingDistributionError>
[src]

Update a streaming distribution.

Loading content...