none
VB2005開發的login程式(win form),帳號要如何與AD帳號整合? RRS feed

  • 問題

  • 是的~之前有一篇是有人問 VB.NET 如何與 AD 帳號整合。

    不過小弟回錯篇數, 所以沒人看到... 想想還是重發標題的好。

     

    OK, 正題:依據

    http://support.microsoft.com/kb/326340/

    這篇文章中提到, VB.NET 的使用方式。於是依樣畫葫蘆,先在 VB2005 中增加一個 class,然後把整段 code 貼進去...

    沒想到,出現錯誤訊息如下:

    Warning 1 Namespace or type specified in the Imports 'System.DirectoryServices' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. Make sure the imported element name doesn't use any aliases.

     

    咦! 沒 System.DirectoryServices 可用!?

    可是我按下 F1 查得到耶... VB2005 不能用嗎? 查不到相關說明。

    請指點一下,謝謝。

     

    另外,在電腦已經以 AD 登入了,我又該如何取得 AD 其餘資訊呢?比如說:

    1. 使用者的帳號

    2. 使用者於 Outlook 看得到的通訊錄,裡面的電話分機等等資訊(只要使用者本人的即可)。謝謝。

    2007年7月6日 上午 09:01

解答

  • 你有加入 System.DirectoryService.dll 的參考嗎?

     

    要取得 AD 資訊,要存取到 AD Schema,這個可在 MSDN 上查到。

    2007年7月6日 上午 10:38
    版主

所有回覆

  • 你有加入 System.DirectoryService.dll 的參考嗎?

     

    要取得 AD 資訊,要存取到 AD Schema,這個可在 MSDN 上查到。

    2007年7月6日 上午 10:38
    版主
  • 瞭解!原來是因為在專案裡面沒有加入參考。所以 Imports 自然看不到。

    於是我到 專案 > 內容 > 參考 裡面,將 System.DirectoryServices 加進去。

    之前都沒研究過專案內容裡面有些什麼東西... 謝謝~

     

    2007年7月7日 上午 01:23
  • 遇到問題了!先依照此標題繼續發問,這樣相同的東西才會在一起對吧?

     

    小弟公司的 DOMAIN 是這樣設計的: (這是他們規劃的,我無權干預)

    台灣: aaaa.com.tw

    大陸1廠: bbbb.com

    大陸2廠: ccc.bbbb.com  (是大陸1廠的sub domain)

     

    所以我在上面提到的那個 AD 驗證程式裡面,這樣寫:

    Dim adAuth As LdapAuthentication = New LdapAuthentication(adPath)

    adPath 這樣給:

    台灣: LDAP://DC=aaaa,DC=com,DC=tw

    大陸1廠: LDAP://DC=bbbb,DC=com

    大陸2廠: LDAP://DC=ccc,DC=bbbb,DC=com

     

    adAuth.IsAuthenticated(adDomain, UserName, Password) 這部分,adDomain 這樣給:

    台灣: aaaa

    大陸1廠: bbbb

    大陸2廠: ccc     (因為在 DOS 執行 SET 的時候就是看到 USERDOMAIN=ccc)

     

    程式現況:

    台灣登入自己、大陸1廠帳號OK,登入大陸2廠會出現「使用者帳號或密碼錯誤」

    大陸1廠登入自己、台灣帳號OK,登入大陸2廠會出現「使用者帳號或密碼錯誤」

    大陸2廠登入任何地方帳號,都是出現「系統發生一個錯誤」

     

    看起來是 sub domain 的問題。我該怎樣改寫呢?試過把 adDomain 改成 ccc\bbbb 或 bbbb\ccc 都不行。還是要改 adPath 的部分?可這個我不知道該怎麼做...

    拜託了,謝謝。

    2007年9月12日 上午 02:37