まぁよくある話で、社内イントラのシステムでユーザ認証が必要になったのですが、社内ドメインと各々のシステムでユーザ認証を統一したかったのです。
「アレはこのパスワード、コレはこのアカウント名、コッチはメールアカウント」というのはありえないと思っています。で、そんなときは社内ドメインを仕切ってくれているActiveDirectoryさんにお願いしちゃうのが簡単というわけです。
「ADとしゃべりたいならASP.NETで書けよ」と、ごもっともなご指摘をいただきそうな気もするのですが、まぁ数年ぶりにASP.NET書こうとしたらまったく思い出せなかったアプリケーションはLinux上で稼動させたいわけですよ。
以下の例はPython-LDAPを利用してます。
import ldap
conn = ldap.open(“ADサーバ”)
conn.simple_bind_s(“アカウント@ドメイン”,”パスワード”)(97, [])
「(97, [])」と表示されれば認証OKです。認証に失敗すると例外が起きます。ここがスマートじゃないですね。Falseじゃなくて例外が返ってきちゃうので、tryは必須です。TrueかFalseで返ってきてくれればありがたかったです。
日本語ユーザ名とか詳細情報の取得までやりたいのですが、そこまでまだ調べきれてません。。。