2013-05-13 47 views
7

在當前項目中,我想檢查用戶是否是他所說的用戶(不涉及私人數據)。那個項目主要是關於我大學的時間表。因爲我們有一個LDAP服務器,每個學生都有一個賬戶,所以我想用LDAP服務器進行身份驗證,但是Windows Phone上沒有System.DirectoryServices程序集。 有沒有人有一個想法如何通過Webservice實現登錄期望的解決方法? WCF不會是一個選項,理論上我可以將數據發送到Web服務,並通過PHP進行身份驗證,但我希望在應用程序中保留該功能。Windows Phone上的LDAP身份驗證

在此先感謝!

+0

你爲什麼不在PHP中創建一個Web服務,並通過應用程序向其發送POST數據? – 2013-06-04 19:18:00

+0

如果僅在手機上的應用程序中完成身份驗證,是否意味着實際的服務器端數據服務已打開並且沒有身份驗證?或者應用程序將使用內置的靜態證書?因爲這是非常不安全的。應該在服務器端進行身份驗證,以免發生可能性或篡改。 如果您將使用用戶提供的憑證連接到數據庫服務器或類似服務器,那麼爲什麼要檢查它們呢?讓服務器去做。 – Ashigore 2013-06-10 00:40:44

+0

你有沒有這方面的運氣?我有興趣做同樣的事情。謝謝 – 2015-01-06 14:13:47

回答

1

您是否嘗試過使用像Novell的第三方庫(http://www.novell.com/developer/ndk/ldap_libraries_for_c_sharp.html)?它帶有源代碼和MIT許可證。

+0

是的,我已經嘗試了幾個NuGet軟件包以及第三方圖書館。他們都將在桌面(WPF/Winforms)應用程序上工作,但不在Silverlight(WP)應用程序上。 – 2013-06-04 15:38:52

+0

這很不幸。但是,Novell的庫帶有源代碼,而且我知道它直接處理套接字。可能有一些數據結構丟失,但這應該是微不足道的解決,雖然這可能實際上比編寫Web服務更多的工作。 – blazee 2013-06-05 06:29:54

1

REST風格的Web服務會做你想做的。

有Web服務器運行Tomcat/Windows的IIS(取決於您希望如何實現它)通過HTTPS

發送請求到Web服務,然後在Web服務器連接到LDAP服務器進行查詢。

+0

這就是我目前的做法,但我想通過Web服務在客戶端進行登錄:/ – 2013-06-09 20:19:17

+0

爲什麼不對數據庫進行身份驗證。並根據你正在進行身份驗證的數據庫,我相信你可以讓他們對LDAP進行身份驗證。 – DamianB 2013-06-10 10:33:32

+0

因爲我沒有可用的數據庫(期望用於LDAP)我目前正在開發的應用程序正在使用我的大學提供的Webserivce。爲了驗證用戶名,我希望通過LDAP登錄它們。 – 2013-06-10 11:11:59