2015-09-04 61 views
1

我很新,所以這可能看起來像一個noob問題。保護使用網絡服務發送的數據

我正在製作一個大量使用AngularJS的應用程序。在我的前端頁面中,我正在填充下拉列表,用戶列表等。

當我從我的Web服務發送數據時,我發送itemId和itemName。 itemName用於填充我的前端,如果用戶與該特定項目交互,則會使用itemId。

問題是,用戶可以打開瀏覽器的網絡日誌,或者使用像Fiddler這樣的工具並查看所有itemIds。有什麼辦法可以防止這種情況發生?

回答

1

通常,如果用戶擺弄數據,他們應該期望應用程序行爲不好。話雖如此,只要您的後端安全性很嚴格,並且用戶無法對其所不能做的任何更改進行修改,那麼您就會沒事的。

假設來自客戶端應用程序的所有數據都是壞的/有故障的/企圖利用您的服務,這是維護安全性的唯一方法。

沒有辦法在JS應用程序中維護任何種類的「安全」數據,因此其輸入不能隱式信任。

+0

我將在後端處理輸入驗證......但我的問題是,他們知道我所有記錄的主鍵是什麼 – Shuaib

+0

我想我不明白爲什麼這是一個問題。如果確實如此,那麼您不需要在任何時候將主鍵暴露給客戶端。也就是說,您仍然需要客戶端能夠唯一地識別資源/實體,因此您創建的任何人造主鍵在功能上都是相同的。 – CollinD

+0

考慮一個用戶列表。使用小提琴手你知道每個用戶的主鍵字段....我不知道這是否是一個問題..因爲我將驗證輸入無論如何...這是一個問題? – Shuaib