我可能遗漏了 LDAP 过滤器语法中的一些简单内容,我试图accesslog
通过属性查询 OpenLDAP 中覆盖创建的数据库reqStart
。我可以根据相等性进行过滤,但无法根据范围或部分值进行过滤。目标是查找特定日期/时间之后的所有访问日志条目。
当值为 时reqStart: 20180213144256.000008Z
,过滤器(reqStart=20180213144256.000008Z)
可以工作,但以下值不工作:
(reqStart>=20180213000000)
(reqStart=20180213*)
答案1
我问得太早了;我通过回到手册页(man slapo-accesslog
)并重新阅读找到了答案。
reqStart
使用的generalizedTime
语法在快速浏览后ldapwiki.com显示我需要附加时区才能与进行比较>=
。以下是有效的过滤器:
(reqStart>=20180213000000Z)
(reqStart>=20180213000000-0600)
此语法的最低要求是century year month day hour timezone
,因此以下是可以工作的最低要求:
(reqStart>=2018021300Z)
或者对于我的时区偏移量 -06:00:
(reqStart>=2018021300-0600)
有关语法的更多详细信息,请参见上面发布的链接。