0

我的目标是将帐户移至另一个 OU。我的理解是以下代码应该可以完成这项工作。但是,它返回false。没有错误、警告或异常。如何调试为什么这不起作用?

secure_ldap.rename(
    olddn: self.dn, 
    newrdn: "CN=#{self.cn}", 
    delete_attributes: true, 
    new_superior: "#{ou}"
  )
4

2 回答 2

1

好吧,一种方法可能是将prypry-byebug添加到您的应用程序中。修改您的代码以包含binding.pry然后运行您的应用程序:

Frame number: 0/0

From: ./test.rb @ line 1 :

 => 1: binding.pry
    2: secure_ldap.rename(
    3:   olddn: self.dn,
    4:   newrdn: "CN=#{self.cn}",
    5:   delete_attributes: true,
    6:   new_superior: "#{ou}"

=> 

现在使用step逐行逐步执行。它将允许您进入 net-ldap 内部的rename方法调用,例如检查该方法调用中的局部变量。

于 2018-12-21T22:15:21.157 回答
0

该错误不是红宝石错误。在处理与 LDAP 等系统程序的 ruby​​ 标准库接口时,请参阅它自己的文档源。

在您的情况下,您可能正在寻找https://ldap.com/ldap-dns-and-rdns/,它解释了要使用的字符串以及需要转义的字符串。

于 2018-12-24T12:47:25.347 回答