【发布时间】:2015-01-11 10:40:15
【问题描述】:
我正在为用户登录 Worklight 控制台和应用中心配置 LDAP 身份验证。 WL 服务器在 WAS Liberty Profile 8.5.5 之上运行。配置工作正常,但仍不如预期。
在开始我的问题之前,让我描述一下客户端的 LDAP 环境,它有点复杂。他们有一个 Domino 服务器和一个 Active Directory 服务器。在 Domino 中,用户节点显示为例如 [CN=Apple Pie,OU=AU,O=Hello],并且它的 UID 为 [APie]。我相信 Active Directory 是针对 UID [APie] 进行身份验证的。有趣的是他们在 Domino 和 AD 中有不同的密码。 Domino 配置为接受来自 Domino 或 AD 的纯 UID[APie] 和纯 CN[Apple Pie] 密码。但如果您以 [CN=Apple Pie,OU=AU,O=Hello] 身份登录,则只有多米诺密码有效。
现在 Liberty 的问题在于,使用以下配置时,当我使用 UID[APie] 登录时,它将从 Domino 获取 [CN=Apple Pie,OU=AU,O=Hello] 并将其用于身份验证。在这种情况下,我只能使用 Domino 的密码。
[12/11/14 14:29:18:773 EST] 0000006f id=c1759c56 ws.security.credentials.wscred.internal.WSCredentialProvider > setCredential Entry
Subject:
Principal: WSPrincipal:APie
Private Credential: {user.registry.authenticated.userid=CN=Apple Pie,OU=AU,O=Hello}
Private Credential: com.ibm.ws.security.token.internal.SingleSignonTokenImpl@87d8c005
我的问题是如何更改 ldapRegistry 的配置以使其针对纯 UID 进行身份验证?
<ldapRegistry id="ldap"
host="MMMMM"
port="389"
ignoreCase="true"
baseDN="OU=AU,O=Hello"
ldapType="IBM Lotus Domino"
sslEnabled="false" >
<domino50Filters
userFilter="(&(uid=%v)(objectclass=inetOrgPerson))"
groupFilter="(&(cn=%v)(objectclass=groupOfNames))"
userIdMap="*:uid"
groupIdMap="*:cn"
groupMemberIdMap="groupOfNames:member" >
</domino50Filters>
</ldapRegistry>
【问题讨论】:
-
所以也许你应该指向 AD 而不是 Domino,如果他们同时使用的话。
标签: ldap lotus-domino websphere-liberty