database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
ㆍLDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
LDAP Q&A 2301 게시물 읽기
No. 2301
outlook 주소록 등 연동에서 인증된 사용자만 보도록 하려면 ACL 설정을 어떻게 하면 되나요?
작성자
문태준(taejun)
작성일
2006-10-22 20:58
조회수
8,114

웹메일 주소록에 LDAP 도입을 검토하면서 테스팅을 했었습니다. 상세한 내용은 여기 튜토리얼이나 kldp의 자료를 참고하시구요. 예전 OS인증 테스팅한 내용에 이번에 아웃룩 등 주소록 연동 내용을 추가하였습니다.

http://wiki.kldp.org/wiki.php/LDAP-tip


/etc/openldap/slapd.conf  설정은 다음과 같습니다.


[root@localhost openldap]# diff slapd.conf.orig slapd.conf
71a72
> rootpw {SSHA}HwbKjO6Omoxk2Sswm8NbHZbCx9LxextJ


# grep -v "^#" /etc/openldap/slapd.conf
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/redhat/autofs.schema
include /etc/openldap/schema/redhat/kerberosobject.schema

database ldbm
suffix "dc=isoc,dc=com"
rootdn "cn=Manager,dc=isoc,dc=com"
rootpw {SSHA}HwbKjO6Omoxk2Sswm8NbHZbCx9LxextJ
directory /var/lib/ldap
index objectClass,uid,uidNumber,gidNumber,memberUid eq
index cn,mail,surname,givenname eq,subinitial


#access control
access to attr=userPassword
by self write
by anonymous auth
by dn="cn=manager,dc=isoc,dc=com" write
by * compare
access to *
by self write
by dn="cn=manager,dc=isoc,dc=com" write
by * read

여기서 people 을 ou 에 추가합니다.

dn: ou=people,  dc=isoc, dc=com
ou: people
objectclass: organizationalUnit
objectclass: domainRelatedObject
associatedDomain: isoc.com

이렇게 해서 여러명의 사용자를 추가한 후 아웃룩 등의 주소록에서 접근하면 사용자 인증을 이용하지 않더라도 (아웃룩 익스프레스의 로그인 필요 체크) 누구나 다 정보를 볼 수가 있더군요.


access to *
by self write
by dn="cn=manager,dc=isoc,dc=com" write
by * read

이 부분과 연관이 있는 듯한데 이 부분을 바꾸어주어도 똑같더군요. 이 경우 ACL을 어떻게 설정해야 사용자 인증을 한 후 정보를 볼 수가 있는 것인가요? 


여기서 좀더 나가면 위에서 people 밑에 속한 사람들은 같은 정보를 모두 보여줄 수 있도록 해야하겠네요?

이 글에 대한 댓글이 총 3건 있습니다.

전에 박근오씨가 쓴 자료에 보니 이런 내용이 있군요.

------------------------------------------------------------

defaultaccess none

access to *

             by self write

             by dn=.+ read

             by dn=^$$ read

             by * none


 by dn=.+ read 이말은 무엇일까? dn이 존재하는 즉 dn이 존재하고 패스워드를 제시해서 인증된 사용자에게만 read권한을 주겠다는 뜻이된다. (OpenLDAP 2.x에서라면 이 인증된 사용자라는 것을 dn=.+에서 users로 바꿀수가 있다.) by dn=^$$ read 이것은 dn과 패스워드를 제시하지 않은 사용자 즉 anonymous 사용자에게 read권한을 주겠다는 뜻이다.(OpenLDAP 2.x에서라면 dn=^$$부분을 anonymous로 바꿀수가 있다.) by * none란 그외의 모든 상황에 대해서는 권한을 주지않겠다는 뜻이다.

------------------------------------------------------------

이 부분을 적용해보면 되겠네요? 한번 테스팅을 해봐야겠군요.

테스팅을 해볼 시간이 많지 않다보니 간단한 것도 이렇게 질문을 올리게 되는군요...

문태준(taejun)님이 2006-10-22 21:09에 작성한 댓글입니다.

네 직접 해 보실려고 하시는 군요. 그렇게 어렵지 않을 거 같습니다.
하시다가 안되시는게 있으시면 연락주세요.
그럼

송상준(sjsong)님이 2006-10-22 22:27에 작성한 댓글입니다.

아래와 같이 기본 권한을 none으로 주고 users (dn이 존재하고 패스워드를 제시한 사용자)에게만 read 권한을 주는 것으로 바꾸니 인증을 해야 접속이 되는군요. 해결했습니다. ACL 설정부분을 좀더 보아야겠네요.


defaultaccess none

access to attr=userPassword

        by self write

        by anonymous auth

        by dn="cn=manager,dc=isoc,dc=com"        write

        by * compare

access to *

        by self write

        by dn="cn=manager,dc=isoc,dc=com"        write

        by users read

#        by * read

문태준(taejun)님이 2006-10-23 10:45에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
2304PHP에서 LDAP접근할때.. [1]
안재정
2006-11-21
8910
2303Active Directory 와 Exchange Server문의드립니다. [1]
문성철
2006-11-14
8542
2302JAVA를 이용해서 AD인증을 받으려고 하는데요. [1]
서승완
2006-10-26
8968
2301outlook 주소록 등 연동에서 인증된 사용자만 보도록 하려면 ACL 설정을 어떻게 하면 되나요? [3]
문태준
2006-10-22
8114
2300ldap과 mysql 연동.... 도와주세요~ [1]
성하니
2006-10-20
10430
2299outlook에서 조회되는 ldap서버 [1]
dbmaster
2006-10-17
8256
2298SunOne Ldap 에서 뭐가 자꾸 안되는데요.. [1]
ldap 초보
2006-10-13
7738
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.050초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다