4. 安全考虑事项
URI 结构会影响安全边界. 当一个规范定义, 解释或约束 URI 的一部分时, 它可能无意中改变 URI 所有者或 scheme 定义者原本保留的语义空间.
协议设计者不应假定能够安全地检查, 重写或赋予 URI 子结构新的含义, 除非相关 URI scheme 或被标识资源的所有者明确允许这样做. 对 authority, path, query 或 fragment 的跨应用解释可能造成混淆, 进而导致访问控制, 缓存, 重定向或安全策略错误.
把 URI 模式写得过于具体也可能带来安全风险. 如果不同应用对同一 URI 结构有不同假设, 攻击者可能利用这些差异构造看似合法但在另一上下文中具有不同含义的 URI.
因此, 使用 URI 的规范应明确其适用范围, 尊重 URI scheme 的定义, 并避免把其他方拥有的 URI 空间当作本规范可自由分配或解释的命名空间.