前后端分离系统中,跨源访问、身份认证和对象级授权应如何分层验证?
简答题中等415 次浏览
参考答案与解析
# 核心结论
前后端分离系统应把跨源访问、身份认证和对象级授权拆成三层独立验证。CORS 决定浏览器是否允许某个来源的脚本读取跨源响应;认证确定请求主体是谁;授权判断该主体能否在当前租户中对指定对象执行指定动作。CORS 不是接口访问控制,攻击者可以使用命令行、移动端或自己的服务器直接调用接口,因此服务端必须在每次请求中独立完成认证与授权,不能依赖浏览器同源策略保护敏感数据。
# 底层机制
源由协议、主机和端口共同确定。浏览器对某些非简单跨源请求会先发送 OPTIONS 预检,询问服务端是否允许当前来源、方法和请求头。服务端应根据明确的允许列表返回 Access-Control-Allow-Origin
