Я пытаюсь разработать мобильное приложение javascript, которое будет использовать портал liferay jsonws api. У меня есть имя пользователя и пароль. Если я попробую запрос с помощью curl с базовым auth, я могу получить доступ к ресурсам, но я не получаю токен взамен, я получаю файл cookie с sessionid, и я должен включать имя пользователя и пароль в каждом запросе. Я не контролирую портал. Как получить токен p_auth?Liferay jsonws api: как я могу получить p_auth от клиента?
ответ
Беспокойный параметр p_auth используется для предотвращения атаки CSRF. Вы можете получить значение с этим кодом:
String pAuth = com.liferay.portal.security.auth.AuthTokenUtil.getToken(request);
TokenUtil является частью ядра Liferay, так что вы должны создать крюк, потому что СПЯ должен находиться в директории Liferay, а не в плагине или портлета потому что в других classpath у вас нет доступа к этому объекту.
Если 'p_auth' должен предотвратить CSRF, то почему он доступен как открытый доступ через объект Liferay.authToken' в консоли браузера? –
Liferay.authToken обновляется при каждом запросе на портал. Следующий запрос должен передать последний токен, возвращенный порталом, иначе этот запрос будет проигнорирован. – drenedo
Вы можете получить токен аутентификации (p_auth) с помощью предопределенной переменной Liferay.authToken
.
- 1. Liferay p_auth корреляция
- 2. Как получить контент от Liferay через API?
- 3. Liferay jsonws не доступный через удаленного местоположение
- 4. Liferay: как получить ddmContentModel от JSon-WS
- 5. Подтвердить токен входа p_auth против Liferay
- 6. Liferay API вызов требует аутентифицированного доступа
- 7. Как проверить подлинность веб-службы хит от не LifeRay приложение
- 8. Удаление p_auth в заголовке liferay (но не отключение проверки подлинности)
- 9. Как я могу получить необработанный пакет от клиента?
- 10. Как я могу получить пользовательский заголовок от клиента в Tomcat?
- 11. Как я могу получить пакет данных от клиента C#?
- 12. Как я могу получить роли сайта пользователя в liferay
- 13. Как я могу получить IP-адрес клиента?
- 14. Где я могу получить идентификатор клиента Paypal
- 15. Могу ли я получить клиента от идентификатора заказа?
- 16. Как я могу получить и обработать ответ от PHP API
- 17. Как я могу получить информацию от API-интерфейса instagram?
- 18. Как я могу получить веб-сайт от Yelp API
- 19. Как я могу получить текущую песню от audioscrobbler api?
- 20. как я могу получить весь обзор от Google +, используя API
- 21. Как я могу получить Yahoo! Weather Backgrounds от API?
- 22. Liferay 6.1 DLApp * API: Как получить изображения?
- 23. Как я могу получить текущего пользователя в Liferay?
- 24. Liferay: Как я могу получить страницы сайта в веб-контенте?
- 25. получить HttpServletResponse от портала liferay
- 26. Как я могу получить IP-адрес клиента java-программирования RMI?
- 27. Как получить идентификатор портлета на стороне клиента в liferay?
- 28. Проверить версию Liferay от браузера
- 29. Как получить секрет клиента в API Youtube для клиента iOS?
- 30. Как я могу передать user_type от клиента Eliom к сервису?
Вы пытались: Liferay.authToken. Он находится в одном из файлов js liferay. Проверьте источник жизни. – Marcin
Благодарим вас за ответ. У меня нет доступа к самому порталу; кто-то еще разработал json api, используя liferay 6.2, и я ни на что не могу контролировать. Я думал, что у меня будет конечная точка входа, но пока кажется, что это не так. Является ли Liferay как js-библиотека, которая может использоваться во внешнем приложении? Из документации это действительно неясно, и люди, отвечающие за портал, на самом деле не разделяют много, просто дал мне пользователя. – alex