可能な限り単一の資格情報に近づくよう努めています。利用可能な認証メカニズムがかなり制限されているWebアプリケーションがありますが(幸いにも)管理者REMOTE_USER
がhttpd
。
匿名バインドまたは共有資格情報から選択する代わりに、要求するユーザーの資格情報を使用して認証するようにmod_authnz_ldapを構成する方法はありますか?
これが私が現在持っているものです:
<Location />
AuthzLDAPLogLevel debug
AuthType Basic
AuthBasicProvider ldap
AuthName "Active Directory"
AuthzLDAPAuthoritative off
AuthLDAPBindDN CN=jad,DC=xxx,DC=com
AuthLDAPBindPassword xxx
AuthLDAPURL ldap://xxx.xxx.64.71/DC=xxx,DC=com?samaccountname?sub
require valid-user
</Location>
xxx
タグエディタ。既定では、上記の方法はユーザーを認証しますが、私のアカウントを使用してADにバインドします。コメントアウトしようとすると、AuthLDAPBindDN
ADAuthLDAPBindPassword
管理者が拒否するように構成した匿名バインディングを実行したいようです。
私の質問は、匿名でバインドするか共有アカウントを使用することから選択するのではなく、認証されたユーザーの資格情報を使用するようにApacheを設定することは可能ですか(ADユーザーが設定したポリシーでは不可能です)。誰かが解雇されたり会社を離れたりした場合、個人アカウントを使用することは明らかに理想的ではありません。
答え1
おそらくAuthLDAPInitialBindAsUser(Apache 2.3.6)が役に立つかもしれません:
サーバーが初期DN照会にデフォルトDNを使用していることを確認する 匿名または次を使用する代わりに、自分のユーザー名でユーザーを認証します。 サーバーに対してハードコードされた資格情報
結合するAuthLDAPInitialBindPattern、次のようなことが機能する可能性があります(テストされていません):
認証タイプの基本 認証基本プロバイダーLDAP 名前「Active Directory」の確認 AuthzLDAP 正式終了 AuthLDAPInitialBindAsUser がオンになりました。 AuthLDAPInitialBindPattern(.+) cn=$1,dc=com 認証LDAPURL ldap://xxx.xxx.64.71/DC=xxx,DC=com?samaccountname?sub 有効なユーザーが必要です