2013-02-10 51 views
0

,所以我有我的C#Web服務的未經授權的使用情況,以便在這裏不言而喻最好的辦法在Android客戶端,安全的網絡服務

問題

問題: 我有一個Android客戶端應用程序,它從C#獲取數據Web服務。現在我的問題是我不希望其他人/應用程序使用服務。所以我想限制使用僅限於我的應用程序。

解決方案(我目前有): 1.創建一個用戶名/密碼並將其存儲(加密的形式)在Android客戶端應用程序中。 2.我的android應用程序會將解密後的用戶名/密碼發送給web服務。 3.因爲用戶名/密碼在旅行到Web服務時被解密,所以不安全,因爲人們可以查看信息。所以我的計劃是設置HTTPS連接來保護數據。 4.當用戶名/密碼到達Web服務時,它執行必要的操作。

我不確定這是否是正確的方法,但請分享您的意見和抱歉,如果這個問題是不相關的網站,但我非常需要在這個主題的幫助。

回答

1

如果https是一個選項,只需使用它,並讓應用程序使用基本身份驗證進行身份驗證。因爲即使通過https的基本身份驗證是加密的,您在那裏也相當安全 - 而且更好的是,您的Web服務器將充當門衛,絕不會碰到應用服務器。

如果http是你所能做的,就考慮一個簡單的質詢 - 響應協議:Ping服務器並接收訪問令牌。該令牌隨後由客戶端進行修改和加密,並生成客戶端隨每個請求一起發送的新令牌。由於客戶端和服務器知道響應的算法,因此服務器可以快速驗證消費者是否有權訪問該服務。

+0

感謝您的快速響應。「更好的是,您的網絡服務器將充當門衛,永遠不會碰到應用服務器。」 +1000。 – wenn32 2013-02-10 05:59:38

+0

簡單的挑戰 - 響應協議 - 這是否意味着我必須實現我自己的算法?你能否請關注這個話題,因爲我感興趣 – wenn32 2013-02-10 06:01:28