GoogleでLDAP認証
GoogleのLDAPクライアントを作成し、証明書を取得。
24時間待って作業開始
Linuxで確認できました。
2段階認証は無視されますので、よろしく。
このままではapacheで動きません。PHPの動作環境の問題です。スクリプトにしてsystem()関数で呼び出せば動きます。
<?php
// Ldapサーバー
$ldap_server = "ldaps://ldap.google.com";
// Ldapユーザー
$ldap_user = "userid";
$ldap_password = "password";
// ベースのDN
$base_dn = "OU=Users,DC=hogehoge,DC=ac,DC=jp"; // DN
//ldap_set_option(null, LDAP_OPT_DEBUG_LEVEL, 7);
// コネクション接続
$ldapconn = ldap_connect($ldap_server);
if(!$ldapconn){
echo "コネクション接続できません";
exit;
} else{
// バインド接続
ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option(NULL, LDAP_OPT_X_TLS_CERTFILE, "/var/www/certs/Google.crt");
ldap_set_option(NULL, LDAP_OPT_X_TLS_KEYFILE, "/var/www/certs/Google.key");
$ldapbind = @ldap_bind($ldapconn, "uid=" . $ldap_user . "," . $base_dn, $ldap_password);
if(!$ldapbind){
//コネクション切断
ldap_unbind($ldapconn);
echo "ログイン失敗";
exit;
} else {
echo "ログイン成功";
}
}
この記事が気に入ったらサポートをしてみませんか?