javascript - 前后端分离,node直接转发接口 引发的安全性问题
怪我咯
怪我咯 2017-04-11 12:37:06
0
3
767

后台提供了一个接口:

获取所有用户交易记录

  1. 这个接口在后台做为用户列表的搜索页面。

  2. 在前台为单个用户的个人交易记录。

在node端我实现的是接口的转发,把js的接口转发到后台。

所以我在js中调用接口的方式为:
/v1/transactions?userId = 123

userId是登陆以后给我的,我直接显示在页面上方便我在不同的场合中调用。

后台内容这会出现安全问题:

  1. 认为userID不能让客户知道(因为userID为自增的别人能根据userID推算出顾客的数量)

  2. 认为我的url不能以这种方式直接传递,这样别的人就知道了我们的表或者说是请求方式。

我想寻找解决办法,但是我感觉这种安全的错误也不在我这边:

  1. userID是后端提供的,当时就不应该是自增的。我是可以把userID保存在node的session中然后在node上面拼接,但是这种办法很麻烦,我要根据不同的接口拼接不同的数据。

  2. url直接连接我认为没什么问题,没想到什么好的别的请求办法。

怪我咯
怪我咯

走同样的路,发现不同的人生

reply all(3)
黄舟

应该使用后端授权生成一个 token 给前端,前端转发到后台时带上这个token, 后端根据token值自己获取当前用户信息,不应该由前端直接传 userId。

小葫芦

应该在 session 里保存 uid。

请求方式这一块没什么大问题。

安全不只是前端的事,后端也要判断当前用户是否有权限发起该请求,user 123 不应该可以获取 user 124 的数据。

大家讲道理

你们的后台没有设计好请求方式就让你调用接口了啊......
这个不应该是后端来规定请求方式么

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template