在不知道哈希函数的情况下更改 ldap 密码
change ldap password without knowing the hash function
我目前正在尝试使用 ruby 更改 ldap 帐户的密码。由于我之前使用 OpenDJ 和 Java,因此可以触发密码更改请求,该请求仅以纯文本形式获取新密码,但最后使用 OpenLDAP 选项中设置的功能将其设置为加密密码。
但是ruby,我只是想出了如何直接更改密码属性。
我可以用 ruby 和我在 java 中用 OpenDJ 做的一样吗?
OpenDJ 中修改密码的操作是一个LDAP 操作,与您在客户端使用的语言无关。
所以是的,您应该能够对 Ruby 和 Java 执行相同的操作。
如何在 Ruby 中执行此操作取决于 Ruby 中提供的 LDAP 支持和库,很抱歉,我没有这方面的经验。
如果您使用 ruby-ldap gem,则以下代码应该有效:
modifications = [
LDAP.mod(LDAP::LDAP_MOD_REPLACE, 'userPassword', ['cleartextpassword']),
]
begin
conn.modify("uid=jdoe, dc=example, dc=com", modifications)
rescue LDAP::ResultError
exit
end
我目前正在尝试使用 ruby 更改 ldap 帐户的密码。由于我之前使用 OpenDJ 和 Java,因此可以触发密码更改请求,该请求仅以纯文本形式获取新密码,但最后使用 OpenLDAP 选项中设置的功能将其设置为加密密码。
但是ruby,我只是想出了如何直接更改密码属性。
我可以用 ruby 和我在 java 中用 OpenDJ 做的一样吗?
OpenDJ 中修改密码的操作是一个LDAP 操作,与您在客户端使用的语言无关。 所以是的,您应该能够对 Ruby 和 Java 执行相同的操作。 如何在 Ruby 中执行此操作取决于 Ruby 中提供的 LDAP 支持和库,很抱歉,我没有这方面的经验。
如果您使用 ruby-ldap gem,则以下代码应该有效:
modifications = [
LDAP.mod(LDAP::LDAP_MOD_REPLACE, 'userPassword', ['cleartextpassword']),
]
begin
conn.modify("uid=jdoe, dc=example, dc=com", modifications)
rescue LDAP::ResultError
exit
end