{"id":6080,"date":"2019-06-01T20:51:12","date_gmt":"2019-06-01T20:51:12","guid":{"rendered":"http:\/\/www.garysieling.com\/blog\/?p=6080"},"modified":"2020-03-30T02:29:40","modified_gmt":"2020-03-30T02:29:40","slug":"aws-s3-cloudformation-s3-cors-example","status":"publish","type":"post","link":"https:\/\/www.garysieling.com\/blog\/aws-s3-cloudformation-s3-cors-example\/","title":{"rendered":"AWS S3 Cloudformation: S3 CORS example"},"content":{"rendered":"<p>An example Cloudformation that makes a bucket with CORS enabled (unlike the AWS docs, this shows how to do it with Cloudformation rather than XML).<\/p>\n<pre lang=\"yaml\">AWSTemplateFormatVersion: \"2010-09-09\"\n\nDescription: CORS example\n\nResources:\n  S3Bucket:\n    Type: \"AWS::S3::Bucket\"\n    Properties:\n      CorsConfiguration:\n        CorsRules:\n          -\n            AllowedOrigins: \n              - \"*\"\n            AllowedMethods: \n              - POST\n              - GET\n              - PUT\n              - DELETE\n              - HEAD\n            AllowedHeaders: \n              - \"*\"\n\nOutputs:\n  BucketName:\n    Description: Video storage bucket\n    Value: !GetAtt S3Bucket.Arn\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>AWS Cloudformation YAML with S3  + CORS<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[4,8],"tags":[71,114,124,476],"aioseo_notices":[],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts\/6080"}],"collection":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/comments?post=6080"}],"version-history":[{"count":1,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts\/6080\/revisions"}],"predecessor-version":[{"id":6427,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts\/6080\/revisions\/6427"}],"wp:attachment":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/media?parent=6080"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/categories?post=6080"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/tags?post=6080"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}