OriginRequestPolicy ​
The OriginRequestPolicy resource allows you to manage AWS CloudFront Origin Request Policies to control the headers, cookies, and query strings that CloudFront includes in requests to your origin.
Minimal Example ​
Create a basic Origin Request Policy with required properties and an optional description.
ts
import AWS from "alchemy/aws/control";
const basicOriginRequestPolicy = await AWS.CloudFront.OriginRequestPolicy("basicOriginRequestPolicy", {
OriginRequestPolicyConfig: {
Name: "BasicPolicy",
Comment: "A simple origin request policy",
HeadersConfig: {
HeaderBehavior: "whitelist",
Headers: ["Authorization"]
},
CookiesConfig: {
CookieBehavior: "none"
},
QueryStringsConfig: {
QueryStringBehavior: "all"
}
}
});
Advanced Configuration ​
Configure an Origin Request Policy with more advanced settings, including headers and cookies.
ts
const advancedOriginRequestPolicy = await AWS.CloudFront.OriginRequestPolicy("advancedOriginRequestPolicy", {
OriginRequestPolicyConfig: {
Name: "AdvancedPolicy",
Comment: "An advanced origin request policy with more settings",
HeadersConfig: {
HeaderBehavior: "whitelist",
Headers: ["Authorization", "User-Agent"]
},
CookiesConfig: {
CookieBehavior: "all"
},
QueryStringsConfig: {
QueryStringBehavior: "none"
}
}
});
Including Multiple Headers and Cookies ​
Demonstrate an Origin Request Policy that includes multiple headers and cookies, showcasing its flexibility.
ts
const complexOriginRequestPolicy = await AWS.CloudFront.OriginRequestPolicy("complexOriginRequestPolicy", {
OriginRequestPolicyConfig: {
Name: "ComplexPolicy",
Comment: "A complex policy that includes multiple headers and cookies",
HeadersConfig: {
HeaderBehavior: "whitelist",
Headers: ["Authorization", "Accept-Language", "X-Custom-Header"]
},
CookiesConfig: {
CookieBehavior: "whitelist",
Cookies: ["session_id", "user_id"]
},
QueryStringsConfig: {
QueryStringBehavior: "all"
}
}
});