Вопрос по – Как переопределить стандартную аутентификацию Liferay Login?

1

Я использую Liferay 6.1, и я хочу переопределить аутентификацию Liferay Login по умолчанию и хочу настроить свою собственную аутентификацию.

До сих пор я создал подключаемый модуль и настроил следующие свойства в файле portal.properties

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

где MyCustomAuthenticator - мой собственный класс аутентификатора (который реализует Authenticator).

В настоящее время Liferay сначала проверяет эту пользовательскую аутентификацию, но затем снова переходит к самой Liferay для дальнейшей аутентификации Liferay.

Я хочу переопределить эту проверку Liferay. Пожалуйста, помогите мне решить эту проблему. Вот мой класс аутентификатора:

public class MyCustomAuthenticator implements Authenticator {  

  public int authenticateByEmailAddress(long arg0, String arg1, String arg2, Map<String, String[]> arg3, Map<String, String[]> arg4) throws AuthException {  

    System.out.println("succeeded by mail");  
    return SUCCESS;  
  }  

 public int authenticateByScreenName(long arg0, String arg1, String arg2, Map<String, String[]> arg3, Map<String, String[]> arg4) throws AuthException {  

    System.out.println("succeeded by screen name");  
    return SUCCESS;  
  }  

 public int authenticateByUserId(long arg0, long arg1, String arg2, Map<String, String[]> arg3, Map<String, String[]> arg4) throws AuthException {  

    System.out.println("succeeded by user id");  
    return SUCCESS;  
  }  

}  
Можете ли вы опубликовать свой код для своего класса? Prakash K

Ваш Ответ

3   ответа
4

а затем перезапустите сервер.

auth.pipeline.enable.liferay.check=false
Error: User Rate Limit Exceeded Krishnanunni P V
Error: User Rate Limit Exceededliferay.com/documentation/liferay-portal/6.1/user-guide/-/ai/…Error: User Rate Limit Exceeded
1

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

а также в portal-ext-properties

0

с этими двумя строками в моем перехвате port.properties переопределите И в portal-ext.properties для хорошей меры:

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

Однако, похоже, что он не хочет входить в Liferay, даже если учетная запись уже существует. Я смог заставить его работать полностью и вообще пропустить аутентификацию Liferay. Все, что мне нужно, это переопределить порталы.properties, я удалил 2 строки из portal-ext. В вашем пользовательском аутентификаторе вместо простого возврата SUCCESS (com.liferay.portal.security.auth.Authenticator.SUCCESS)

Вы хотите вернуть SKIP_LIFERAY_CHECK. Это то же самое, что УСПЕХ, за исключением того, что убедитесь, что конвейер аутентификации знает, что нужно пропустить проверку liferay.

Это должно заставить его работать. Я считаю, что исходный код (для Liferay 6.2 ga5) неправильно учитывает & quot; Пропустить проверку Liferay & quot; собственность, и это по существу заставляет его.

Похожие вопросы