active directory是微软的目录服务器,里面存放了很多信息,包括联络人。而mac os x 自带的address book支持ldap。两者如何结合?
经查阅信息,发现active directory支持ldap v3协议,这样就有希望了.
ldap默认端口389,但是active directory的真正有用端口是3268.(在windows的通讯簿里查到的,呵呵)
了解了ldap原理以后,配置起来非常简单.
server: 填域控制器的ip(一般两个一起装)
search base:填dc的信息 (我用jxplorer查到的)
port :3268
SCOPE :subtree
auth type:simple
username: domainname\username
password: 自己猜
记得searchbase里不要有中文,会崩溃的.
其次,还可以通过命令行工具来访问active directory,例如ldapsearch工具。
基本语法如下:
ldapsearch -b " baseDN" [ options ] "filter" [ attributeName ... ]
-b 表示搜索的范围
[options] 用于指定一些参数,这些参数和搜索动作本身无关,都是一些为配合搜索,而设置的参数,例如ldap服务器地址,用户名,口令,输出的信息格式...
"filter" 过滤条件,或者说是搜索条件
[attributeName]因为ldapsearch 搜索出来的结果是一个个对象,对象都有属性。ldapsearch对象的属性有时候还挺多,通过指定attributeName,可选择输出我们关心的属 性。
如果用linux,使用以下命令:
ldapsearch -h hostname -LLL -D 'user@domain.com' -W -b'dc=foo,dc=bar,dc=com' "name=tom*"
如果用mac,就使用以下命令:
ldapsearch -h hostname -x -LLL -D 'user@domain.com' -W -b 'dc=foo,dc=bar,dc=com' "name=tom*" mail telephone
以上命令在一定的区域内查找名字包含tom的对象,并且只提取mail,和 telephone这两类属性
阅读(3328) | 评论(0) | 转发(0) |