{
"$id": "https://schemas.don.projects.digilab.network/schemas/policy-as-code/hsts",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"includeSubDomains": {
"description": "Whether the 'includeSubDomains' directive must be present. MDN: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security#includesubdomains",
"type": "boolean"
},
"maxAge": {
"description": "Required minimum HSTS max-age directive value, in seconds. Defines how long browsers should enforce HTTPS. MDN: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security#max-age",
"minimum": 0,
"type": "integer"
},
"preload": {
"description": "Whether the 'preload' directive must be present. Preloading requires meeting additional rules. Chrome preload docs: https://chromium.googlesource.com/website/+/HEAD/security/hsts_preload.md",
"type": "boolean"
},
"required": {
"description": "Whether HSTS must be present on the site. See: https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security",
"type": "boolean"
}
},
"title": "HSTS Configuration Schema",
"type": "object"
}