How to override default Liferay Login authentication?

让人想犯罪 __ 提交于 2019-12-01 02:11:49

Add the following property in portal-ext.properties and then restart the server

auth.pipeline.enable.liferay.check=false

Remembered in your hook project in file portal.properties

place auth.pipeline.pre =com.liferay.portal.security.auth.MyCustomAuthenticator 
auth.pipeline.enable.liferay.check = false

and also in the portal-ext-properties

I had made a hook the same way, with these two lines in my hook portal.properties override, AND in portal-ext.properties for good measure:

auth.pipeline.pre=com.liferay.portal.security.auth.MyCustomAuthenticator
auth.pipeline.enable.liferay.check=false

However, it seemed to not want to login to Liferay even when the account already existed. I was able to get it fully working and skip Liferay authentication altogether. The hook overriding portal.properties is all I needed, I removed the 2 lines from portal-ext. In your Custom Authenticator, instead of just returning SUCCESS, (com.liferay.portal.security.auth.Authenticator.SUCCESS)

You want to return SKIP_LIFERAY_CHECK . This is the same as a SUCCESS, except making sure the authentication pipeline knows to skip the liferay check.

This should force it to work. I believe the source code (for Liferay 6.2 ga5) does not properly take into account the "Skip Liferay Check" property, and this essentially forces it.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!