Class: Aws::CloudFront::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::CloudFront::Client
- Includes:
- Aws::ClientStubs
- Defined in:
- gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb
Overview
An API client for CloudFront. To construct a client, you need to configure a :region
and :credentials
.
client = Aws::CloudFront::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the developer guide.
See #initialize for a full list of supported configuration options.
Instance Attribute Summary
Attributes inherited from Seahorse::Client::Base
API Operations collapse
-
#associate_alias(params = {}) ⇒ Struct
Associates an alias (also known as a CNAME or an alternate domain name) with a CloudFront distribution.
-
#copy_distribution(params = {}) ⇒ Types::CopyDistributionResult
Creates a staging distribution using the configuration of the provided primary distribution.
-
#create_anycast_ip_list(params = {}) ⇒ Types::CreateAnycastIpListResult
Creates an Anycast static IP list.
-
#create_cache_policy(params = {}) ⇒ Types::CreateCachePolicyResult
Creates a cache policy.
-
#create_cloud_front_origin_access_identity(params = {}) ⇒ Types::CreateCloudFrontOriginAccessIdentityResult
Creates a new origin access identity.
-
#create_continuous_deployment_policy(params = {}) ⇒ Types::CreateContinuousDeploymentPolicyResult
Creates a continuous deployment policy that distributes traffic for a custom domain name to two different CloudFront distributions.
-
#create_distribution(params = {}) ⇒ Types::CreateDistributionResult
Creates a CloudFront distribution.
-
#create_distribution_with_tags(params = {}) ⇒ Types::CreateDistributionWithTagsResult
Create a new distribution with tags.
-
#create_field_level_encryption_config(params = {}) ⇒ Types::CreateFieldLevelEncryptionConfigResult
Create a new field-level encryption configuration.
-
#create_field_level_encryption_profile(params = {}) ⇒ Types::CreateFieldLevelEncryptionProfileResult
Create a field-level encryption profile.
-
#create_function(params = {}) ⇒ Types::CreateFunctionResult
Creates a CloudFront function.
-
#create_invalidation(params = {}) ⇒ Types::CreateInvalidationResult
Create a new invalidation.
-
#create_key_group(params = {}) ⇒ Types::CreateKeyGroupResult
Creates a key group that you can use with [CloudFront signed URLs and signed cookies][1].
-
#create_key_value_store(params = {}) ⇒ Types::CreateKeyValueStoreResult
Specifies the key value store resource to add to your account.
-
#create_monitoring_subscription(params = {}) ⇒ Types::CreateMonitoringSubscriptionResult
Enables additional CloudWatch metrics for the specified CloudFront distribution.
-
#create_origin_access_control(params = {}) ⇒ Types::CreateOriginAccessControlResult
Creates a new origin access control in CloudFront.
-
#create_origin_request_policy(params = {}) ⇒ Types::CreateOriginRequestPolicyResult
Creates an origin request policy.
-
#create_public_key(params = {}) ⇒ Types::CreatePublicKeyResult
Uploads a public key to CloudFront that you can use with [signed URLs and signed cookies][1], or with [field-level encryption][2].
-
#create_realtime_log_config(params = {}) ⇒ Types::CreateRealtimeLogConfigResult
Creates a real-time log configuration.
-
#create_response_headers_policy(params = {}) ⇒ Types::CreateResponseHeadersPolicyResult
Creates a response headers policy.
-
#create_streaming_distribution(params = {}) ⇒ Types::CreateStreamingDistributionResult
This API is deprecated.
-
#create_streaming_distribution_with_tags(params = {}) ⇒ Types::CreateStreamingDistributionWithTagsResult
This API is deprecated.
-
#create_vpc_origin(params = {}) ⇒ Types::CreateVpcOriginResult
Create an Amazon CloudFront VPC origin.
-
#delete_anycast_ip_list(params = {}) ⇒ Struct
Deletes an Anycast static IP list.
-
#delete_cache_policy(params = {}) ⇒ Struct
Deletes a cache policy.
-
#delete_cloud_front_origin_access_identity(params = {}) ⇒ Struct
Delete an origin access identity.
-
#delete_continuous_deployment_policy(params = {}) ⇒ Struct
Deletes a continuous deployment policy.
-
#delete_distribution(params = {}) ⇒ Struct
Delete a distribution.
-
#delete_field_level_encryption_config(params = {}) ⇒ Struct
Remove a field-level encryption configuration.
-
#delete_field_level_encryption_profile(params = {}) ⇒ Struct
Remove a field-level encryption profile.
-
#delete_function(params = {}) ⇒ Struct
Deletes a CloudFront function.
-
#delete_key_group(params = {}) ⇒ Struct
Deletes a key group.
-
#delete_key_value_store(params = {}) ⇒ Struct
Specifies the key value store to delete.
-
#delete_monitoring_subscription(params = {}) ⇒ Struct
Disables additional CloudWatch metrics for the specified CloudFront distribution.
-
#delete_origin_access_control(params = {}) ⇒ Struct
Deletes a CloudFront origin access control.
-
#delete_origin_request_policy(params = {}) ⇒ Struct
Deletes an origin request policy.
-
#delete_public_key(params = {}) ⇒ Struct
Remove a public key you previously added to CloudFront.
-
#delete_realtime_log_config(params = {}) ⇒ Struct
Deletes a real-time log configuration.
-
#delete_response_headers_policy(params = {}) ⇒ Struct
Deletes a response headers policy.
-
#delete_streaming_distribution(params = {}) ⇒ Struct
Delete a streaming distribution.
-
#delete_vpc_origin(params = {}) ⇒ Types::DeleteVpcOriginResult
Delete an Amazon CloudFront VPC origin.
-
#describe_function(params = {}) ⇒ Types::DescribeFunctionResult
Gets configuration information and metadata about a CloudFront function, but not the function's code.
-
#describe_key_value_store(params = {}) ⇒ Types::DescribeKeyValueStoreResult
Specifies the key value store and its configuration.
-
#get_anycast_ip_list(params = {}) ⇒ Types::GetAnycastIpListResult
Gets an Anycast static IP list.
-
#get_cache_policy(params = {}) ⇒ Types::GetCachePolicyResult
Gets a cache policy, including the following metadata:.
-
#get_cache_policy_config(params = {}) ⇒ Types::GetCachePolicyConfigResult
Gets a cache policy configuration.
-
#get_cloud_front_origin_access_identity(params = {}) ⇒ Types::GetCloudFrontOriginAccessIdentityResult
Get the information about an origin access identity.
-
#get_cloud_front_origin_access_identity_config(params = {}) ⇒ Types::GetCloudFrontOriginAccessIdentityConfigResult
Get the configuration information about an origin access identity.
-
#get_continuous_deployment_policy(params = {}) ⇒ Types::GetContinuousDeploymentPolicyResult
Gets a continuous deployment policy, including metadata (the policy's identifier and the date and time when the policy was last modified).
-
#get_continuous_deployment_policy_config(params = {}) ⇒ Types::GetContinuousDeploymentPolicyConfigResult
Gets configuration information about a continuous deployment policy.
-
#get_distribution(params = {}) ⇒ Types::GetDistributionResult
Get the information about a distribution.
-
#get_distribution_config(params = {}) ⇒ Types::GetDistributionConfigResult
Get the configuration information about a distribution.
-
#get_field_level_encryption(params = {}) ⇒ Types::GetFieldLevelEncryptionResult
Get the field-level encryption configuration information.
-
#get_field_level_encryption_config(params = {}) ⇒ Types::GetFieldLevelEncryptionConfigResult
Get the field-level encryption configuration information.
-
#get_field_level_encryption_profile(params = {}) ⇒ Types::GetFieldLevelEncryptionProfileResult
Get the field-level encryption profile information.
-
#get_field_level_encryption_profile_config(params = {}) ⇒ Types::GetFieldLevelEncryptionProfileConfigResult
Get the field-level encryption profile configuration information.
-
#get_function(params = {}) ⇒ Types::GetFunctionResult
Gets the code of a CloudFront function.
-
#get_invalidation(params = {}) ⇒ Types::GetInvalidationResult
Get the information about an invalidation.
-
#get_key_group(params = {}) ⇒ Types::GetKeyGroupResult
Gets a key group, including the date and time when the key group was last modified.
-
#get_key_group_config(params = {}) ⇒ Types::GetKeyGroupConfigResult
Gets a key group configuration.
-
#get_monitoring_subscription(params = {}) ⇒ Types::GetMonitoringSubscriptionResult
Gets information about whether additional CloudWatch metrics are enabled for the specified CloudFront distribution.
-
#get_origin_access_control(params = {}) ⇒ Types::GetOriginAccessControlResult
Gets a CloudFront origin access control, including its unique identifier.
-
#get_origin_access_control_config(params = {}) ⇒ Types::GetOriginAccessControlConfigResult
Gets a CloudFront origin access control configuration.
-
#get_origin_request_policy(params = {}) ⇒ Types::GetOriginRequestPolicyResult
Gets an origin request policy, including the following metadata:.
-
#get_origin_request_policy_config(params = {}) ⇒ Types::GetOriginRequestPolicyConfigResult
Gets an origin request policy configuration.
-
#get_public_key(params = {}) ⇒ Types::GetPublicKeyResult
Gets a public key.
-
#get_public_key_config(params = {}) ⇒ Types::GetPublicKeyConfigResult
Gets a public key configuration.
-
#get_realtime_log_config(params = {}) ⇒ Types::GetRealtimeLogConfigResult
Gets a real-time log configuration.
-
#get_response_headers_policy(params = {}) ⇒ Types::GetResponseHeadersPolicyResult
Gets a response headers policy, including metadata (the policy's identifier and the date and time when the policy was last modified).
-
#get_response_headers_policy_config(params = {}) ⇒ Types::GetResponseHeadersPolicyConfigResult
Gets a response headers policy configuration.
-
#get_streaming_distribution(params = {}) ⇒ Types::GetStreamingDistributionResult
Gets information about a specified RTMP distribution, including the distribution configuration.
-
#get_streaming_distribution_config(params = {}) ⇒ Types::GetStreamingDistributionConfigResult
Get the configuration information about a streaming distribution.
-
#get_vpc_origin(params = {}) ⇒ Types::GetVpcOriginResult
Get the details of an Amazon CloudFront VPC origin.
-
#list_anycast_ip_lists(params = {}) ⇒ Types::ListAnycastIpListsResult
Lists your Anycast static IP lists.
-
#list_cache_policies(params = {}) ⇒ Types::ListCachePoliciesResult
Gets a list of cache policies.
-
#list_cloud_front_origin_access_identities(params = {}) ⇒ Types::ListCloudFrontOriginAccessIdentitiesResult
Lists origin access identities.
-
#list_conflicting_aliases(params = {}) ⇒ Types::ListConflictingAliasesResult
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.
-
#list_continuous_deployment_policies(params = {}) ⇒ Types::ListContinuousDeploymentPoliciesResult
Gets a list of the continuous deployment policies in your Amazon Web Services account.
-
#list_distributions(params = {}) ⇒ Types::ListDistributionsResult
List CloudFront distributions.
-
#list_distributions_by_anycast_ip_list_id(params = {}) ⇒ Types::ListDistributionsByAnycastIpListIdResult
Lists the distributions in your account that are associated with the specified
AnycastIpListId
. -
#list_distributions_by_cache_policy_id(params = {}) ⇒ Types::ListDistributionsByCachePolicyIdResult
Gets a list of distribution IDs for distributions that have a cache behavior that's associated with the specified cache policy.
-
#list_distributions_by_key_group(params = {}) ⇒ Types::ListDistributionsByKeyGroupResult
Gets a list of distribution IDs for distributions that have a cache behavior that references the specified key group.
-
#list_distributions_by_origin_request_policy_id(params = {}) ⇒ Types::ListDistributionsByOriginRequestPolicyIdResult
Gets a list of distribution IDs for distributions that have a cache behavior that's associated with the specified origin request policy.
-
#list_distributions_by_realtime_log_config(params = {}) ⇒ Types::ListDistributionsByRealtimeLogConfigResult
Gets a list of distributions that have a cache behavior that's associated with the specified real-time log configuration.
-
#list_distributions_by_response_headers_policy_id(params = {}) ⇒ Types::ListDistributionsByResponseHeadersPolicyIdResult
Gets a list of distribution IDs for distributions that have a cache behavior that's associated with the specified response headers policy.
-
#list_distributions_by_vpc_origin_id(params = {}) ⇒ Types::ListDistributionsByVpcOriginIdResult
List CloudFront distributions by their VPC origin ID.
-
#list_distributions_by_web_acl_id(params = {}) ⇒ Types::ListDistributionsByWebACLIdResult
List the distributions that are associated with a specified WAF web ACL.
-
#list_field_level_encryption_configs(params = {}) ⇒ Types::ListFieldLevelEncryptionConfigsResult
List all field-level encryption configurations that have been created in CloudFront for this account.
-
#list_field_level_encryption_profiles(params = {}) ⇒ Types::ListFieldLevelEncryptionProfilesResult
Request a list of field-level encryption profiles that have been created in CloudFront for this account.
-
#list_functions(params = {}) ⇒ Types::ListFunctionsResult
Gets a list of all CloudFront functions in your Amazon Web Services account.
-
#list_invalidations(params = {}) ⇒ Types::ListInvalidationsResult
Lists invalidation batches.
-
#list_key_groups(params = {}) ⇒ Types::ListKeyGroupsResult
Gets a list of key groups.
-
#list_key_value_stores(params = {}) ⇒ Types::ListKeyValueStoresResult
Specifies the key value stores to list.
-
#list_origin_access_controls(params = {}) ⇒ Types::ListOriginAccessControlsResult
Gets the list of CloudFront origin access controls (OACs) in this Amazon Web Services account.
-
#list_origin_request_policies(params = {}) ⇒ Types::ListOriginRequestPoliciesResult
Gets a list of origin request policies.
-
#list_public_keys(params = {}) ⇒ Types::ListPublicKeysResult
List all public keys that have been added to CloudFront for this account.
-
#list_realtime_log_configs(params = {}) ⇒ Types::ListRealtimeLogConfigsResult
Gets a list of real-time log configurations.
-
#list_response_headers_policies(params = {}) ⇒ Types::ListResponseHeadersPoliciesResult
Gets a list of response headers policies.
-
#list_streaming_distributions(params = {}) ⇒ Types::ListStreamingDistributionsResult
List streaming distributions.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResult
List tags for a CloudFront resource.
-
#list_vpc_origins(params = {}) ⇒ Types::ListVpcOriginsResult
List the CloudFront VPC origins in your account.
-
#publish_function(params = {}) ⇒ Types::PublishFunctionResult
Publishes a CloudFront function by copying the function code from the
DEVELOPMENT
stage toLIVE
. -
#tag_resource(params = {}) ⇒ Struct
Add tags to a CloudFront resource.
-
#test_function(params = {}) ⇒ Types::TestFunctionResult
Tests a CloudFront function.
-
#untag_resource(params = {}) ⇒ Struct
Remove tags from a CloudFront resource.
-
#update_cache_policy(params = {}) ⇒ Types::UpdateCachePolicyResult
Updates a cache policy configuration.
-
#update_cloud_front_origin_access_identity(params = {}) ⇒ Types::UpdateCloudFrontOriginAccessIdentityResult
Update an origin access identity.
-
#update_continuous_deployment_policy(params = {}) ⇒ Types::UpdateContinuousDeploymentPolicyResult
Updates a continuous deployment policy.
-
#update_distribution(params = {}) ⇒ Types::UpdateDistributionResult
Updates the configuration for a CloudFront distribution.
-
#update_distribution_with_staging_config(params = {}) ⇒ Types::UpdateDistributionWithStagingConfigResult
Copies the staging distribution's configuration to its corresponding primary distribution.
-
#update_field_level_encryption_config(params = {}) ⇒ Types::UpdateFieldLevelEncryptionConfigResult
Update a field-level encryption configuration.
-
#update_field_level_encryption_profile(params = {}) ⇒ Types::UpdateFieldLevelEncryptionProfileResult
Update a field-level encryption profile.
-
#update_function(params = {}) ⇒ Types::UpdateFunctionResult
Updates a CloudFront function.
-
#update_key_group(params = {}) ⇒ Types::UpdateKeyGroupResult
Updates a key group.
-
#update_key_value_store(params = {}) ⇒ Types::UpdateKeyValueStoreResult
Specifies the key value store to update.
-
#update_origin_access_control(params = {}) ⇒ Types::UpdateOriginAccessControlResult
Updates a CloudFront origin access control.
-
#update_origin_request_policy(params = {}) ⇒ Types::UpdateOriginRequestPolicyResult
Updates an origin request policy configuration.
-
#update_public_key(params = {}) ⇒ Types::UpdatePublicKeyResult
Update public key information.
-
#update_realtime_log_config(params = {}) ⇒ Types::UpdateRealtimeLogConfigResult
Updates a real-time log configuration.
-
#update_response_headers_policy(params = {}) ⇒ Types::UpdateResponseHeadersPolicyResult
Updates a response headers policy.
-
#update_streaming_distribution(params = {}) ⇒ Types::UpdateStreamingDistributionResult
Update a streaming distribution.
-
#update_vpc_origin(params = {}) ⇒ Types::UpdateVpcOriginResult
Update an Amazon CloudFront VPC origin in your account.
Instance Method Summary collapse
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
-
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
Methods included from Aws::ClientStubs
#api_requests, #stub_data, #stub_responses
Methods inherited from Seahorse::Client::Base
add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins
Methods included from Seahorse::Client::HandlerBuilder
#handle, #handle_request, #handle_response
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
444 445 446 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 444 def initialize(*args) super end |
Instance Method Details
#associate_alias(params = {}) ⇒ Struct
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.
489 490 491 492 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 489 def associate_alias(params = {}, = {}) req = build_request(:associate_alias, params) req.send_request() end |
#copy_distribution(params = {}) ⇒ Types::CopyDistributionResult
Creates a staging distribution using the configuration of the provided primary distribution. A staging distribution is a copy of an existing distribution (called the primary distribution) that you can use in a continuous deployment workflow.
After you create a staging distribution, you can use
UpdateDistribution
to modify the staging distribution's
configuration. Then you can use CreateContinuousDeploymentPolicy
to
incrementally move traffic to the staging distribution.
This API operation requires the following IAM permissions:
759 760 761 762 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 759 def copy_distribution(params = {}, = {}) req = build_request(:copy_distribution, params) req.send_request() end |
#create_anycast_ip_list(params = {}) ⇒ Types::CreateAnycastIpListResult
Creates an Anycast static IP list.
812 813 814 815 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 812 def create_anycast_ip_list(params = {}, = {}) req = build_request(:create_anycast_ip_list, params) req.send_request() end |
#create_cache_policy(params = {}) ⇒ Types::CreateCachePolicyResult
Creates a cache policy.
After you create a cache policy, you can attach it to one or more cache behaviors. When it's attached to a cache behavior, the cache policy determines the following:
The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.
The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.
The headers, cookies, and query strings that are included in the cache
key are also included in requests that CloudFront sends to the origin.
CloudFront sends a request when it can't find an object in its cache
that matches the request's cache key. If you want to send values to
the origin but not include them in the cache key, use
OriginRequestPolicy
.
For more information about cache policies, see Controlling the cache key in the Amazon CloudFront Developer Guide.
921 922 923 924 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 921 def create_cache_policy(params = {}, = {}) req = build_request(:create_cache_policy, params) req.send_request() end |
#create_cloud_front_origin_access_identity(params = {}) ⇒ Types::CreateCloudFrontOriginAccessIdentityResult
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.
968 969 970 971 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 968 def create_cloud_front_origin_access_identity(params = {}, = {}) req = build_request(:create_cloud_front_origin_access_identity, params) req.send_request() end |
#create_continuous_deployment_policy(params = {}) ⇒ Types::CreateContinuousDeploymentPolicyResult
Creates a continuous deployment policy that distributes traffic for a custom domain name to two different CloudFront distributions.
To use a continuous deployment policy, first use CopyDistribution
to
create a staging distribution, then use UpdateDistribution
to modify
the staging distribution's configuration.
After you create and update a staging distribution, you can use a continuous deployment policy to incrementally move traffic to the staging distribution. This workflow enables you to test changes to a distribution's configuration before moving all of your domain's production traffic to the new configuration.
1042 1043 1044 1045 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 1042 def create_continuous_deployment_policy(params = {}, = {}) req = build_request(:create_continuous_deployment_policy, params) req.send_request() end |
#create_distribution(params = {}) ⇒ Types::CreateDistributionResult
Creates a CloudFront distribution.
1527 1528 1529 1530 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 1527 def create_distribution(params = {}, = {}) req = build_request(:create_distribution, params) req.send_request() end |
#create_distribution_with_tags(params = {}) ⇒ Types::CreateDistributionWithTagsResult
Create a new distribution with tags. This API operation requires the following IAM permissions:
2032 2033 2034 2035 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2032 def (params = {}, = {}) req = build_request(:create_distribution_with_tags, params) req.send_request() end |
#create_field_level_encryption_config(params = {}) ⇒ Types::CreateFieldLevelEncryptionConfigResult
Create a new field-level encryption configuration.
2106 2107 2108 2109 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2106 def create_field_level_encryption_config(params = {}, = {}) req = build_request(:create_field_level_encryption_config, params) req.send_request() end |
#create_field_level_encryption_profile(params = {}) ⇒ Types::CreateFieldLevelEncryptionProfileResult
Create a field-level encryption profile.
2166 2167 2168 2169 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2166 def create_field_level_encryption_profile(params = {}, = {}) req = build_request(:create_field_level_encryption_profile, params) req.send_request() end |
#create_function(params = {}) ⇒ Types::CreateFunctionResult
Creates a CloudFront function.
To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function.
When you create a function, it's in the DEVELOPMENT
stage. In this
stage, you can test the function with TestFunction
, and update it
with UpdateFunction
.
When you're ready to use your function with a CloudFront
distribution, use PublishFunction
to copy the function from the
DEVELOPMENT
stage to LIVE
. When it's live, you can attach the
function to a distribution's cache behavior, using the function's
ARN.
2298 2299 2300 2301 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2298 def create_function(params = {}, = {}) req = build_request(:create_function, params) req.send_request() end |
#create_invalidation(params = {}) ⇒ Types::CreateInvalidationResult
Create a new invalidation. For more information, see Invalidating files in the Amazon CloudFront Developer Guide.
2349 2350 2351 2352 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2349 def create_invalidation(params = {}, = {}) req = build_request(:create_invalidation, params) req.send_request() end |
#create_key_group(params = {}) ⇒ Types::CreateKeyGroupResult
Creates a key group that you can use with CloudFront signed URLs and signed cookies.
To create a key group, you must specify at least one public key for the key group. After you create a key group, you can reference it from one or more cache behaviors. When you reference a key group in a cache behavior, CloudFront requires signed URLs or signed cookies for all requests that match the cache behavior. The URLs or cookies must be signed with a private key whose corresponding public key is in the key group. The signed URL or cookie contains information about which public key CloudFront should use to verify the signature. For more information, see Serving private content in the Amazon CloudFront Developer Guide.
2406 2407 2408 2409 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2406 def create_key_group(params = {}, = {}) req = build_request(:create_key_group, params) req.send_request() end |
#create_key_value_store(params = {}) ⇒ Types::CreateKeyValueStoreResult
Specifies the key value store resource to add to your account. In your
account, the key value store names must be unique. You can also import
key value store data in JSON format from an S3 bucket by providing a
valid ImportSource
that you own.
2487 2488 2489 2490 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2487 def create_key_value_store(params = {}, = {}) req = build_request(:create_key_value_store, params) req.send_request() end |
#create_monitoring_subscription(params = {}) ⇒ Types::CreateMonitoringSubscriptionResult
Enables additional CloudWatch metrics for the specified CloudFront distribution. The additional metrics incur an additional cost.
For more information, see Viewing additional CloudFront distribution metrics in the Amazon CloudFront Developer Guide.
2533 2534 2535 2536 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2533 def create_monitoring_subscription(params = {}, = {}) req = build_request(:create_monitoring_subscription, params) req.send_request() end |
#create_origin_access_control(params = {}) ⇒ Types::CreateOriginAccessControlResult
Creates a new origin access control in CloudFront. After you create an origin access control, you can add it to an origin in a CloudFront distribution so that CloudFront sends authenticated (signed) requests to the origin.
This makes it possible to block public access to the origin, allowing viewers (users) to access the origin's content only through CloudFront.
For more information about using a CloudFront origin access control, see Restricting access to an Amazon Web Services origin in the Amazon CloudFront Developer Guide.
2591 2592 2593 2594 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2591 def create_origin_access_control(params = {}, = {}) req = build_request(:create_origin_access_control, params) req.send_request() end |
#create_origin_request_policy(params = {}) ⇒ Types::CreateOriginRequestPolicyResult
Creates an origin request policy.
After you create an origin request policy, you can attach it to one or more cache behaviors. When it's attached to a cache behavior, the origin request policy determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:
The request body and the URL path (without the domain name) from the viewer request.
The headers that CloudFront automatically includes in every origin request, including
Host
,User-Agent
, andX-Amz-Cf-Id
.All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.
CloudFront sends a request when it can't find a valid object in its
cache that matches the request. If you want to send values to the
origin and also include them in the cache key, use CachePolicy
.
For more information about origin request policies, see Controlling origin requests in the Amazon CloudFront Developer Guide.
2690 2691 2692 2693 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2690 def create_origin_request_policy(params = {}, = {}) req = build_request(:create_origin_request_policy, params) req.send_request() end |
#create_public_key(params = {}) ⇒ Types::CreatePublicKeyResult
Uploads a public key to CloudFront that you can use with signed URLs and signed cookies, or with field-level encryption.
2738 2739 2740 2741 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2738 def create_public_key(params = {}, = {}) req = build_request(:create_public_key, params) req.send_request() end |
#create_realtime_log_config(params = {}) ⇒ Types::CreateRealtimeLogConfigResult
Creates a real-time log configuration.
After you create a real-time log configuration, you can attach it to one or more cache behaviors to send real-time log data to the specified Amazon Kinesis data stream.
For more information about real-time log configurations, see Real-time logs in the Amazon CloudFront Developer Guide.
2816 2817 2818 2819 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2816 def create_realtime_log_config(params = {}, = {}) req = build_request(:create_realtime_log_config, params) req.send_request() end |
#create_response_headers_policy(params = {}) ⇒ Types::CreateResponseHeadersPolicyResult
Creates a response headers policy.
A response headers policy contains information about a set of HTTP headers. To create a response headers policy, you provide some metadata about the policy and a set of configurations that specify the headers.
After you create a response headers policy, you can use its ID to attach it to one or more cache behaviors in a CloudFront distribution. When it's attached to a cache behavior, the response headers policy affects the HTTP headers that CloudFront includes in HTTP responses to requests that match the cache behavior. CloudFront adds or removes response headers according to the configuration of the response headers policy.
For more information, see Adding or removing HTTP headers in CloudFront responses in the Amazon CloudFront Developer Guide.
2987 2988 2989 2990 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2987 def create_response_headers_policy(params = {}, = {}) req = build_request(:create_response_headers_policy, params) req.send_request() end |
#create_streaming_distribution(params = {}) ⇒ Types::CreateStreamingDistributionResult
This API is deprecated. Amazon CloudFront is deprecating real-time messaging protocol (RTMP) distributions on December 31, 2020. For more information, read the announcement on the Amazon CloudFront discussion forum.
3076 3077 3078 3079 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3076 def create_streaming_distribution(params = {}, = {}) req = build_request(:create_streaming_distribution, params) req.send_request() end |
#create_streaming_distribution_with_tags(params = {}) ⇒ Types::CreateStreamingDistributionWithTagsResult
This API is deprecated. Amazon CloudFront is deprecating real-time messaging protocol (RTMP) distributions on December 31, 2020. For more information, read the announcement on the Amazon CloudFront discussion forum.
3175 3176 3177 3178 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3175 def (params = {}, = {}) req = build_request(:create_streaming_distribution_with_tags, params) req.send_request() end |
#create_vpc_origin(params = {}) ⇒ Types::CreateVpcOriginResult
Create an Amazon CloudFront VPC origin.
3289 3290 3291 3292 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3289 def create_vpc_origin(params = {}, = {}) req = build_request(:create_vpc_origin, params) req.send_request() end |
#delete_anycast_ip_list(params = {}) ⇒ Struct
Deletes an Anycast static IP list.
3316 3317 3318 3319 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3316 def delete_anycast_ip_list(params = {}, = {}) req = build_request(:delete_anycast_ip_list, params) req.send_request() end |
#delete_cache_policy(params = {}) ⇒ Struct
Deletes a cache policy.
You cannot delete a cache policy if it's attached to a cache behavior. First update your distributions to remove the cache policy from all cache behaviors, then delete the cache policy.
To delete a cache policy, you must provide the policy's identifier
and version. To get these values, you can use ListCachePolicies
or
GetCachePolicy
.
3353 3354 3355 3356 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3353 def delete_cache_policy(params = {}, = {}) req = build_request(:delete_cache_policy, params) req.send_request() end |
#delete_cloud_front_origin_access_identity(params = {}) ⇒ Struct
Delete an origin access identity.
3380 3381 3382 3383 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3380 def delete_cloud_front_origin_access_identity(params = {}, = {}) req = build_request(:delete_cloud_front_origin_access_identity, params) req.send_request() end |
#delete_continuous_deployment_policy(params = {}) ⇒ Struct
Deletes a continuous deployment policy.
You cannot delete a continuous deployment policy that's attached to a primary distribution. First update your distribution to remove the continuous deployment policy, then you can delete the policy.
3412 3413 3414 3415 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3412 def delete_continuous_deployment_policy(params = {}, = {}) req = build_request(:delete_continuous_deployment_policy, params) req.send_request() end |
#delete_distribution(params = {}) ⇒ Struct
Delete a distribution.
3439 3440 3441 3442 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3439 def delete_distribution(params = {}, = {}) req = build_request(:delete_distribution, params) req.send_request() end |
#delete_field_level_encryption_config(params = {}) ⇒ Struct
Remove a field-level encryption configuration.
3466 3467 3468 3469 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3466 def delete_field_level_encryption_config(params = {}, = {}) req = build_request(:delete_field_level_encryption_config, params) req.send_request() end |
#delete_field_level_encryption_profile(params = {}) ⇒ Struct
Remove a field-level encryption profile.
3493 3494 3495 3496 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3493 def delete_field_level_encryption_profile(params = {}, = {}) req = build_request(:delete_field_level_encryption_profile, params) req.send_request() end |
#delete_function(params = {}) ⇒ Struct
Deletes a CloudFront function.
You cannot delete a function if it's associated with a cache behavior. First, update your distributions to remove the function association from all cache behaviors, then delete the function.
To delete a function, you must provide the function's name and
version (ETag
value). To get these values, you can use
ListFunctions
and DescribeFunction
.
3528 3529 3530 3531 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3528 def delete_function(params = {}, = {}) req = build_request(:delete_function, params) req.send_request() end |
#delete_key_group(params = {}) ⇒ Struct
Deletes a key group.
You cannot delete a key group that is referenced in a cache behavior. First update your distributions to remove the key group from all cache behaviors, then delete the key group.
To delete a key group, you must provide the key group's identifier
and version. To get these values, use ListKeyGroups
followed by
GetKeyGroup
or GetKeyGroupConfig
.
3565 3566 3567 3568 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3565 def delete_key_group(params = {}, = {}) req = build_request(:delete_key_group, params) req.send_request() end |
#delete_key_value_store(params = {}) ⇒ Struct
Specifies the key value store to delete.
3601 3602 3603 3604 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3601 def delete_key_value_store(params = {}, = {}) req = build_request(:delete_key_value_store, params) req.send_request() end |
#delete_monitoring_subscription(params = {}) ⇒ Struct
Disables additional CloudWatch metrics for the specified CloudFront distribution.
3624 3625 3626 3627 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3624 def delete_monitoring_subscription(params = {}, = {}) req = build_request(:delete_monitoring_subscription, params) req.send_request() end |
#delete_origin_access_control(params = {}) ⇒ Struct
Deletes a CloudFront origin access control.
You cannot delete an origin access control if it's in use. First, update all distributions to remove the origin access control from all origins, then delete the origin access control.
3656 3657 3658 3659 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3656 def delete_origin_access_control(params = {}, = {}) req = build_request(:delete_origin_access_control, params) req.send_request() end |
#delete_origin_request_policy(params = {}) ⇒ Struct
Deletes an origin request policy.
You cannot delete an origin request policy if it's attached to any cache behaviors. First update your distributions to remove the origin request policy from all cache behaviors, then delete the origin request policy.
To delete an origin request policy, you must provide the policy's
identifier and version. To get the identifier, you can use
ListOriginRequestPolicies
or GetOriginRequestPolicy
.
3696 3697 3698 3699 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3696 def delete_origin_request_policy(params = {}, = {}) req = build_request(:delete_origin_request_policy, params) req.send_request() end |
#delete_public_key(params = {}) ⇒ Struct
Remove a public key you previously added to CloudFront.
3723 3724 3725 3726 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3723 def delete_public_key(params = {}, = {}) req = build_request(:delete_public_key, params) req.send_request() end |
#delete_realtime_log_config(params = {}) ⇒ Struct
Deletes a real-time log configuration.
You cannot delete a real-time log configuration if it's attached to a cache behavior. First update your distributions to remove the real-time log configuration from all cache behaviors, then delete the real-time log configuration.
To delete a real-time log configuration, you can provide the configuration's name or its Amazon Resource Name (ARN). You must provide at least one. If you provide both, CloudFront uses the name to identify the real-time log configuration to delete.
3760 3761 3762 3763 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3760 def delete_realtime_log_config(params = {}, = {}) req = build_request(:delete_realtime_log_config, params) req.send_request() end |
#delete_response_headers_policy(params = {}) ⇒ Struct
Deletes a response headers policy.
You cannot delete a response headers policy if it's attached to a cache behavior. First update your distributions to remove the response headers policy from all cache behaviors, then delete the response headers policy.
To delete a response headers policy, you must provide the policy's
identifier and version. To get these values, you can use
ListResponseHeadersPolicies
or GetResponseHeadersPolicy
.
3801 3802 3803 3804 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3801 def delete_response_headers_policy(params = {}, = {}) req = build_request(:delete_response_headers_policy, params) req.send_request() end |
#delete_streaming_distribution(params = {}) ⇒ Struct
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:
Disable the RTMP distribution.
Submit a
GET Streaming Distribution Config
request to get the current configuration and theEtag
header for the distribution.Update the XML document that was returned in the response to your
GET Streaming Distribution Config
request to change the value ofEnabled
tofalse
.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 HTTPIf-Match
header to the value of theETag
header that CloudFront returned when you submitted theGET Streaming Distribution Config
request in Step 2.Review the response to the
PUT Streaming Distribution Config
request to confirm that the distribution was successfully disabled.Submit a
GET Streaming Distribution Config
request to confirm that your changes have propagated. When propagation is complete, the value ofStatus
isDeployed
.Submit a
DELETE Streaming Distribution
request. Set the value of the HTTPIf-Match
header to the value of theETag
header that CloudFront returned when you submitted theGET Streaming Distribution Config
request in Step 2.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.
3871 3872 3873 3874 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3871 def delete_streaming_distribution(params = {}, = {}) req = build_request(:delete_streaming_distribution, params) req.send_request() end |
#delete_vpc_origin(params = {}) ⇒ Types::DeleteVpcOriginResult
Delete an Amazon CloudFront VPC origin.
3953 3954 3955 3956 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3953 def delete_vpc_origin(params = {}, = {}) req = build_request(:delete_vpc_origin, params) req.send_request() end |
#describe_function(params = {}) ⇒ Types::DescribeFunctionResult
Gets configuration information and metadata about a CloudFront
function, but not the function's code. To get a function's code, use
GetFunction
.
To get configuration information and metadata about a function, you
must provide the function's name and stage. To get these values, you
can use ListFunctions
.
4003 4004 4005 4006 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 4003 def describe_function(params = {}, = {}) req = build_request(:describe_function, params) req.send_request() end |
#describe_key_value_store(params = {}) ⇒ Types::DescribeKeyValueStoreResult
Specifies the key value store and its configuration.
4060 4061 4062 4063 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 4060 def describe_key_value_store(params = {}, = {}) req = build_request(:describe_key_value_store, params) req.send_request() end |
#get_anycast_ip_list(params = {}) ⇒ Types::GetAnycastIpListResult
Gets an Anycast static IP list.
4097 4098 4099 4100 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 4097 def get_anycast_ip_list(params = {}, = {}) req = build_request(:get_anycast_ip_list, params) req.send_request() end |
#get_cache_policy(params = {}) ⇒ Types::GetCachePolicyResult
Gets a cache policy, including the following metadata:
The policy's identifier.
The date and time when the policy was last modified.
To get a cache policy, you must provide the policy's identifier. If
the cache policy is attached to a distribution's cache behavior, you
can get the policy's identifier using ListDistributions
or
GetDistribution
. If the cache policy is not attached to a cache
behavior, you can get the identifier using ListCachePolicies
.