Openldap backsql将用户添加到groupofNames组

时间:2014-05-12 12:30:08

标签: mysql ldap openldap

我使用Openldap和mysql作为backsql。在我的数据库结构中有三个表 用户,组,User_to_Usergroup。 我的ldif文件看起来像

 dn: cn=Marketing,ou=Department,dc=org,dc=o
    changetype: modify
    ou: Marketing
    add: member
    member: cn=Your Name,ou=Department,dc=org,dc=o

我有这两个条目

  • CN =营销,OU =部,DC =组织,DC = O
  • cn =您的姓名,ou =部门,dc = org,dc = o

    在ldap_entries中,我想使用 groupofNames 属性'成员'将组DN和用户Dn添加到User_to_Usergroup表。

不知何故,它只获取Group DN id,而不是用户Dn返回0并且错误无法美化属性描述成员的值#1 。 还有两个用于groupofName cn和成员的条目以及相应的sql' s。

错误日志:

backsql_modify_internal(): adding new values for attribute "member"
5370bc16    backsql_modify_internal(): arg(2)=**3**
5370bc16    backsql_modify_internal(): arg(1)="cn=Your Name ,ou=Department,dc=org,dc=o"; executing "insert into users_to_usergroup (id,ivt_user_id,ivt_usergroup_id) values (newusergroup(),?,?)"
5370bc16    backsql_modify_internal(): add_proc execution failed (rc=-1, prc=0)
5370bc16 Return code: -1
5370bc16    nativeErrCode=1062 SQLengineState=23000 msg="[MySQL][ODBC 5.1 Driver][mysqld-5.5.35-2-log]Duplicate entry '0-3' for key 'Index_2'"
backsql_modify_internal(): adding new values for attribute "member"
retrieving all attributes
5370bc16 ==>backsql_get_attr_vals(): oc="groupOfNames" attr="cn" keyval=3
5370bc16 backsql_get_attr_vals(): number of values in query: 1
5370bc16 <==backsql_get_attr_vals()
5370bc16 ==>backsql_get_attr_vals(): oc="groupOfNames" attr="member" keyval=3
5370bc16 backsql_get_attr_vals(): number of values in query: 2
5370bc16 >>> dnPretty: < >
5370bc16 ==>backsql_get_attr_vals("cn=Marketing,ou=Department,dc=org,dc=o"): unable to prettify value #0 of AttributeDescription member (21)
5370bc16 >>> dnPretty: <Your Name>
5370bc16 ==>backsql_get_attr_vals("cn=Marketing,ou=Department,dc=org,dc=o"): unable to prettify value #1 of AttributeDescription member (21)
5370bc16 <==backsql_get_attr_vals()
5370bc16 ==>backsql_get_attr_vals(): oc="groupOfNames" attr="objectClass" keyval=3
5370bc16 backsql_get_attr_vals(): number of values in query: 0

我错过了什么吗?如有任何其他信息,请告诉我..谢谢!

1 个答案:

答案 0 :(得分:0)

仔细看看:

Duplicate entry '0-3' for key 'Index_2'

看起来用户已经是会员。