如何使用 Applescript 或 Perl 查询 Exchange 全局地址列表?



我想从Exchange的全局地址列表中提取一些地址,但完全不知道从哪里开始。

我使用的是Mac,所以想法是使用Applescript,但我甚至不明白如何连接到GAL。

我也找不到任何例子。这里有人知道如何使用Applescript处理Exchange的全局地址列表的一些示例吗?或者也许在 Bash 或 Perl 中?

对于什么版本的 Exchange ?除了 FindPeople 之外,EWS 没有提供任何真正好的方法来执行此操作,它要求您具有全局地址列表的 GUID。一般来说,在Mac上使用LDAP是一个更好的主意,看看ldapsearch,看看 https://its-a-feature.github.io/posts/2018/01/Active-Directory-Discovery-with-a-Mac/,然后使用类似

(& (mailnickname=*)(objectClass=user)) 

如果您使用的是 Office365,请使用图形 API,该 API 使您可以直接访问基础目录。

我遇到的主要问题是为我的情况找到LDAP服务器。

最后,我找到了如何执行此操作的信息,这很简单:

dig -t SRV +short _ldap._tcp.my.do.main

当我拥有服务器名称(或名称(时,只需进行身份验证和浏览即可找到所需的信息。

ldapsearch -h "$LDAP_SERVER" -p "$LDAP_PORT" -b "$USER_BASEDN" -D "$LDAP_USER" -w "$PASSWD" "(&(QUERY))"

最新更新