[Lism-users 191] Re: groupOfNames の member属性

Zurück zum Archiv-Index

Kaoru Sekiguchi sekig****@secio*****
2009年 12月 18日 (金) 20:39:45 JST


工藤様

関口です。

参考にされている情報は、グループをposixGroupとしているので、メンバはmemberUidにユーザIDのみ表示される設定なので、やろうとしていることとちょと違うかと思います。

memberのようなDN形式で表示させる場合は、以下の設定例を参考にしてみて下さい。
http://lism.sourceforge.jp/index.php?XOOPS%C0%DF%C4%EA

この設定例では、ユーザのbusinesscategoryに所属しているグループ(Role)のDNを表示するような設定になっていますので、これを参考に、この設定とは逆にグループのmember属性にユーザのDNが表示するようにすればよいかと思います。

以上、よろしくお願いします。

----- Original Message ----- 
From: "工藤一樹" <svu00****@partn*****>
To: <lism-****@lists*****>
Sent: Thursday, December 17, 2009 6:03 PM
Subject: [Lism-users 190]groupOfNames の member属性


> 工藤です。
> いつもお世話になっております。
> たびたびの登場で恐縮です。
>
> グループエントリのmember属性に対する設定についてアドバイスをいただけると
> 幸いです。
>
> MySQLに user_tbl,group_tbl,group_user_tbl の3つが存在しています。
> テーブルの定義は下記通りです。
>
> CREATE TABLE  `user_tbl` (
>  `user_id` integer NOT NULL,
>  `user_name` varchar(20) NOT NULL,
>  `first_name` varchar(20) NOT NULL,
>  `last_mname` varchar(20) NOT NULL,
>  `description` varchar(40) ,
>  PRIMARY KEY  (`user_id`)
> )  ENGINE=InnoDB;
>
> CREATE TABLE  `group_tbl` (
>  `group_id` integer NOT NULL,
>  `parent_group_id` integer ,
>  `group_name` varchar(20) NOT NULL,
>  PRIMARY KEY  (`group_id`)
> )  ENGINE=InnoDB;
>
>
> CREATE TABLE  `group_user_tbl` (
>  `group_id` varchar(20) NOT NULL,
>  `user_id` varchar(20) NOT NULL,
>  PRIMARY KEY  (`group_id`,`user_id`)
> ) ENGINE=InnoDB;
>
>
>
> 実現したいことはグループに所属しているユーザを
> LDAPグループエントリのmember属性(複数)にマッピングすることです。
>
> 例)
> dn: cn=grp02,ou=Group,dc=example,dc=com
> objectClass: groupOfNames
> cn: grp02
> member:xxx
> member:yyy
>
> ※ xxx,yyy は実際にはユーザのDNになります。
>
>
> http://lism.sourceforge.jp/ 内には事例が見当たらなかったのですが
> 下記サイトに「XoopsのグループをposixGroupとして扱う」の情報があり
> こちらを参考にしました。
> http://osslism.blog92.fc2.com/category1-1.html
>
>
> lism.conf は下記の様に設定してみました。
>
>      <object name="Group">
>        <container>
>          <rdn>ou=Group</rdn>
>          <oc>organizationalUnit</oc>
>        </container>
>        <noop>add</noop>
>        <noop>modify</noop>
>        <noop>delete</noop>
>        <table>group_tbl</table>
>        <id>
>          <column>group_id</column>
>        </id>
>        <oc>groupOfNames</oc>
>        <rdn>cn</rdn>
>        <attr name="cn">
>          <column>GROUP_ID</column>
>        </attr>
>        <attr name="member">
>          <selexpr>user_id</selexpr>
>          <fromtbls>group_user_tbl</fromtbls>
>          <joinwhere>group_tbl.group_id = group_user_tbl.group_id </
>          joinwhere>
>        </attr>
>
> この状態ですとou=Group,ou=skdb,dc=lism,dc=com 配下に一切エントリは表示さ
> れません。
>
>
> また <attr name="member">の要素をコメントアウトすると
> ou=Group,ou=skdb,dc=lism,dc=com 配下にグループのエントリが表示されます。
> member属性の設定以外は正しいということになります。
>
> memberを検索するSQL自体は正しいということを確認しています。(MySQLの一般
> ログに出力された内容で確認しています。)
>
>
> lismではこういった要件は実現可能でしょうか?
>
> 設定がおかしいところがあればアドバイスいただけると幸いです。
>
> 以上、よろしくお願いいたします。
>
> _______________________________________________
> Lism-users mailing list
> Lism-****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/lism-users
>
> 




Lism-users メーリングリストの案内
Zurück zum Archiv-Index