问题标签 [ldif]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2015 浏览

java - 我如何获得 LdapAttributes

我正在尝试使用 Spring 将 ActiveDirectory 记录导出到 LDIF 格式的文件中。

我找到了很多关于解析LDIF 文件的信息,但关于导出到 LDIF 的信息却相对较少。使用 Spring 有一个LdapAttributes类,其toString()方法返回 LDIF 格式的字符串,但我首先看不到从哪里获取LdapAttributes实例。我没有看到任何东西LdapTemplate

希望该框架提供了一种简单的方法来实现这一点,而不是我必须自己构建LdapAttributes对象。

0 投票
1 回答
802 浏览

java - LDAP LDIF Java 解析和换行

我有一些将 excel 表转换为 LDIF 语句的代码。我很好奇,当我创建一个新行时,是否有正确的方法来执行它,以便在我尝试运行 LDIF 时不会出现任何错误?现在我在每一行的末尾都有 \r\n 。有什么建议吗?谢谢。

0 投票
1 回答
3315 浏览

escaping - LDIF 值中需要转义哪些字符?

以下是到目前为止我很确定需要转义的字符:

  • \r
  • \n
  • \
  • ,
  • ;
  • "
  • '
  • [
  • ]
  • >
  • <
  • +

我已经在互联网上进行了梳理,但没有找到(全面的)列表。

虽然我知道我可以仔细梳理所有相关的 RFC,但我:

  1. 不要相信自己能找到一切,
  2. 没时间,而且
  3. 我很确定这是外面有人已经记住的东西。

编辑:

哦,这就是我在该列表中获得一些值的地方。

0 投票
2 回答
393 浏览

python - 使用多行正则表达式匹配 LDAP 条目时遇到问题

我有多个带有 LDAP 条目的日志文件,我试图仅匹配在某个日期具有 createtimestamp 的条目,但捕获整个条目,而不仅仅是时间戳。条目如下:

问题是我得到了所有在我想要的条目之前的条目。

这是表达式:

我尝试了其他一些表达式,但我要么只得到 createtimestamp 要么得到不需要的条目。有任何想法吗?

0 投票
2 回答
5961 浏览

java - 如何使用 unboundid-ldap-sdp 导入 ldif 文件?

我从 LDAP 服务器导出了以下 ldif 文件,现在正在尝试导入它,以便可以复制从中导出它的目录:

我正在尝试使用

我收到以下错误,有人知道我做错了什么吗?

非常感谢!

0 投票
1 回答
180 浏览

file - 在 AWK 的帮助下生成 Ldif(无法解析输入文件)

伙计们,我需要根据 10k 记录列表在 ldap 上添加一系列条目。我有以下代码:

list的输入如下:

样本预期输出:

我希望输出 $0 将替换为列表的名称,但它不起作用。

提前致谢!

0 投票
2 回答
483 浏览

awk - 使用 awk 从 LDIF 创建后缀别名文件

我想从ldapsearch.

LDIF 文件包含大约 10,000 个用户的记录。每个用户至少有一个proxyAddresses属性条目。我需要为每个满足以下条件的 proxyAddress 创建一个别名。创建的别名必须指向 sAMAccountName@other.domain。

  • 类型为 SMTP 或 smtp(不区分大小写)
  • 正是 contoso.com

我不确定 LDIF 文件中的属性顺序是否一致。我认为我不能假设 sAMAccountName 总是最后出现。

示例输入文件

示例输出文件

理想的解决方案

我希望看到使用的解决方案awk,但其他方法也可以接受。以下是对我来说最重要的品质,按顺序排列:

  1. 简单易读。自我记录比单行记录更好。
  2. 高效的。这将被使用数千次。
  3. 惯用语。如果不损害前两个目标,那么“以 awk 方式”执行它会很好。

我试过的

我已经设法开始了这一点,但我很难理解 awk 的细节。

  • 我尝试使用 csplit 为 LDIF 输出中的每条记录创建单独的文件,但这似乎很浪费,因为我最后只想要一个文件。
  • 我尝试RS=""在 awk 中设置以获取完整的记录而不是单独的行,但后来我不确定从那里去哪里。
  • 我尝试使用 awk 将大 LIDF 文件拆分为每个记录的单独文件,然后使用另一个 shell 脚本处理这些文件,但这似乎很浪费。
0 投票
0 回答
133 浏览

c# - 如何在 .NET 中解析 LDAP 数据交换格式字符串?

说,我有一个这样的 LDIF 字符串:CN=Subject Name, OU=Company, O=Subject Name, STREET=Main St, STREET=123, L=City, S=WA, PostalCode=98001, C=US

是否有任何框架方法可以使用 C# 将其解析为其组成组件?

0 投票
3 回答
3111 浏览

python - Python算法对大块数据进行排序

我一直在网上寻找一种方法来对我拥有的数据类型(LDIF 文件)进行排序,但我还没有找到我想要的东西。已经有一些程序可以完成这种排序,但是它们在处理非常大的数据集时会失败。好吧,对我来说,这些块的价值非常大,大约为 2 GB,即使我有 6 GB 的 RAM 和更多 GB 的交换空间,使用 ldifsort.pl 脚本也会耗尽内存。所以我希望编写一个程序,将数据块存储到硬盘驱动器,对内存中的键进行排序,然后按排序顺序重新组合块。而且我想使用python3,因为我正在尝试学习该语言。因此,如果有人对基本策略或使用 python3 执行此操作的具体方法有建议,我将非常感谢您的帮助。

我有包含 LDAP 数据的大型文本文件,基本上采用(非常简化的)形式:

每个订阅者还有另外三个与之关联的块(我的示例代码只显示了与订阅者关联的另一个块),我想在排序完成后将所有四个块放在一起。

因此,如果我按此顺序读取 dn(为简洁起见,隐藏了与 dn 关联的数据):

我希望输出为:

我的一个想法是使用 sqlite3 在 python 读取数据时存储数据,然后在 python 中对键进行排序,然后使用查询再次从 sqlite 提取数据并将数据写入文件。但我担心在 sqlite 中搜索键所花费的时间会过多。然后我想我可以在插入数据的同时对sqlite中的数据进行排序,但是sqlite似乎不支持这个,我不知道是否有另一个数据库系统支持。

任何帮助或方向表示赞赏。

感谢 Zach 提出的仅使用 GNU 排序而不是数据库系统的建议。这是我在他的帮助下开发的解决方案。

awk -f ldifformatter.awk LDAP 数据文件*.ldif | 排序-t \| -k1 | sed '1d;s/|/\n/g' > sorted.txt

其中 ldifformatter.awk 用“|”交换所有换行符 除了用于排序的顶级 dn 之外。

谢谢,生锈

0 投票
2 回答
2185 浏览

ldap - 在 inetOrgPerson 的 userSMIMECertificate 属性中添加证书

我将使用 LDAP 为我的电子邮件发布证书。我已经在 Windows 2012 上启动并运行了 LDAP (AD LDS)。我将使用 ldif 文件添加记录。

这里是它的内容

我一直在编译我的 ldif 文件。据我了解,我需要在 Base64 中添加一些二进制编码,并带有一些前缀 {CERT} 或其他东西。

我的问题是

  1. 这个 ldif 文件会对目录进行修改吗?
  2. userSMIMECertificate除了领域 ,我有问题吗?
    • 例如,我在域对象中使用了 dc 两次,可以吗?
    • 我错过了其他重要的线路吗?
  3. 将证书内容放入的确切语法是什么userSMIMECertificate?(我已经进行了搜索,但找不到示例)