有没有简单的方法可以在 openldap 中设置特定时间的帐户有效期?

有没有简单的方法可以在 openldap 中设置特定时间的帐户有效期?

我正在解决 openldap 的问题。我的目标是通过在 openldap 中创建帐户并设置一个时间,该帐户的有效期是多久。因此,在此时间到期后,ldap 将返回此帐户不存在/不再有效等信息。我在谷歌上搜索,但没有找到任何看起来容易实现的东西。是我眼瞎还是这里真的没有这样的东西?

感谢大家的帮助和时间。

答案1

您可以使用覆盖来实现这一点。它被称为“dds”/“动态目录服务”。您可以在此处找到更多信息:http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Directory%20Services

此外,还有一个手册页:man 5 slapo-dds :)

您可以使用 cn=config 将其添加为新注释来启用它,例如这样:

dn: olcOverlay=dds,olcDatabase={1}mdb,cn=config objectClass: olcDDSConfig olcOverlay: dds olcDDSstate: TRUE olcDDSmaxTtl: 604800 olcDDSminTtl: 86400 olcDDSdefaultTtl: 86400 olcDDSinterval: 3600 olcDDStolerance: 0 olcDDSmaxDynamicObjects: 10

在这种情况下olcDatabase={1}mdb,cn=config,数据库代表您的 DIT(数据信息树,您的主 LDAP 目录)。请检查节点的olcSuffix属性以确保无误。

一旦启用此覆盖,您可以在DIT中创建一个新节点并添加辅助对象类dynamicObject;这样,您的新节点就有指定的生命周期。

例子:

dn: cn=user1,ou=users,dc=example,dc=com objectClass: person objectClass: simpleSecurityObject objectClass: dynamicObject cn: user1 userPassword: password

一旦与 memberOf-overlay ( man 5 slapo-memberof) 结合,此覆盖将变得更加强大。请务必查看!

相关内容