开放给多个合作域名的接口,怎样避免跨源配置演变为数据越权通道?
简答题中等725 次浏览
参考答案与解析
# 核心结论
向多个合作域名开放接口时,应把跨源许可与数据授权完全分开设计。CORS 只决定浏览器中的某个来源能否发送特定请求并读取响应,不能证明调用者身份,也不能证明其有权访问某个租户、订单或字段。服务端必须先认证主体,再校验令牌作用域、操作权限、租户关系和对象归属;只有来源也通过精确允许列表检查时,才向浏览器返回相应跨源响应头。即使跨源配置完全正确,任何非浏览器客户端仍可直接请求接口,所以真正防止数据越权的边界只能是业务授权。
# 底层机制
浏览器使用方案、主机和端口组成源。非简单跨源请求通常先发送 OPTIONS 预检,其中通过 Origin、`Access-Control-Request-Metho
