C# LDAPSで Active Directory に接続

こんにちは。サイオステクノロジーの木村です。

今回は、C#にて、LDAPSでActive Directoryに接続する方法をご紹介します。

(Active DirectoryをLDAPS化する方法についてご興味のある方は、こちらの記事をご参照ください。
 Active Directory LDAPS(LDAP over SSL/TLS)有効化

LDAP接続

まずはLDAPで接続してみます。
C#にて、Active Directoryに接続するには、System.DirectoryServices.DirectoryEntryクラスを使います。
Active Directoryに接続してユーザーを検索し、取得した情報を表示する実装は以下のようになります。
(接続先、クライアントを認証するときに使用するユーザー名・パスワードの部分を、接続する環境に合わせて読み替えてくください。)

パケットのキャプチャをとってみてみると、LDAPで接続されていることがわかります。

LDAPS接続

では次にLDAPS接続です。
LDAPS接続の場合でも、コードの実装は上記LDAPの時と一緒です。
LDAPS接続にする場合は、以下のように接続先URIにポート番号「636」をつけた形で指定します。
<例>
LDAP://adhost.example.com:636/OU=class1,DC=adhost,DC=example,DC=com

パケットのキャプチャをとってみてみると、LDAPSで接続されていることがわかります。

接続先URIにポートを指定しない場合は、デフォルトの389が使用されます。
636を指定することで、LDAPS接続となります。
ちなみに、LDAPS接続にする場合は、接続先のドメイン名と証明書のCommon Nameが一致していないと接続できないのでご注意ください。

ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

3人がこの投稿は役に立ったと言っています。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です