@@ -618,11 +618,14 @@ Resources:
618618 WebsiteConfiguration :
619619 IndexDocument : index.html
620620
621- CloudFrontOriginAccessIdentity :
622- Type : AWS::CloudFront::CloudFrontOriginAccessIdentity
621+ AppCloudfrontS3OAC :
622+ Type : AWS::CloudFront::OriginAccessControl
623623 Properties :
624- CloudFrontOriginAccessIdentityConfig :
625- Comment : !Sub "Access identity for ${AppFrontendS3Bucket} and ${AppDocsS3Bucket}"
624+ OriginAccessControlConfig :
625+ Name : InfraCoreApi OAC
626+ OriginAccessControlOriginType : s3
627+ SigningBehavior : always
628+ SigningProtocol : sigv4
626629
627630 AppFrontendCloudfrontDistribution :
628631 Type : AWS::CloudFront::Distribution
@@ -633,11 +636,13 @@ Resources:
633636 - Id : S3WebsiteOrigin
634637 DomainName : !GetAtt AppFrontendS3Bucket.RegionalDomainName
635638 S3OriginConfig :
636- OriginAccessIdentity : !Sub "origin-access-identity/cloudfront/${CloudFrontOriginAccessIdentity}"
639+ OriginAccessIdentity : ' '
640+ OriginAccessControlId : !GetAtt AppCloudfrontS3OAC.Id
637641 - Id : S3DocsOrigin
638642 DomainName : !GetAtt AppDocsS3Bucket.RegionalDomainName
639643 S3OriginConfig :
640- OriginAccessIdentity : !Sub "origin-access-identity/cloudfront/${CloudFrontOriginAccessIdentity}"
644+ OriginAccessIdentity : ' '
645+ OriginAccessControlId : !GetAtt AppCloudfrontS3OAC.Id
641646 - Id : LambdaOrigin
642647 DomainName : !Select [0, !Split ['/', !Select [1, !Split ['https://', !GetAtt AppLambdaUrl.FunctionUrl]]]]
643648 CustomOriginConfig :
@@ -762,9 +767,12 @@ Resources:
762767 Statement :
763768 - Effect : Allow
764769 Principal :
765- CanonicalUser : !GetAtt CloudFrontOriginAccessIdentity.S3CanonicalUserId
770+ Service : cloudfront.amazonaws.com
766771 Action : s3:GetObject
767772 Resource : !Sub "${AppFrontendS3Bucket.Arn}/*"
773+ Condition :
774+ StringEquals :
775+ AWS:SourceArn : !Sub "arn:aws:cloudfront::${AWS::AccountId}:distribution/${AppFrontendCloudfrontDistribution}"
768776
769777 AppDocsS3BucketPolicy :
770778 Type : AWS::S3::BucketPolicy
@@ -775,9 +783,13 @@ Resources:
775783 Statement :
776784 - Effect : Allow
777785 Principal :
778- CanonicalUser : !GetAtt CloudFrontOriginAccessIdentity.S3CanonicalUserId
786+ Service : cloudfront.amazonaws.com
779787 Action : s3:GetObject
780788 Resource : !Sub "${AppDocsS3Bucket.Arn}/*"
789+ Condition :
790+ StringEquals :
791+ AWS:SourceArn : !Sub "arn:aws:cloudfront::${AWS::AccountId}:distribution/${AppFrontendCloudfrontDistribution}"
792+
781793
782794 CloudfrontNoCachePolicy :
783795 Type : AWS::CloudFront::CachePolicy
0 commit comments