openfire使用ldap認證,組的過濾設置

正常配置openfire使用ldap認證後,在openfire後臺可以看到所有用戶和組,但是組裏面沒有用戶。

解決方法:

一、增加member屬性到organizationalUnit這個objectclass中

編輯core.schema

這個schema中有member這個attribute,但是organizationalUnit objectclass中沒有啓用,所以在:

objectclass ( 2.5.6.5 NAME 'organizationalUnit'

DESC 'RFC2256: an organizational unit'

SUP top STRUCTURAL

MUST ou

MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $

x121Address $ registeredAddress $ destinationIndicator $

preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $

telephoneNumber $ internationaliSDNNumber $

facsimileTelephoneNumber $ street $ postOfficeBox $ postalCode $

postalAddress $ physicalDeliveryOfficeName $ st $ l $ description $ member ) )

中增加$ member,重啓ldap即可。


二、修改openfire.script腳本:

編輯/opt/openfire/embedded-db/openfire.script文件,修改如下行爲:

INSERT INTO OFPROPERTY VALUES('ldap.groupMemberField','seeAlso')

INSERT INTO OFPROPERTY VALUES('ldap.groupMemberField','member')


三、添加組員到組中。

這樣在ldapadmin後臺OU裏面添加新的attribute的時候就可以看到member這個屬性了。member的值如下圖所示:

151621267.png


這樣,重啓openfire和ldap後,登陸spark就可以看到組已經組員了。


備註一下:

屬性名屬性值編輯刪除
admin.authorizedJIDs
單擊可編輯此屬性單擊可刪除此屬性
ldap.adminDN
cn=root,dc=domain,dc=com
單擊可編輯此屬性單擊可刪除此屬性
ldap.adminPassword
hidden
單擊可編輯此屬性單擊可刪除此屬性
ldap.autoFollowAliasReferrals
true
單擊可編輯此屬性單擊可刪除此屬性
ldap.autoFollowReferrals
false
單擊可編輯此屬性單擊可刪除此屬性
ldap.baseDN
dc=domain,dc=com
單擊可編輯此屬性單擊可刪除此屬性
ldap.connectionPoolEnabled
true
單擊可編輯此屬性單擊可刪除此屬性
ldap.debugEnabled
false
單擊可編輯此屬性單擊可刪除此屬性
ldap.emailField
mail
單擊可編輯此屬性單擊可刪除此屬性
ldap.encloseDNs
true
單擊可編輯此屬性單擊可刪除此屬性
ldap.groupDescriptionField
description
單擊可編輯此屬性單擊可刪除此屬性
ldap.groupMemberField
member
單擊可編輯此屬性單擊可刪除此屬性
ldap.groupNameField
ou
單擊可編輯此屬性單擊可刪除此屬性
ldap.groupSearchFilter
(&(ou={0})(objectClass=organizationalUnit))
單擊可編輯此屬性單擊可刪除此屬性
ldap.host
10.0.0.12
單擊可編輯此屬性單擊可刪除此屬性
ldap.ldapDebugEnabled
false
單擊可編輯此屬性單擊可刪除此屬性
ldap.nameField
description
單擊可編輯此屬性單擊可刪除此屬性
ldap.override.avatar
true
單擊可編輯此屬性單擊可刪除此屬性
ldap.port
389
單擊可編輯此屬性單擊可刪除此屬性
ldap.posixMode
false
單擊可編輯此屬性單擊可刪除此屬性
ldap.searchFields

單擊可編輯此屬性單擊可刪除此屬性
ldap.searchFilter
(&(cn={0})(objectClass=inetOrgPerson))
單擊可編輯此屬性單擊可刪除此屬性
ldap.sslEnabled
false
單擊可編輯此屬性單擊可刪除此屬性
ldap.usernameField
cn
單擊可編輯此屬性單擊可刪除此屬性
ldap.vcard-mapping
<span title="<![CDATA[<br><vCard xmlns=" vcard-temp"><N>
<GIVEN>{description}</GIVEN>
</N>
<EMAIL>
<INTERNET/>
<USERID>{mail}</USERID>
</EMAIL>
<FN>{description}</FN>
<NICKNAME>{uid}</NICKNAME>
<ADR>
<HOME/>
</ADR>
<ADR>
<WORK/>
</ADR>
</vCard>]]>"><![CDATA[
<vCard xmlns="vcard-temp">
<N>
<GIVEN>{description}</GIVEN>
</N>
<EMAIL>
<INTERNET/>
<USERID>{mail}</USERID>
</EMAIL>
<FN>{description}</FN>
<NICKNAME>{uid}</NICKNAME>
<ADR>
<HOME/>
</ADR>
<ADR>
<WORK/>
</ADR>
</vCard>]]>
單擊可編輯此屬性單擊可刪除此屬性
provider.auth.className
org.jivesoftware.openfire.ldap.LdapAuthProvider
單擊可編輯此屬性單擊可刪除此屬性
provider.group.className
org.jivesoftware.openfire.ldap.LdapGroupProvider
單擊可編輯此屬性單擊可刪除此屬性
provider.user.className
org.jivesoftware.openfire.ldap.LdapUserProvider
單擊可編輯此屬性單擊可刪除此屬性
provider.vcard.className
org.jivesoftware.openfire.ldap.LdapVCardProvider
單擊可編輯此屬性單擊可刪除此屬性
update.lastCheck
1379953378982
單擊可編輯此屬性單擊可刪除此屬性
xmpp.auth.anonymous
true
單擊可編輯此屬性單擊可刪除此屬性
xmpp.domain
domain.com.cn
單擊可編輯此屬性單擊可刪除此屬性
xmpp.session.conflict-limit
0
單擊可編輯此屬性單擊可刪除此屬性
xmpp.socket.ssl.active
true
單擊可編輯此屬性單擊可刪除此屬性


這是一個介紹關於ldap group的連接:http://www.zytrax.com/books/ldap/ch11/groups.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章