회사 LDAP 디렉토리는 Snow Leopard Server Open Directory 설정에 있습니다. 이 ldapsearch
도구 를 사용하여 외부 인증을 위해 다른 외부 LDAP 서버로 가져 오기 위해 .ldif 파일을 내보내 려고합니다 . 기본적으로 내부 및 외부에서 동일한 자격 증명을 사용하려고합니다.
나는 ldapsearch
"Users"OU에있는 모든 것의 내용과 속성을 제공하고 필요한 속성으로 만 필터링했습니다.
ldapsearch -xLLL -H ldap://server.domain.net /
-b "cn=users,dc=server,dc=domain,dc=net" objectClass /
uid uidNumber cn userPassword > directorycontents.ldif
원격 OpenLDAP 서버로 가져올 수있는 사용자 및 속성 목록이 표시됩니다.
dn: uid=username1,cn=users,dc=server,dc=domain,dc=net
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: organizationalPerson
uidNumber: 1000
uid: username1
userPassword:: (hashedpassword)
cn: username1
그러나 "컨테이너"대신 OD "그룹"에서 동일한 쿼리를 시도하면 결과는 다음과 같습니다.
dn: cn=groupname,cn=groups,dc=server,dc=domain,dc=net
objectClass: posixGroup
objectClass: apple-group
objectClass: extensibleObject
objectClass: top
gidNumber: 1032
cn: groupname
memberUid: username1
memberUid: username2
memberUid: username3
내가 정말로 원하는 것은 그룹 멤버십을 기준으로 필터링 된 상위 예제의 사용자 목록이지만 멤버십은 사용자 계정 측이 아닌 그룹 측에서 설정 한 것처럼 보입니다. 이것을 걸러 내고 필요한 것을 내보내는 방법이 있어야합니다.
memberOf
는 작동 속성이므로 명시 적으로 요청해야합니다. A는 단순한ldapsearch
여기에 제안처럼 반환하지 않습니다memberOf
이 존재하더라도. 또한 언급해야한다memberOf
나는 이것이 OS X 및 오픈 디렉토리에서 처리하는 방법을 모른다하더라도 오버레이는 일반적으로, 기본적으로 사용되지 않습니다.