【问题标题】:Restful web application security宁静的 Web 应用程序安全性
【发布时间】:2013-05-06 19:25:41
【问题描述】:

我想知道我的网络应用程序的安全性。我有两个问题,希望你能帮我解答一下

我正在使用一个游戏框架(支持休息);我的一些 REST 路由如下所示:

GET  /mailbox/user/{userId} Application.getMailboxMessages

关于那个案例我有两个问题

1 .将userId 放在我的路线中会带来安全风险吗? (从服务器中的会话中获取userId 并且根本不传递userId 是我应该做的吗?)

第一个 url 引导我将 userId 放在我的 javascript 文件中。

$.ajax({
    type:"GET",
    url:"/mailbox/user/"+window.userId, 
    success : function() {....}
})

2 。将userId 放在javascript 中是否存在安全风险?

3 .还有我使用 ajax 与之交互的其他用户 ID 会发生什么,我也应该对它们做些什么吗? 例如:

$.ajax({
   type: "POST", 
   url : "/sendMessage/userFrom/"window.userId+"/userTo/"+ someTargetUserVar ,
   success: function() {//update some gui here}
})

谢谢

【问题讨论】:

    标签: security rest web-applications playframework-1.x


    【解决方案1】:

    广告。 1. 放置userId基本没问题,不存在安全风险(但显然可以从后端的session中获取,有时URL约定是使用/mailbox/user/self之类的链接

    广告。 2.如上,就OK了。

    广告。 3. 如果给定请求仅对登录用户有效,则验证该请求并返回非当前用户 id 的错误代码或不在 url 中传递 id,只需从会话中获取它,然后使用 /mailbox/user /self 以明确您对 API 用户的意图。

    【讨论】:

    • 好的,所以我可以将 userId 传递给服务器,但需要使用当前连接用户的服务器会话对其进行验证?
    • 是的,就是这样。或者只是从会话中获取 id。
    猜你喜欢
    • 2011-07-04
    • 2011-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-17
    • 1970-01-01
    相关资源
    最近更新 更多