Appendix A. Design Decision Notes (设计决策说明)
本附录记录了各种设计决策.
-
Cookie不适合用于HSTS策略表达, 因为它们在存储于UA时可能是可变的; 因此, 采用HTTP头字段.
-
我们选择不尝试指定如何处理"混合安全上下文加载" (也称为"混合内容加载"), 这是由于UA实现考虑以及分类困难.
-
HSTS主机可以通过新的HSTS头字段参数值更新UA的HSTS策略概念. 我们选择让UA遵守从服务器接收到的"最新"信息, 因为网站有可能发出错误的HSTS策略, 例如多年的max-age值, 和/或错误的includeSubDomains指令. 如果HSTS主机无法通过协议纠正此类错误, 则需要某种形式的向用户宣布和用户的手动干预, 这对于Web应用程序提供商及其用户来说可能是一个非平凡的问题.
-
HSTS主机仅通过域名识别 -- 排除所有形式的显式IP地址识别. 这是为了简化, 也是为了认识到将直接IP地址识别与基于PKI的安全结合使用时的各种问题.
-
选择max-age方法, 让HSTS主机提供一个简单的整数秒数作为缓存的HSTS策略生存时间值, 而不是在未来陈述过期时间的方法, 这是出于各种原因. 其中的原因包括: 无需时钟同步, 无需定义日期和时间值语法 (规范简单性), 以及实现简单性.
-
在确定是否采用端口映射时, 考虑了仅拒绝解引用任何带有显式端口的URL的选项. 但是, 人们认为, 要解引用的URI可能是不正确的 (并且确实在该端口上有有效的HTTPS服务器) 的可能性值得对HTTP服务器进行可能浪费的HTTPS获取的小成本.