认证解决“你是谁”:登录、令牌、会话;授权解决“你能做什么”:角色、权限、越权控制。两者必须分开设计、都要做扎实。
常见的“越权漏洞”,往往是只做了认证没做授权——登录了就能看别人的数据。
底线原则:每个接口都要校验身份与权限,后端是安全的最后防线,不能只靠前端隐藏。
把安全做扎实的关键。
强哈希、加盐、策略。
过期、刷新、吊销。
SQL/命令注入防护。
XSS 转义、校验。
接口级权限校验。
审计与异常告警。
构建安全可靠的后端。
按场景选 Session/JWT/OAuth,明确存储与刷新策略。
登录、注册、令牌签发、刷新与登出全流程。
定义角色权限模型,接口层做权限校验与越权控制。
密码策略、输入校验、注入防护、日志审计持续完善。
把高频漏洞堵住。
| 漏洞 | 危害 | 防御 |
|---|---|---|
| 越权 | 访问他人数据 | 接口级鉴权 |
| SQL 注入 | 数据泄露 | 参数化查询 |
| XSS | 窃取会话 | 输出转义、CSP |
| 弱口令 | 账号被破 | 强策略+双因素 |
| CSRF | 伪造请求 | Token 校验 |
JWT 无状态、适合分布式;Session 简单、可随时吊销。移动端/微服务常用 JWT,单体应用 Session 也够。
缩短有效期 + 刷新机制 + 服务端黑名单/吊销,配合重要操作的二次校验。
RBAC 角色权限模型起步,复杂场景用 ABAC 属性权限。后端接口必须做权限校验。
核心系统建议做安全评审与渗透测试;常规项目先守住基础防线,成本可控收益明显。