aws cloudformation CachePolicy 通用错误

问题描述

我正在尝试创建一个缓存策略来转发所有(cookie、查询字符串和标题)并且实际上不缓存任何东西:

    Type: AWS::CloudFront::CachePolicy
    Properties:
      CachePolicyConfig:
        Comment: Cache Policy
        DefaultTTL: 0
        MaxTTL: 0
        MinTTL: 0
        Name: !Sub ${AWS::StackName}-cache-policy
        ParametersInCacheKeyAndForwardedToOrigin:
          CookiesConfig:
            CookieBehavior: all
          EnableAcceptEncodingbrotli: true
          EnableAcceptEncodingGzip: true
          HeadersConfig:
            HeaderBehavior: whitelist
            Headers: 
              - "*"
          QueryStringsConfig:
            QueryStringBehavior: all

和我的 OriginRequestPolicy:

OriginRequestPolicy:
    Type: AWS::CloudFront::OriginRequestPolicy
    Properties:
      OriginRequestPolicyConfig:
        Name: !Sub ${AWS::StackName}-origin-request
        CookiesConfig:
          CookieBehavior: all
        HeadersConfig:
          HeaderBehavior: allViewer
        QueryStringsConfig:
          QueryStringBehavior: all

但是当我尝试上传堆栈时,出现一般错误

The following resource(s) Failed to create: [OriginRequestPolicy,CachePolicy]. Rollback requested by user. OriginRequestPolicy CREATE_Failed   Resource creation cancelled CachePolicy CREATE_Failed   Invalid request provided: AWS::CloudFront::CachePolicy

我错过了什么?

obs:我不能只创建一个 AWS::CloudFront::OriginRequestPolicy 因为它似乎我只能有一个 OriginRequestPolicy 如果 alredy 首先存在一个 cacheRequestPolicy..

解决方法

我不知道为什么“手动方式”不起作用,但我从文档中找到了满足我需求的 2 个预制策略:

Name: Managed-CachingDisabled
ID: 4135ea2d-6df8-44a3-9df3-4b5a84be39ad
This policy disables caching. This policy is useful for dynamic content and for requests that are not cacheable.

Name: Managed-AllViewer
ID: 216adef6-5c7f-47e4-b989-5492eafa07d3
This policy includes all values (query strings,headers,and cookies) in the viewer request.

文档参考:

https://docs.amazonaws.cn/en_us/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html

https://docs.amazonaws.cn/en_us/AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html