質問

現在アクティブなLiferay 4.4.2にユーザーがいて、すべて有効なパスワードを持っています。 Liferay 6.0.6で同じユーザーを持っています。それらはすべて、デフォルトのパスワードで追加されました。

Liferay 4.4.2からLiferay 6.0.6にユーザーのパスワードを移行できる方法を提案できますか?

ユーザーテーブルのDBを介してパスワードを直接コピーしようとしました(アドバイスがないことは知っていますが、どこかから始めなければなりませんでした)。うまくいかなかった。

両方のバージョンで使用される暗号化アルゴリズムはMD5です。エンコーディングダイジェストに違いはありますか? Liferay 4.4.2にはダイジェストコラムはありませんが、Liferay 6.0.6で見ることができます

パスワードを移行するにはどうすればよいですか?

役に立ちましたか?

解決

現在、忘れたパスワード機能を使用して、ユーザーが忙しいことを知っているパスワードを変更するようにユーザーを強くしています。これが私がそれをした方法です:

ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);
Company company = themeDisplay.getCompany();
ServiceContext serviceContext = ServiceContextFactory.getInstance(PortalUtil.getHttpServletRequest(actionRequest));
//Replace the variables with corresponding values
UserLocalServiceUtil.sendPassword(companyId, emailAddress, remoteAddr, remoteHost, userAgent, fromName, fromAddress, subject, body, serviceContext);

より良いソリューションは大歓迎です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top