2011-05-04 141 views
1

我正在構建一個iOS應用程序,它將與一組.NET WebServices進行通信。我試圖找到一種方法來確保在WS端發送的調用實際上來自iOS應用程序。iOS - > .NET WebService身份驗證問題

當然,有一個「登錄」方法需要用戶名/密碼組合。我想爲這個方法添加一個「安全令牌」,我可以用它來驗證請求來自iOS應用程序。

由於這是登錄方法的參數,因此必須是應用程序和Web服務在發生有效登錄之前已知的內容。另外,它應該是另一個應用程序僞造的不可能(困難?)的東西。

他們是否有這種交換的最佳實踐/標準方法?我是否以正確的方式思考問題?

在此先感謝!

回答

0

查看oAuth規範(由Twitter使用),它要求首先驗證用戶,在此過程中交換一系列令牌,然後在後續數據交換期間使用令牌簽署數據。

它適用於公鑰/私鑰匹配的密鑰的原則,所以你有一個密鑰始終保密。

+0

在這種情況下,沒有第三方需要訪問某些數據。只有我的iPhone應用程序和web服務。 OAuth仍然是一個有效的解決方案? – 2011-05-04 17:06:06

+0

我不認爲oAuth會起作用,因爲沒有第三方來驗證。我想要做的是確保對WS的調用實際上來自我們構建的軟件(它位於iPhone上)oAuth似乎沒有這樣做(除非我錯過了某些東西!) – 2011-05-04 23:52:39

+0

僅供參考 - 我決定使用公鑰/私鑰加密來完成此操作。謝謝! – 2011-06-28 15:51:09