我正在为应用程序开发OpenLDAP密码策略实施。我正在尝试让密码过期,来自OpenLDAP的密码过期通知。
我设置了当前值
$ppolicy_control = array("oid" => "1.3.6.1.4.1.42.2.27.8.5.1","iscritical" => true);
ldap_set_option()
LDAP_OPT_SERVER_CONTROLS
(密码策略控制)
我仍然没有收到ldap_get_option()
的密码政策回复。
我所学到的,OpenLDAP C API在ldap_get_option()方法上没有实现LDAP_OPT_SERVER_CONTROLS
的情况。检查Wireshark上的数据包会显示连接到数据包的ppolicy响应。
是否有任何解决方法可以使用PHP或OpenLDAP C API从OpenLDAP获取密码策略响应?
答案 0 :(得分:0)
使用ldap_control_find()API和宏LDAP_CONTROL_PASSWORDPOLICYRESPONSE将其传递给ldap_parse_passwordpolicy_control()API以从LDAP服务器获取ppolicy响应
伪代码
ctrl = ldap_control_find(LDAP_CONTROL_PASSWORDPOLICYRESPONSE)
调用ldap_parse_passwordpolicy_control(ppolicyinfo.expire,ppolicyinfograce)