2011-05-16 33 views
2

我有一個PHP & MySQL的在線應用程序。我需要使用C#中構建的桌面應用程序提供一些功能。我的任務包括follwoing ..使用webservice與遠程用戶數據庫登錄

  1. 認證
  2. 數據庫查詢

請建議我繼續進行這種情況下適當的方式。

我的一些疑惑..

  • 我應該使用Web服務在我的PHP結束了嗎?
  • 如何驗證?
  • 有什麼安全問題?

回答

2

是的。您需要在PHP端創建一個web服務,該服務包含一個將執行查詢的方法。然後,您可以將C#應用程序中的'Service Reference'添加到PHP服務中。

關於身份驗證:這取決於您的方案。如果您是Web服務的唯一用戶,則可以使用basic authentication(通過HTTPS)以確保您的憑據對嗅探器是安全的。

安全性問題在於你將不得不依賴於令牌,密鑰或其他東西。而且由於這些存儲在使用該軟件的臺式計算機上,所以有人可以竊取這些祕密(通過使用反編譯器f.e.)。如果安全性非常重要,則需要依賴DigiPass等第三方解決方案。

+0

感謝您的明確答案。基本上應用程序是多用戶,不會在系統上存儲任何憑據。我們有一個用戶管理系統,後端有一個mysql數據庫。用戶必須通過在啓動應用程序時提供憑證來登錄。 – BlueBird 2011-05-16 10:03:35

+1

如果每次程序啓動時提示用戶的登錄名和密碼,則不必存儲任何內容。 – SJuan76 2011-05-16 10:35:12

1
  • Webservice:這是標準的工作方式。但是它有一些開銷(XML和所有這些),所以如果你傳輸複雜的結構,你可能需要其他選項(例如通過HTTP連接傳遞自己的編碼數據)。也許即使是混合系統,簡單的請求都是通過簡單的web服務,而更復雜的請求是通過HTTP,但不使用XML,或通過在web服務中以這種方式編寫的結構傳遞。無論如何,儘量保持非標準解決方案的最低限度。
  • 取決於您的安全要求。 Webservices是HTTP,因此標準Web認證起作用。
  • 和以前一樣,您有基本的解決方案,它取決於您的應用程序的功能。
+0

JSon會在兩者之間工作嗎? – BlueBird 2011-05-16 10:04:56

+0

這可能是一個例子。當然,您需要解釋程序中的JSON數據(如果有可用的第三方庫或通過您自己編寫的代碼)。 – SJuan76 2011-05-16 10:31:31

相關問題