ActiveDirectoryのパスワードでBASIC認証させる

投稿日: 2011年05月24月

ActiveDirectoryのパスワードでBASIC認証させるApache設定の覚書。

ApacheのLDAP認証モジュールを使用する。

Apacheのコンパイル時に下記のようにオプションを付ける。多いな。全部必要じゃないかも。

./configure --with-ldap --enable-ldap --enable-authnz-ldap --with-ldap-include=/usr/include --with-ldap-lib=/usr/lib/

..htaccessやhttpd.confに下記のように記述。

AuthType Basic
AuthName "ActiveDirectory Auth"
AuthBasicProvider ldap
AuthLDAPURL "ldap://ad1.domain.example.com:389 ad2.domain.example.com:389/OU=hoge,DC=domain,DC=example,DC=com?sAMAccountName?sub?(objectClass=*)"
AuthLDAPBindDN "domain\apache"
AuthLDAPBindPassword "********"
AuthzLDAPAuthoritative Off
Require ldap-group CN=groupname,OU=groups,DC=domain,DC=example,DC=com
# require ldap-user "miyauchi"

以下の点は自分の環境に合わせる

  • ActiveDirectoryに認証用のユーザ(上記例ではapache)を作っておく。
  • ドメイン名はdomainと仮定。
  • 認証サーバがad1.domain.example.com、ad2.domain.example.comの2台あると仮定。
  • groupnameグループに属するユーザを許可している。

上記はApache2.2の場合。2.0以前とは異なる点があるので注意。

上記の例だと2.0ではldap-groupではなくgroupを使う。AuthBasicProviderディレクティブが不要。

LDAP認証を使う場合、Kerberos認証使った自動ログオンほど利便性はない。

その代わりに対応しないブラウザでも使えるというメリットがある。

名前:宮内 はじめ

Code for Nagoya名誉代表

E2D3名古屋支部長

プログラマーです。GISやデータビズが好きです。このサイトは宮内の個人的なメモです。

プロフィール

お問い合わせ