目前玩liferay,我希望得到用户名和密码。解密liferay密码
我能得到的用户名和encrpyted密码,所以我需要解密的密码 - 我想我可以做到这一点:
Company company;
try {
company = CompanyUtil.findByPrimaryKey(user.getCompanyId());
password = Encryptor.decrypt(company.getKeyObj(), password);
} catch (NoSuchCompanyException e) {
e.printStackTrace();
} catch (SystemException e) {
e.printStackTrace();
} catch (EncryptorException e) {
e.printStackTrace();
}
然而,这与encryptorexception即返回:
com.liferay.util.EncryptorException: com.liferay.util.EncryptorException: javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher
我也发布在liferay论坛上,但希望有人在这里也可以帮助 - 我目前正在尝试以钩子的形式做到这一点,一个portlet会是一个更好的主意吗?
很多谢谢
我想得到它,所以我可以解析它到我的kerberos的kerberised SSO – odtf 2011-05-09 14:59:48
在这种情况下,我认为要走的路将采取由用户输入的密码和Kerberos服务器进行身份验证。不要试图解密这些密码。您应该能够实现您自己的AutoLogin类并将其插入到LR身份验证链中。 (正如你刚才说的你刚开始使用Liferay一样:你有一个现有的基于Kerberos的基础架构吗?否则我会建议尝试CAS或Liferay已经支持的其他SSO技术)。 – Dirk 2011-05-09 15:42:27
是的,我目前有一个基础Kerberos的基础设施 - 我尝试过,并尝试获取用户输入的密码失败......也许我做错了 - 任何想法/帮助指南来做到这一点? 为你的帮助至今欢呼 – odtf 2011-05-09 15:45:37