2012-11-12 96 views
1

我有一個ERP系統的時候,我都爲它建立了一些Web服務使用JavaScript的機密信息。出於安全原因,除了其他參數外,Web服務的使用者還必須發送主登錄用戶名和密碼(在我的ERP應用程序中設置)。例如調用Web服務來檢索年薪僱員消費者使用以下URL調用Web服務: -發送調用Web服務

/jw/web/json/hr/getsalary/byid?master_username=superadmin&password_hash=9449B5ABCFA9AFDA36B801351ED3DF66&employeeid=A200121 

現在我已經下載了免費的和簡單的文件管理系統,並能從自由軟件調用上述Web服務我只能這樣做使用javaScript,因爲我不是軟件的所有者,但因爲我發送master_username和password_hash作爲通話的一部分,所以這是不安全的做到這一點使用javaScrpt。

所以我的問題是什麼其他方法(主登錄用戶名和密碼除外),我可以使用javaScript使Web服務調用安全;所以Web服務應該使用javaScript來完成,並且應該是安全的。 在此先感謝您的幫助。 BR

:::更新::: 的JavaScript看起來類似於: -

<script type="text/javascript"> 
$(function() { 
$.getJSON("https://MyERPsystem.com/jw/web/json/hr/getsalary/byid?master_username=superadmin&password_hash=9449B5ABCFA9AFDA36B801351ED3DF66&employeeid=A200121", 
    { 
//code goes here 
    }, 
    function(data) { 
    $.each(data.items, function(i,item){ 
//code goes here 
    }); 
}); 
}) </script> 

回答

0

您可以使用SSL連接默認情況下是加密的。

p.s.我不確定我是否理解爲什麼您無法正常驗證用戶身份,然後只接受針對經過驗證的SESSION中的用戶的查詢。

+0

我不能身份驗證的用戶通常因爲我們有兩個不同的應用程序,如果我不發送任何安全信息(用戶名和密碼),那麼任何外部用戶可以調用Web服務,即使他是不是裏面任何兩個應用程序通過只是調用上面的網址...此外,如果我使用HTTPS,那麼這將不會阻止客戶端訪問使用工具,如螢火蟲的master_username和password_hash。 –

+0

https也會加密所請求的網址。如果你有兩個不同的應用程序(服務器端),這兩個應用程序可以通信嗎?這樣一旦用戶在第一應用驗證,它將更新與一個隨機散列其中用戶將發送給每個請求的第二應用在第二分貝值。 – MIrrorMirror

+0

即使這些URL是否是javaScript的一部分?看到我更新的問題。 –