phpのLDAPモジュールを使用せずにLDAP経由でユーザを認証する方法はありますか?残念ながら、ほとんどの共有ホストはLDAPモジュールを持っていないようです。私は現在、localhostのldapモジュールで次のような作業をしていますが、cURLやfile_get_contentsなどの代替メソッドで同じことを達成したいと思います。ありがとうございますカールでPHPとLDAPを使って認証
$ldap_connect = ldap_connect("server.ip", 389);
ldap_set_option($ldap_connect, LDAP_OPT_NETWORK_TIMEOUT, 4);
$ldap_fqdn_user=$samaccountname. "@" . $ldap_domain;
if (!($bind = ldap_bind($ldap_connect, $ldap_fqdn_user, $ldap_password))) {
ldap_close($ldap_connect);
echo "Incorrect Username or Password";
} else {
ldap_close($ldap_connect);
echo "Correct username and password";
}
を提供するためのhttp://www.forumsys.com/tutorials/integration-how-to/ldap/online-ldap-test-server/のおかげで一般的にLDAP認証の内部/オンサイト方式でいえば、共有ホストはこれを許可する理由を持っていないだろう。あなたが行うことができる最善のことは、内部的にLDAPサーバーへの認証要求を処理するローカルサーバーにAPIを持たせることです。それ自体がセキュリティリスクです。 – MackieeE
ofcあなたはsocket_ apiで手動でLDAPプロトコルを再実装することはできますが、多くの作業が必要になります – hanshenrik
純粋にPHPを使用してLDAPサーバプロトコルを実装できますが、したくないです。したがって、PHPのLDAPモジュールを持たない設定をサポートしないことが賢明な決断です。そこにいるすべての貧弱なセットアップをサポートするために、かかとに頭を下げる必要はありません。 – Mjh