【问题标题】:Convert a Base64 LDIF file to plaintext (for import)将 Base64 LDIF 文件转换为纯文本(用于导入)
【发布时间】:2017-03-30 12:21:20
【问题描述】:

我有一个具有多值 Base64 编码属性的 LDIF 文件,我想将其转换为非 Base64 编码的语法。如何做到这一点?

上下文

LDIF文件是这样的:

dn: cn=johndoe,ou=clients,ou=management,dc=example,dc=com
changetype: modify
replace: foobarStatus
foobarStatus:: ZW5hYmxl... (Base64 string) ...ZCA9IHRydWU

解码后的Base64字符串在哪里:

market = "US"
mgmt.account.mode = "X12"
foo.field = "Something"
bar.field = "Something else" 
...

问题

当我尝试通过ldapmodify 将此 LDIF 文件导入 LDAP 服务器时,出现错误:

ldapmodify: invalid format (line 4) entry: "cn=johndoe,ou=clients,ou=management,dc=example,dc=com"

我一直在尝试解决这个问题,但找不到错误。它可能是某个地方的一些虚假字符。因此,我想到了转换 LDIF 的 Base64 部分并以这种格式导入。属性值不包含任何不可打印的 ASCII(例如重音字母),因此它应该可以正常工作。

注意

这可能是XY problem,所以如果有人有其他建议,我很乐意阅读。

【问题讨论】:

    标签: linux ldap base64 ldif


    【解决方案1】:

    原来ldapmodify 不喜欢排长队。所以这里拆分Base64代码后

    foobarStatus:: ZW5hYmxl... (Base64 string) ...ZCA9IHRydWU
    

    到多行 79 个字符或更少,ldapmodify 能够导入它。

    这解决了我原来的问题。我将解决方案留给未来的读者。

    【讨论】:

      猜你喜欢
      • 2016-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-06
      • 2010-10-20
      • 1970-01-01
      相关资源
      最近更新 更多