トップ回答者
ユーザ情報を参照するためのLDAP認証の開発について

質問
-
回答
-
http://www.microsoft.com/japan/msdn/net/security/SecNetHT02.aspx
このあたりが参考になりそうですね。
DirectorySearcherを利用してLDAPの検索もできるみたいです。
-
小野さんが提示してくれたURLに載っているのとは異なるところもありますが参考までに。
指定したユーザを検索
Private Function FindUser(ByVal UserLogonName As String) As DirectoryEntry
Using Root As New DirectoryEntry("LDAP://DC=○○,DC=○○,・・・")
Using Searcher As New DirectorySearcher(Root)
Searcher.Filter = String.Format("(&(objectClass=user)(name={0}))", UserLogonName)
Dim Result As SearchResult = Searcher.FindOne()
If Result Is Nothing Then
Return Nothing
Else
Return Result.GetDirectoryEntry()
End If
End Using
End Using
End Function
指定した部署名のユーザのリストを取得
Private Function GetUsers(ByVal Department As String) As List(Of DirectoryEntry)
Using Root As New DirectoryEntry("LDAP://DC=○○,DC=○○,・・・")
Using Searcher As New DirectorySearcher(Root)
Searcher.Filter = String.Format("(&(objectClass=user)(department={0}))", Department)
Dim ResCol As SearchResultCollection = Searcher.FindAll()
Dim EntryList As New List(Of DirectoryEntry)
For Each Result As SearchResult In ResCol
EntryList.Add(Result.GetDirectoryEntry())
Next
Return EntryList
End Using
End Using
End Function
すべての返信
-
http://www.microsoft.com/japan/msdn/net/security/SecNetHT02.aspx
このあたりが参考になりそうですね。
DirectorySearcherを利用してLDAPの検索もできるみたいです。
-
小野さんが提示してくれたURLに載っているのとは異なるところもありますが参考までに。
指定したユーザを検索
Private Function FindUser(ByVal UserLogonName As String) As DirectoryEntry
Using Root As New DirectoryEntry("LDAP://DC=○○,DC=○○,・・・")
Using Searcher As New DirectorySearcher(Root)
Searcher.Filter = String.Format("(&(objectClass=user)(name={0}))", UserLogonName)
Dim Result As SearchResult = Searcher.FindOne()
If Result Is Nothing Then
Return Nothing
Else
Return Result.GetDirectoryEntry()
End If
End Using
End Using
End Function
指定した部署名のユーザのリストを取得
Private Function GetUsers(ByVal Department As String) As List(Of DirectoryEntry)
Using Root As New DirectoryEntry("LDAP://DC=○○,DC=○○,・・・")
Using Searcher As New DirectorySearcher(Root)
Searcher.Filter = String.Format("(&(objectClass=user)(department={0}))", Department)
Dim ResCol As SearchResultCollection = Searcher.FindAll()
Dim EntryList As New List(Of DirectoryEntry)
For Each Result As SearchResult In ResCol
EntryList.Add(Result.GetDirectoryEntry())
Next
Return EntryList
End Using
End Using
End Function -
こんにちは。中川俊輔 です。
どっとねっとふぁんさん、mitchinさん、回答ありがとうございます。
tanuyoshi さん、フォーラムのご利用ありがとうございます。
有用な情報と思われたため、
どっとねっとふぁんさん、mitchinさんの回答へ回答済みチェックをつけさせていただきました。
回答済みチェックが付くことにより、有用な情報を探している方が情報を見つけやすくなります。
有用な情報と思われる回答があった場合は、なるべく回答済みボタンを押してチェックを付けてください。tanuyoshi さんはチェックを解除することもできますので、ご確認ください。
それでは!