加密政策无限制地被JBoss忽略

时间:2018-03-14 08:11:05

标签: java jboss jce jasypt

在尝试使用jasypt加密某些数据时,我遇到了以下异常:

org.jasypt.exceptions.EncryptionOperationNotPossibleException: Encryption raised an exception. A possible cause is you are using strong encryption algorithms and you have not installed the Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files in this Java Virtual Machine

我发现了几个问题,所以我通过在我的代码中将crypto.policy属性设置为unlimited来修复此问题:

Security.setProperty("crypto.policy", "unlimited");

我在我的机器中用JBoss部署了战争,它可以工作。但后来我们尝试在不同的环境中安装它(不完全由我们管理),它似乎以某种方式忽略了属性(我有一些日志来显示它的值,我可以看到加密前的值是正常的),因为我们仍然得到同样的错误。

所以,我的问题是:即使以编程方式更改,可以在JBoss中配置什么来忽略该属性?

我们检查了该环境中的Java版本,它是"1.8.0_152",所以我们认为应该没问题。我们缺少什么?

1 个答案:

答案 0 :(得分:1)

你得到的是什么错误?如果您收到上述异常,可能是因为您未在新环境中安装Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files。您可以检查机器和新环境中的JCE。