【发布时间】:2014-12-02 13:09:46
【问题描述】:
我有一个使用 NodeJS 后端和 ReactJS 前端运行的网站。所有的前端逻辑都发生在用户的浏览器中,前端点击后端路由来获取业务逻辑。目前,我们使用passportjs 对用户进行身份验证。但是,当用户登录时,他或她仍然可以使用 Postman 之类的东西来访问所有后端路由,其中许多应该是私有的。有没有一种好方法可以确保只有管理员或我们的平台才能访问我们的后端路由?我认为这需要某种总是赋予前端逻辑的管理员权限,但我想知道是否有最佳实践。
【问题讨论】:
-
如果客户端需要访问后端,你唯一能做的就是通过正常的身份验证来阻止访问后端。用户登录后,没有什么可以阻止该用户使用他们的授权凭据通过 fiddler 或具有相同凭据的类似软件发送他们自己的请求。
-
您在这里唯一能做的就是通过默默无闻来确保安全,即手动操作变得如此繁琐以至于大部分用户都放弃了。没有只有浏览器才有的魔力。