PHPでLDAP認証を行う
自分がPHPで作成するWeb系システムは今までWebシステム毎のアカウントを作成してましたので、今回からLDAP(ActiveDirectory)で認証を行おうと思いました。PHPとLDAPの連携は技術的には今更ですがw
プログラムはあまり深く考えて作ってないのですが、これを利用して応用してみてください。
認証が成功すると『認証成功』と出ます。
ちなみに、ファイルはindex.phpとして作っておりますので、別名で行う場合は、「form action=""」部分を変更してください。
<?php $ldap_host = "DC1"; // ドメインコントローラーを指定します $ldap_port = "389"; // ポートを指定します $ldap_domain = "@workdomain"; // @以降にドメイン名を指定します。実際の認証の際には、この文字列がユーザー名と結合されます。 $user = $_POST["user"]; $pass = $_POST["pass"]; $user = $user.$ldap_domain; $ldap_conn = ldap_connect($ldap_host, $ldap_port) or die("サーバーに接続できません"); if($ldap_conn){ $ldap_bind = ldap_bind($ldap_conn, "$user","$pass"); if($ldap_bind){ echo "認証成功"; }else{ echo "認証失敗"; } }else{ echo "サーバーに接続できません"; } } ?> <form action="index.php" method="post"> USER:<input type="text" name="user"/><br/> PASS:<input type="password" name="pass" /><br/> <input type="submit"/> </form>
ディスカッション
コメント一覧
まだ、コメントがありません