diff options
author | Andrew Dolgov <[email protected]> | 2022-11-23 21:14:33 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2022-11-23 21:14:33 +0300 |
commit | 0c8af4992cb0f7589dcafaad65ada12753c64594 (patch) | |
tree | 18e83d068c3e7dd2499331de977782b382279396 /vendor/aws/aws-sdk-php/src/CloudFront |
initial
Diffstat (limited to 'vendor/aws/aws-sdk-php/src/CloudFront')
5 files changed, 628 insertions, 0 deletions
diff --git a/vendor/aws/aws-sdk-php/src/CloudFront/CloudFrontClient.php b/vendor/aws/aws-sdk-php/src/CloudFront/CloudFrontClient.php new file mode 100644 index 0000000..3a3f9ea --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/CloudFront/CloudFrontClient.php @@ -0,0 +1,310 @@ +<?php +namespace Aws\CloudFront; + +use Aws\AwsClient; + +/** + * This client is used to interact with the **Amazon CloudFront** service. + * + * @method \Aws\Result createCloudFrontOriginAccessIdentity(array $args = []) + * @method \GuzzleHttp\Promise\Promise createCloudFrontOriginAccessIdentityAsync(array $args = []) + * @method \Aws\Result createDistribution(array $args = []) + * @method \GuzzleHttp\Promise\Promise createDistributionAsync(array $args = []) + * @method \Aws\Result createInvalidation(array $args = []) + * @method \GuzzleHttp\Promise\Promise createInvalidationAsync(array $args = []) + * @method \Aws\Result createStreamingDistribution(array $args = []) + * @method \GuzzleHttp\Promise\Promise createStreamingDistributionAsync(array $args = []) + * @method \Aws\Result deleteCloudFrontOriginAccessIdentity(array $args = []) + * @method \GuzzleHttp\Promise\Promise deleteCloudFrontOriginAccessIdentityAsync(array $args = []) + * @method \Aws\Result deleteDistribution(array $args = []) + * @method \GuzzleHttp\Promise\Promise deleteDistributionAsync(array $args = []) + * @method \Aws\Result deleteStreamingDistribution(array $args = []) + * @method \GuzzleHttp\Promise\Promise deleteStreamingDistributionAsync(array $args = []) + * @method \Aws\Result getCloudFrontOriginAccessIdentity(array $args = []) + * @method \GuzzleHttp\Promise\Promise getCloudFrontOriginAccessIdentityAsync(array $args = []) + * @method \Aws\Result getCloudFrontOriginAccessIdentityConfig(array $args = []) + * @method \GuzzleHttp\Promise\Promise getCloudFrontOriginAccessIdentityConfigAsync(array $args = []) + * @method \Aws\Result getDistribution(array $args = []) + * @method \GuzzleHttp\Promise\Promise getDistributionAsync(array $args = []) + * @method \Aws\Result getDistributionConfig(array $args = []) + * @method \GuzzleHttp\Promise\Promise getDistributionConfigAsync(array $args = []) + * @method \Aws\Result getInvalidation(array $args = []) + * @method \GuzzleHttp\Promise\Promise getInvalidationAsync(array $args = []) + * @method \Aws\Result getStreamingDistribution(array $args = []) + * @method \GuzzleHttp\Promise\Promise getStreamingDistributionAsync(array $args = []) + * @method \Aws\Result getStreamingDistributionConfig(array $args = []) + * @method \GuzzleHttp\Promise\Promise getStreamingDistributionConfigAsync(array $args = []) + * @method \Aws\Result listCloudFrontOriginAccessIdentities(array $args = []) + * @method \GuzzleHttp\Promise\Promise listCloudFrontOriginAccessIdentitiesAsync(array $args = []) + * @method \Aws\Result listDistributions(array $args = []) + * @method \GuzzleHttp\Promise\Promise listDistributionsAsync(array $args = []) + * @method \Aws\Result listDistributionsByWebACLId(array $args = []) + * @method \GuzzleHttp\Promise\Promise listDistributionsByWebACLIdAsync(array $args = []) + * @method \Aws\Result listInvalidations(array $args = []) + * @method \GuzzleHttp\Promise\Promise listInvalidationsAsync(array $args = []) + * @method \Aws\Result listStreamingDistributions(array $args = []) + * @method \GuzzleHttp\Promise\Promise listStreamingDistributionsAsync(array $args = []) + * @method \Aws\Result updateCloudFrontOriginAccessIdentity(array $args = []) + * @method \GuzzleHttp\Promise\Promise updateCloudFrontOriginAccessIdentityAsync(array $args = []) + * @method \Aws\Result updateDistribution(array $args = []) + * @method \GuzzleHttp\Promise\Promise updateDistributionAsync(array $args = []) + * @method \Aws\Result updateStreamingDistribution(array $args = []) + * @method \GuzzleHttp\Promise\Promise updateStreamingDistributionAsync(array $args = []) + * @method \Aws\Result createDistributionWithTags(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createDistributionWithTagsAsync(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result createStreamingDistributionWithTags(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createStreamingDistributionWithTagsAsync(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result listTagsForResource(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result tagResource(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result untagResource(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = []) (supported in versions 2016-08-01, 2016-08-20, 2016-09-07, 2016-09-29, 2016-11-25, 2017-03-25, 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result deleteServiceLinkedRole(array $args = []) (supported in versions 2017-03-25) + * @method \GuzzleHttp\Promise\Promise deleteServiceLinkedRoleAsync(array $args = []) (supported in versions 2017-03-25) + * @method \Aws\Result createFieldLevelEncryptionConfig(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createFieldLevelEncryptionConfigAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result createFieldLevelEncryptionProfile(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createFieldLevelEncryptionProfileAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result createPublicKey(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createPublicKeyAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result deleteFieldLevelEncryptionConfig(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteFieldLevelEncryptionConfigAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result deleteFieldLevelEncryptionProfile(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteFieldLevelEncryptionProfileAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result deletePublicKey(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deletePublicKeyAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result getFieldLevelEncryption(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getFieldLevelEncryptionAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result getFieldLevelEncryptionConfig(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getFieldLevelEncryptionConfigAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result getFieldLevelEncryptionProfile(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getFieldLevelEncryptionProfileAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result getFieldLevelEncryptionProfileConfig(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getFieldLevelEncryptionProfileConfigAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result getPublicKey(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getPublicKeyAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result getPublicKeyConfig(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getPublicKeyConfigAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result listFieldLevelEncryptionConfigs(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listFieldLevelEncryptionConfigsAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result listFieldLevelEncryptionProfiles(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listFieldLevelEncryptionProfilesAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result listPublicKeys(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listPublicKeysAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result updateFieldLevelEncryptionConfig(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateFieldLevelEncryptionConfigAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result updateFieldLevelEncryptionProfile(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateFieldLevelEncryptionProfileAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result updatePublicKey(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updatePublicKeyAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31) + * @method \Aws\Result associateAlias(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise associateAliasAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result copyDistribution(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise copyDistributionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createCachePolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createCachePolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createContinuousDeploymentPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createContinuousDeploymentPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createFunction(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createFunctionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createKeyGroup(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createKeyGroupAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createMonitoringSubscription(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createMonitoringSubscriptionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createOriginAccessControl(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createOriginAccessControlAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createOriginRequestPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createOriginRequestPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createRealtimeLogConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createRealtimeLogConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result createResponseHeadersPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise createResponseHeadersPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteCachePolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteCachePolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteContinuousDeploymentPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteContinuousDeploymentPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteFunction(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteFunctionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteKeyGroup(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteKeyGroupAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteMonitoringSubscription(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteMonitoringSubscriptionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteOriginAccessControl(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteOriginAccessControlAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteOriginRequestPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteOriginRequestPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteRealtimeLogConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteRealtimeLogConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result deleteResponseHeadersPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise deleteResponseHeadersPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result describeFunction(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise describeFunctionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getCachePolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getCachePolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getCachePolicyConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getCachePolicyConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getContinuousDeploymentPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getContinuousDeploymentPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getContinuousDeploymentPolicyConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getContinuousDeploymentPolicyConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getFunction(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getFunctionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getKeyGroup(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getKeyGroupAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getKeyGroupConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getKeyGroupConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getMonitoringSubscription(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getMonitoringSubscriptionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getOriginAccessControl(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getOriginAccessControlAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getOriginAccessControlConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getOriginAccessControlConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getOriginRequestPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getOriginRequestPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getOriginRequestPolicyConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getOriginRequestPolicyConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getRealtimeLogConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getRealtimeLogConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getResponseHeadersPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getResponseHeadersPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result getResponseHeadersPolicyConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise getResponseHeadersPolicyConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listCachePolicies(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listCachePoliciesAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listConflictingAliases(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listConflictingAliasesAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listContinuousDeploymentPolicies(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listContinuousDeploymentPoliciesAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listDistributionsByCachePolicyId(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listDistributionsByCachePolicyIdAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listDistributionsByKeyGroup(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listDistributionsByKeyGroupAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listDistributionsByOriginRequestPolicyId(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listDistributionsByOriginRequestPolicyIdAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listDistributionsByRealtimeLogConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listDistributionsByRealtimeLogConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listDistributionsByResponseHeadersPolicyId(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listDistributionsByResponseHeadersPolicyIdAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listFunctions(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listFunctionsAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listKeyGroups(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listKeyGroupsAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listOriginAccessControls(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listOriginAccessControlsAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listOriginRequestPolicies(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listOriginRequestPoliciesAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listRealtimeLogConfigs(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listRealtimeLogConfigsAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result listResponseHeadersPolicies(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise listResponseHeadersPoliciesAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result publishFunction(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise publishFunctionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result testFunction(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise testFunctionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result updateCachePolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateCachePolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result updateContinuousDeploymentPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateContinuousDeploymentPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result updateFunction(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateFunctionAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result updateKeyGroup(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateKeyGroupAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result updateOriginAccessControl(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateOriginAccessControlAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result updateOriginRequestPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateOriginRequestPolicyAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result updateRealtimeLogConfig(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateRealtimeLogConfigAsync(array $args = []) (supported in versions 2020-05-31) + * @method \Aws\Result updateResponseHeadersPolicy(array $args = []) (supported in versions 2020-05-31) + * @method \GuzzleHttp\Promise\Promise updateResponseHeadersPolicyAsync(array $args = []) (supported in versions 2020-05-31) + */ +class CloudFrontClient extends AwsClient +{ + /** + * Create a signed Amazon CloudFront URL. + * + * This method accepts an array of configuration options: + * + * - url: (string) URL of the resource being signed (can include query + * string and wildcards). For example: rtmp://s5c39gqb8ow64r.cloudfront.net/videos/mp3_name.mp3 + * http://d111111abcdef8.cloudfront.net/images/horizon.jpg?size=large&license=yes + * - policy: (string) JSON policy. Use this option when creating a signed + * URL for a custom policy. + * - expires: (int) UTC Unix timestamp used when signing with a canned + * policy. Not required when passing a custom 'policy' option. + * - key_pair_id: (string) The ID of the key pair used to sign CloudFront + * URLs for private distributions. + * - private_key: (string) The filepath ot the private key used to sign + * CloudFront URLs for private distributions. + * + * @param array $options Array of configuration options used when signing + * + * @return string Signed URL with authentication parameters + * @throws \InvalidArgumentException if url, key_pair_id, or private_key + * were not specified. + * @link http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/WorkingWithStreamingDistributions.html + */ + public function getSignedUrl(array $options) + { + foreach (['url', 'key_pair_id', 'private_key'] as $required) { + if (!isset($options[$required])) { + throw new \InvalidArgumentException("$required is required"); + } + } + + $urlSigner = new UrlSigner( + $options['key_pair_id'], + $options['private_key'] + ); + + return $urlSigner->getSignedUrl( + $options['url'], + isset($options['expires']) ? $options['expires'] : null, + isset($options['policy']) ? $options['policy'] : null + ); + } + + /** + * Create a signed Amazon CloudFront cookie. + * + * This method accepts an array of configuration options: + * + * - url: (string) URL of the resource being signed (can include query + * string and wildcards). For example: http://d111111abcdef8.cloudfront.net/images/horizon.jpg?size=large&license=yes + * - policy: (string) JSON policy. Use this option when creating a signed + * URL for a custom policy. + * - expires: (int) UTC Unix timestamp used when signing with a canned + * policy. Not required when passing a custom 'policy' option. + * - key_pair_id: (string) The ID of the key pair used to sign CloudFront + * URLs for private distributions. + * - private_key: (string) The filepath ot the private key used to sign + * CloudFront URLs for private distributions. + * + * @param array $options Array of configuration options used when signing + * + * @return array Key => value pairs of signed cookies to set + * @throws \InvalidArgumentException if url, key_pair_id, or private_key + * were not specified. + * @link http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/WorkingWithStreamingDistributions.html + */ + public function getSignedCookie(array $options) + { + foreach (['key_pair_id', 'private_key'] as $required) { + if (!isset($options[$required])) { + throw new \InvalidArgumentException("$required is required"); + } + } + + $cookieSigner = new CookieSigner( + $options['key_pair_id'], + $options['private_key'] + ); + + return $cookieSigner->getSignedCookie( + isset($options['url']) ? $options['url'] : null, + isset($options['expires']) ? $options['expires'] : null, + isset($options['policy']) ? $options['policy'] : null + ); + } +} diff --git a/vendor/aws/aws-sdk-php/src/CloudFront/CookieSigner.php b/vendor/aws/aws-sdk-php/src/CloudFront/CookieSigner.php new file mode 100644 index 0000000..048c098 --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/CloudFront/CookieSigner.php @@ -0,0 +1,65 @@ +<?php +namespace Aws\CloudFront; + +class CookieSigner +{ + /** @var Signer */ + private $signer; + + private static $schemes = [ + 'http' => true, + 'https' => true, + ]; + + /** + * @param $keyPairId string ID of the key pair + * @param $privateKey string Path to the private key used for signing + * + * @throws \RuntimeException if the openssl extension is missing + * @throws \InvalidArgumentException if the private key cannot be found. + */ + public function __construct($keyPairId, $privateKey) + { + $this->signer = new Signer($keyPairId, $privateKey); + } + + /** + * Create a signed Amazon CloudFront Cookie. + * + * @param string $url URL to sign (can include query string + * and wildcards). Not required + * when passing a custom $policy. + * @param string|integer|null $expires UTC Unix timestamp used when signing + * with a canned policy. Not required + * when passing a custom $policy. + * @param string $policy JSON policy. Use this option when + * creating a signed cookie for a custom + * policy. + * + * @return array The authenticated cookie parameters + * @throws \InvalidArgumentException if the URL provided is invalid + * @link http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-cookies.html + */ + public function getSignedCookie($url = null, $expires = null, $policy = null) + { + if ($url) { + $this->validateUrl($url); + } + + $cookieParameters = []; + $signature = $this->signer->getSignature($url, $expires, $policy); + foreach ($signature as $key => $value) { + $cookieParameters["CloudFront-$key"] = $value; + } + + return $cookieParameters; + } + + private function validateUrl($url) + { + $scheme = str_replace('*', '', explode('://', $url)[0]); + if (empty(self::$schemes[strtolower($scheme)])) { + throw new \InvalidArgumentException('Invalid or missing URI scheme'); + } + } +} diff --git a/vendor/aws/aws-sdk-php/src/CloudFront/Exception/CloudFrontException.php b/vendor/aws/aws-sdk-php/src/CloudFront/Exception/CloudFrontException.php new file mode 100644 index 0000000..1acdf2c --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/CloudFront/Exception/CloudFrontException.php @@ -0,0 +1,9 @@ +<?php +namespace Aws\CloudFront\Exception; + +use Aws\Exception\AwsException; + +/** + * Represents an error interacting with the Amazon CloudFront service. + */ +class CloudFrontException extends AwsException {} diff --git a/vendor/aws/aws-sdk-php/src/CloudFront/Signer.php b/vendor/aws/aws-sdk-php/src/CloudFront/Signer.php new file mode 100644 index 0000000..22e55c2 --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/CloudFront/Signer.php @@ -0,0 +1,125 @@ +<?php +namespace Aws\CloudFront; + +/** + * @internal + */ +class Signer +{ + private $keyPairId; + private $pkHandle; + + /** + * A signer for creating the signature values used in CloudFront signed URLs + * and signed cookies. + * + * @param $keyPairId string ID of the key pair + * @param $privateKey string Path to the private key used for signing + * @param $passphrase string Passphrase to private key file, if one exists + * + * @throws \RuntimeException if the openssl extension is missing + * @throws \InvalidArgumentException if the private key cannot be found. + */ + public function __construct($keyPairId, $privateKey, $passphrase = "") + { + if (!extension_loaded('openssl')) { + //@codeCoverageIgnoreStart + throw new \RuntimeException('The openssl extension is required to ' + . 'sign CloudFront urls.'); + //@codeCoverageIgnoreEnd + } + + $this->keyPairId = $keyPairId; + + if (!$this->pkHandle = openssl_pkey_get_private($privateKey, $passphrase)) { + if (!file_exists($privateKey)) { + throw new \InvalidArgumentException("PK file not found: $privateKey"); + } + + $this->pkHandle = openssl_pkey_get_private("file://$privateKey", $passphrase); + if (!$this->pkHandle) { + $errorMessages = []; + while(($newMessage = openssl_error_string()) !== false){ + $errorMessages[] = $newMessage; + } + throw new \InvalidArgumentException(implode("\n",$errorMessages)); + } + } + } + + public function __destruct() + { + if (PHP_MAJOR_VERSION < 8) { + $this->pkHandle && openssl_pkey_free($this->pkHandle); + } + } + + /** + * Create the values used to construct signed URLs and cookies. + * + * @param string $resource The CloudFront resource to which + * this signature will grant access. + * Not used when a custom policy is + * provided. + * @param string|integer|null $expires UTC Unix timestamp used when + * signing with a canned policy. + * Not required when passing a + * custom $policy. + * @param string $policy JSON policy. Use this option when + * creating a signature for a custom + * policy. + * + * @return array The values needed to construct a signed URL or cookie + * @throws \InvalidArgumentException when not provided either a policy or a + * resource and a expires + * + * @link http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-cookies.html + */ + public function getSignature($resource = null, $expires = null, $policy = null) + { + $signatureHash = []; + if ($policy) { + $policy = preg_replace('/\s/s', '', $policy); + $signatureHash['Policy'] = $this->encode($policy); + } elseif ($resource && $expires) { + $expires = (int) $expires; // Handle epoch passed as string + $policy = $this->createCannedPolicy($resource, $expires); + $signatureHash['Expires'] = $expires; + } else { + throw new \InvalidArgumentException('Either a policy or a resource' + . ' and an expiration time must be provided.'); + } + + $signatureHash['Signature'] = $this->encode($this->sign($policy)); + $signatureHash['Key-Pair-Id'] = $this->keyPairId; + + return $signatureHash; + } + + private function createCannedPolicy($resource, $expiration) + { + return json_encode([ + 'Statement' => [ + [ + 'Resource' => $resource, + 'Condition' => [ + 'DateLessThan' => ['AWS:EpochTime' => $expiration], + ], + ], + ], + ], JSON_UNESCAPED_SLASHES); + } + + private function sign($policy) + { + $signature = ''; + openssl_sign($policy, $signature, $this->pkHandle); + + return $signature; + } + + private function encode($policy) + { + return strtr(base64_encode($policy), '+=/', '-_~'); + } +} diff --git a/vendor/aws/aws-sdk-php/src/CloudFront/UrlSigner.php b/vendor/aws/aws-sdk-php/src/CloudFront/UrlSigner.php new file mode 100644 index 0000000..3929c2f --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/CloudFront/UrlSigner.php @@ -0,0 +1,119 @@ +<?php +namespace Aws\CloudFront; + +use GuzzleHttp\Psr7; +use GuzzleHttp\Psr7\Uri; +use Psr\Http\Message\UriInterface; + +/** + * Creates signed URLs for Amazon CloudFront resources. + */ +class UrlSigner +{ + private $signer; + + /** + * @param $keyPairId string ID of the key pair + * @param $privateKey string Path to the private key used for signing + * + * @throws \RuntimeException if the openssl extension is missing + * @throws \InvalidArgumentException if the private key cannot be found. + */ + public function __construct($keyPairId, $privateKey) + { + $this->signer = new Signer($keyPairId, $privateKey); + } + + /** + * Create a signed Amazon CloudFront URL. + * + * Keep in mind that URLs meant for use in media/flash players may have + * different requirements for URL formats (e.g. some require that the + * extension be removed, some require the file name to be prefixed + * - mp4:<path>, some require you to add "/cfx/st" into your URL). + * + * @param string $url URL to sign (can include query + * string string and wildcards) + * @param string|integer|null $expires UTC Unix timestamp used when signing + * with a canned policy. Not required + * when passing a custom $policy. + * @param string $policy JSON policy. Use this option when + * creating a signed URL for a custom + * policy. + * + * @return string The file URL with authentication parameters + * @throws \InvalidArgumentException if the URL provided is invalid + * @link http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/WorkingWithStreamingDistributions.html + */ + public function getSignedUrl($url, $expires = null, $policy = null) + { + // Determine the scheme of the url + $urlSections = explode('://', $url); + + if (count($urlSections) < 2) { + throw new \InvalidArgumentException("Invalid URL: {$url}"); + } + + // Get the real scheme by removing wildcards from the scheme + $scheme = str_replace('*', '', $urlSections[0]); + $uri = new Uri($scheme . '://' . $urlSections[1]); + $query = Psr7\Query::parse($uri->getQuery(), PHP_QUERY_RFC3986); + $signature = $this->signer->getSignature( + $this->createResource($scheme, (string) $uri), + $expires, + $policy + ); + $uri = $uri->withQuery( + http_build_query($query + $signature, '', '&', PHP_QUERY_RFC3986) + ); + + return $scheme === 'rtmp' + ? $this->createRtmpUrl($uri) + : (string) $uri; + } + + private function createRtmpUrl(UriInterface $uri) + { + // Use a relative URL when creating Flash player URLs + $result = ltrim($uri->getPath(), '/'); + + if ($query = $uri->getQuery()) { + $result .= '?' . $query; + } + + return $result; + } + + /** + * @param $scheme + * @param $url + * + * @return string + */ + private function createResource($scheme, $url) + { + switch ($scheme) { + case 'http': + case 'http*': + case 'https': + return $url; + case 'rtmp': + $parts = parse_url($url); + $pathParts = pathinfo($parts['path']); + $resource = ltrim( + $pathParts['dirname'] . '/' . $pathParts['basename'], + '/' + ); + + // Add a query string if present. + if (isset($parts['query'])) { + $resource .= "?{$parts['query']}"; + } + + return $resource; + } + + throw new \InvalidArgumentException("Invalid URI scheme: {$scheme}. " + . "Scheme must be one of: http, https, or rtmp"); + } +} |