LDAP ACL은 사용자가 자신의 사용자 속성만 읽도록 제한합니다.

LDAP ACL은 사용자가 자신의 사용자 속성만 읽도록 제한합니다.

사용자가 자신의 데이터 이외의 다른 데이터에 액세스하는 것을 방지하고 싶습니다.

나는 다음과 같은 간단한 acl(ldif)을 구현하려고 합니다.

dn: olcDatabase={1}mdb,cn=config
olcAccess: {0}to attrs=userPassword by self write by anonymous auth by * none
olcAccess: {1}to attrs=shadowLastChange by self write by self read by * none
olcAccess: {2}to * by self read by * none

이 ldif를 적용하면 더 이상 쿼리하지 않습니다 (objectClass=posixAccount). 마지막 acl을 로 변경하면 to * by * read쿼리는 모든 사용자를 반환합니다.

내가 무엇을 놓치고 있나요?

답변1

기록에 접근하려면 "검색" 권한이 있어야 한다는 것을 알았습니다. ACL을 다음으로 변경했습니다.

dn: olcDatabase={1}mdb,cn=config
olcAccess: {0}to attrs=userPassword by self write by anonymous auth by * none
olcAccess: {1}to attrs=shadowLastChange by self write by self read by * none
olcAccess: {2}to * by self read by * search

이를 사용하면 (objectClass=posixAccount)다른 계정을 표시하지 않고도 쿼리할 수 있습니다.

관련 정보