2013-05-06 113 views
1

我想知道一些關於我的web應用程序的安全性。我有兩個問題,我希望你可以幫助我他們Restful Web應用程序安全

我使用的是一個播放框架(它支持休息);我的一些REST的路線是這樣的:

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

我有一個關於該案件

1兩個問題。是否將userId放在我的路線中使其成爲安全風險? (沒有充分利用會議userId在服務器和沒有通過userId在所有是我應該做的?)

的第一個網址讓我放置userId在我的JavaScript文件。

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

2。在JavaScript中放置userId是否具有安全風險?

3。還有其他用戶id與我使用ajax進行交互時會發生什麼,我是否也應該對他們做些什麼? 例如:

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

謝謝

回答

2

廣告。 1.放置userId基本上沒問題,但不是安全風險(但你可以很明顯地從後臺的會話中獲得它,有時URL轉換是使用像/ mailbox/user/self這樣的鏈接

Ad。2.如上,這是可以的

廣告3.如果給定的請求僅對已記錄的用戶有效,那麼要麼驗證該請求並返回非當前用戶的id的錯誤代碼,要麼不在URL中傳遞id,只是從會話中獲取它,然後使用/ mailbox/user/self來明確你的API用戶意圖。

+0

好吧,所以我可以將userId傳遞給服務器,但需要使用服務器會話驗證當前連接用戶? – 2013-05-06 19:50:01

+0

是的,這是要走的路,或者只是讓我d來自會議。 – 2013-05-06 19:50:53