- - PR -
LDAPのアクセスコントロールについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-10-13 13:02
LDAPにてアドレス帳サーバの構築を考えていますが、
思い通りにアクセス制御できません 各スキーマは簡単に書くと ルート:dcObject 共有アドレス帳:groupOfNames 個人アドレス帳(ユーザ):organizationalUnit アドレス:inetOrgPerson dc=root(dcObject) cn=book1(groupOfNames) cn=address1(inetOrgPerson) cn=address2(inetOrgPerson) ou=user1(organizationalUnit) cn=address3(inetOrgPerson) cn=address4(inetOrgPerson) ou=user2(organizationalUnit) cn=address5(inetOrgPerson) cn=address6(inetOrgPerson) のようなツリーを構成しています。 book1はこの場合member属性を2つ持っています member: ou=user1,dc=root member: ou=user2,dc=root user1,user2はuserPassword属性を持っています なお、共有アドレス帳とユーザは同じルールで無数に増加します このような環境で、rootを全件検索すると user1でバインドしている場合はaddress1-4、 user2でバインドしている場合はaddress1-2,5-6という結果が返ってきてほしいのですが、 どのようにaccess制御ルールを書けばいいのかわかりません。 どなたかご教授いただけないでしょうか? 私が作成した下記の設定ではBINDしたディレクトリだけで そこにぶら下がるディレクトリが見えません。 slapd.confのアクセス制御部分 access to attrs=userPassword by anonymous auth by self read by * none access to dn.regex="^cn=([^,]+),dc=addroot,dc=exapmle,dc=com$" attrs=entry,children,inetOrgPerson by group/groupOfNames/member.regex="cn=$1,dc=addroot,dc=exapmle,dc=com" read by * none access to dn.regex="^ou=([^,]+),dc=addroot,dc=exapmle,dc=com$" attrs=entry,children,inetOrgPerson by dn.exact,expand="ou=$1,dc=addroot,dc=exapmle,dc=com" read by * none どのように修正すれば、思い通りの結果を得ることができるでしょうか? #例として提示したスキーマやaccessルールは構想中のもので、 #こうした方が良いなどの例をいただけるとなお助かります。 |
1