|
1: 2011-01-08 (土) 20:58:06 maruo |
| + | *Webページのユーザ認証もLDAPで [#lf189950] |
| + | [[htdigestを使用してパスワード認証させてみる]]のページで、既に認証設定はなされておりますが、これまた、認証ユーザ/パスワードは別物。これをLDAPアカウントで認証させてあげれば、LDAPにアカウント登録されている人は、自動的にそのHPにもアクセス権をもつことができます。 |
| | | |
| + | *Apache自体の設定 [#h4073888] |
| + | **/etc/conf.d/apache2 [#x7ab32ef] |
| + | |
| + | APACHE2_OPTSに、-D LDAP -D AUTHNZ_LDAPを追記してあげてください。 |
| + | **HP側での認証の設定。 [#t7921420] |
| + | Gentooの場合は、/etc/apache2/vhosts.d/default_vhost.includeとか、/etc/apache2/vhosts.d/default_ssl_vhost.includeに、閲覧させるHPの設定が書かれているはず。例えばこんなかんじ? |
| + | <Directory /home/var/www/localhost/htdocs/board> |
| + | Options -Indexes FollowSymLinks MultiViews |
| + | AllowOverride All |
| + | SSLRequireSSL ←SSLしかゆるしません(一つ前の設定が残ってるのね) |
| + | AuthType Digest ←MD5ダイジェスト認証を要求 |
| + | AuthName "User Only" ポップアップするパスワード入力窓に表示させるメッセージ |
| + | AuthDigestFile /etc/apache2/userpasswd ←パスワードファイルの指定 |
| + | require valid-user ←パスワードファイルに記述されている全てのユーザが参照できる |
| + | <IfModule mod_access.c> |
| + | Order deny,allow |
| + | Allow from all |
| + | </IfModule> |
| + | </Directory> |
| + | |
| + | 注意です。LDAPを使用する場合は、Digest認証サポートされておりません。Basic認証のみです。なので、ふつーにやってしまうとパスワードがダダ漏れになってしまうので、https側を使用するなどしてほごしてあげましょうね。 |
| + | |
| + | で、うえのディレクティブ記載を、以下の用に変更してあげましょう。 |
| + | <Directory /home/var/www/localhost/htdocs/board> |
| + | Options -Indexes FollowSymLinks MultiViews |
| + | AllowOverride All |
| + | SSLRequireSSL ←SSLしかゆるしません(一つ前の設定が残ってるのね) |
| + | AuthType Basic ←Basic認証です |
| + | AuthName "Please input user and password" |
| + | AuthBasicProvider ldap ←Basic認証基盤をLDAP使用します。 |
| + | AuthLDAPBindDN "cn=syncuser,dc=example,dc=com" ←LDAPにバインドするユーザ指定 |
| + | AuthLDAPBindPassword secret ←LDAPユーザのパスワード |
| + | AuthLDAPURL "ldap://foo.example.com/ou=People,dc=example,dc=example?cn" |
| + | ←BaseDNと検索キーの指定 |
| + | require valid-user |
| + | <IfModule mod_access.c> |
| + | Order deny,allow |
| + | Allow from all |
| + | </IfModule> |
| + | </Directory> |
| + | |
| + | AuthLDAPURLの指定の仕方は、LDAPにおける検索キーなので、ディレクティブの使用方法説明などをじっくり見てやってください。 |
| + | requireの指定の仕方も、valid-user(LDAPに登録されている全ユーザ)、user XXXX(XXXXさんだけ使用を許可する)など出来ますので、試行錯誤してみてください。 |
| + | |
| + | で、再起動します。 |
| + | # /etc/init.d/apache2 restart |