ユーザーを複数の属性と照合するように NSS フィルターをカスタマイズするにはどうすればよいですか?

ユーザーを複数の属性と照合するように NSS フィルターをカスタマイズするにはどうすればよいですか?

私の状況: 認証バックエンドとして PAM を使用する OpenSMTPD インスタンスがあります。私の PAM 構成では、LDAP ディレクトリに対してユーザーを認証するために NSS を使用します。

uidNSS がユーザーをその属性またはLDAP 属性のいずれかで照合するようにしたいと思いますmail

私が見たログによると、デフォルトのフィルタは(&(objectClass=posixAccount)(uid=xxxxxx)) xxxxxはユーザーログインです

マニュアルnslcd.confページにはfilterパラメータについて説明されていますが、変数を使用する方法はないようです。さらに、私が設定したフィルタは(uid=xxxxx)最終的に(例えば、filter passwd (foo=bar)設定ファイルで設定した場合、ユーザーを一致させるために使用されるフィルターは次のようになります(&(foo=bar)(uid=xxxx)))

(|(uid=$login)(mail=$login))ユーザーをそのuidLDAPmail属性に基づいて一致させるようなコードを記述できるようにしたいと思います。

本当に不可能なのでしょうか?回避策はありますか?

関連情報