1

Liferay 6.1 CE を使用していますが、以下のブログに関連する次の問題があります。

参照: http://www.liferay.com/web/jonas.yuan/blog/-/blogs/6583930

LDAP認証を行おうとしていますが、LDAPユーザーパスワードをインポートすることは想定されていません。また、LDAPのみを認証ソースとして使用し、liferay認証を2回目に使用したくありません。

これらは portal-ext.properties の私の設定です:

ldap.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
ldap.referral=follow
ldap.base.provider.url=ldap://localhost:10389
ldap.base.dn=dc=example,dc=com
ldap.security.principal=uid=admin,ou=system
ldap.security.credentials=secret

auth.pipeline.enable.liferay.check=false

ldap.auth.enabled=true
ldap.auth.required=true
ldap.auth.method=bind

ldap.import.enabled=false
ldap.import.on.startup=false
ldap.import.interval=10
ldap.export.enabled=false
ldap.export.group.enabled=false

ldap.auth.search.filter=(mail=@email_address@)

ldap.user.mappings=screenName=cn\npassword=userPassword\nemailAddress=mail\nfirstName=givenName\nlastName=sn
ldap.user.custom.mappings=screenName=cn\npassword=userPassword\nemailAddress=mail\nfirstName=givenName\nlastName=sn
ldap.group.mappings=groupName=cn\ndescription=description\nuser=uniqueMember

ldap.import.user.search.filter=(objectClass=inetOrgPerson)
ldap.import.group.search.filter=(objectClass=groupOfUniqueNames)

ldap.password.policy.enabled=false
ldap.import.user.password.enabled=false
ldap.import.user.password.autogenerated=false
ldap.import.user.password.default=test

何が起こっているのかというと、auth.pipeline.enable.liferay.check=false のままにしておくと、test@liferay.com ユーザーを使用してもログインできません。以下の質問 1 に示す理由による)。プロパティを有効にすると、liferay は ldap の後に 2 回目の検証を行いますが、ldap のパスワードがローカルのダミー パスワード (テスト) と異なるため、パスワードがインポートされない設定になっているため、失敗します。

また、2つの別々の質問があります。

  1. このプロパティ ファイルを使用して LDAP プロパティをロードすると、テスト ユーザーが初めてログインしてコントロール パネル (LDAP ページ) に移動した後にのみ、ポータル プロパティ テーブルに表示されます。これを行わないと、他のユーザーは LDAP 認証を実行できなくなります (props ファイルがその portalproperties テーブルにロードされないため)。

  2. liferay に LDAP 認証のみを実行し、liferay ユーザーを作成しないようにする方法はありますか?

4

1 に答える 1

0

約2年遅れ!!しかし、他の人がこのスレッドを見つけた場合、Liferay は常に認証パイプラインを通過し、通過した場合は常にデータベースに対してパスワードを再度チェックします。

auth.pipeline.enable.liferay.check=false

portal.properties 内。その場合、Liferay User_ テーブルに保存されているパスワードとは無関係に、パスワードは LDAP に対してのみチェックされます。

2年遅れでごめんなさい!!

于 2014-01-31T12:32:17.533 に答える