前言
在之前有寫一篇「C# User LDAP 帳號密碼驗證」,
但在使用者是使用 uid={userId},ou=people,dc=gss,dc=com 的這種串法,
很多時候,我們跟本就不知要整個怎麼串,使用上也很不方便。
解法
要知道那個可以先透過 Active Directory Explorer 來看,
但還是不方便。
在 .NET Core AD 帳密驗證 這篇可以直接給帳號/密碼就可以驗證呀!
所以 … 使用 System.DirectoryServices.Protocols.LdapConnection 也是可以的哦!
程式如下,
1 | //port number: 636 or 389 |
如果帳密不對的話,就會馬上噴「提供的認證無效, 」的錯誤。
如果你發現,連很久,然後出現「LDAP 伺服器無法使用, ErrorCode:81」的錯誤,請檢查那台 DC Server 是不是沒有開 Port 讓你連,或是連的 Port 是否正確。
參考資料
C# User LDAP 帳號密碼驗證
Active Directory Explorer
.NET Core AD 帳密驗證