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_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_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.
-
#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_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.
-
#describe_function(params = {}) ⇒ Types::DescribeFunctionResult
Gets configuration information and metadata about a CloudFront function, but not the function's code.
-
#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.
-
#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_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_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_origin_access_controls(params = {}) ⇒ Types::ListOriginAccessControlsResult
Gets the list of CloudFront origin access controls 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.
-
#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_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.
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.
365 366 367 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 365 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.
410 411 412 413 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 410 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.
652 653 654 655 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 652 def copy_distribution(params = {}, = {}) req = build_request(:copy_distribution, 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.
761 762 763 764 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 761 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.
808 809 810 811 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 808 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.
882 883 884 885 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 882 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.
1351 1352 1353 1354 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 1351 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.
1830 1831 1832 1833 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 1830 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.
1904 1905 1906 1907 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 1904 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.
1964 1965 1966 1967 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 1964 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.
2035 2036 2037 2038 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2035 def create_function(params = {}, = {}) req = build_request(:create_function, params) req.send_request() end |
#create_invalidation(params = {}) ⇒ Types::CreateInvalidationResult
Create a new invalidation.
2081 2082 2083 2084 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2081 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.
2138 2139 2140 2141 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2138 def create_key_group(params = {}, = {}) req = build_request(:create_key_group, 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.
2184 2185 2186 2187 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2184 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.
2242 2243 2244 2245 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2242 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.
2341 2342 2343 2344 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2341 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.
2389 2390 2391 2392 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2389 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.
2467 2468 2469 2470 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2467 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.
2638 2639 2640 2641 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2638 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.
2727 2728 2729 2730 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2727 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.
2826 2827 2828 2829 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2826 def (params = {}, = {}) req = build_request(:create_streaming_distribution_with_tags, 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
.
2863 2864 2865 2866 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2863 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.
2890 2891 2892 2893 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2890 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.
2922 2923 2924 2925 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2922 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.
2949 2950 2951 2952 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2949 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.
2976 2977 2978 2979 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 2976 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.
3003 3004 3005 3006 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3003 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
.
3038 3039 3040 3041 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3038 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
.
3075 3076 3077 3078 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3075 def delete_key_group(params = {}, = {}) req = build_request(:delete_key_group, params) req.send_request() end |
#delete_monitoring_subscription(params = {}) ⇒ Struct
Disables additional CloudWatch metrics for the specified CloudFront distribution.
3098 3099 3100 3101 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3098 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.
3130 3131 3132 3133 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3130 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
.
3170 3171 3172 3173 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3170 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.
3197 3198 3199 3200 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3197 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.
3234 3235 3236 3237 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3234 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
.
3275 3276 3277 3278 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3275 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.
3345 3346 3347 3348 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3345 def delete_streaming_distribution(params = {}, = {}) req = build_request(:delete_streaming_distribution, 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
.
3392 3393 3394 3395 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3392 def describe_function(params = {}, = {}) req = build_request(:describe_function, 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
.
3456 3457 3458 3459 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3456 def get_cache_policy(params = {}, = {}) req = build_request(:get_cache_policy, params) req.send_request() end |
#get_cache_policy_config(params = {}) ⇒ Types::GetCachePolicyConfigResult
Gets a cache policy configuration.
To get a cache policy configuration, 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
.
3515 3516 3517 3518 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3515 def get_cache_policy_config(params = {}, = {}) req = build_request(:get_cache_policy_config, params) req.send_request() end |
#get_cloud_front_origin_access_identity(params = {}) ⇒ Types::GetCloudFrontOriginAccessIdentityResult
Get the information about an origin access identity.
3548 3549 3550 3551 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3548 def get_cloud_front_origin_access_identity(params = {}, = {}) req = build_request(:get_cloud_front_origin_access_identity, params) req.send_request() end |
#get_cloud_front_origin_access_identity_config(params = {}) ⇒ Types::GetCloudFrontOriginAccessIdentityConfigResult
Get the configuration information about an origin access identity.
3579 3580 3581 3582 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3579 def get_cloud_front_origin_access_identity_config(params = {}, = {}) req = build_request(:get_cloud_front_origin_access_identity_config, params) req.send_request() end |
#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).
3622 3623 3624 3625 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3622 def get_continuous_deployment_policy(params = {}, = {}) req = build_request(:get_continuous_deployment_policy, params) req.send_request() end |
#get_continuous_deployment_policy_config(params = {}) ⇒ Types::GetContinuousDeploymentPolicyConfigResult
Gets configuration information about a continuous deployment policy.
3662 3663 3664 3665 |
# File 'gems/aws-sdk-cloudfront/lib/aws-sdk-cloudfront/client.rb', line 3662 def get_continuous_deployment_policy_config(params = {}, = {}) req = build_request(:get_continuous_deployment_policy_config, params) req.send_request() end |
#get_distribution(params = {}) ⇒ Types::GetDistributionResult
Get the information about a distribution.
The following waiters are defined for this operation (see #wait_until for detailed usage):
- distribution_deployed