密码输入正确登录仍失败

问题现象

  • 密码输入正确登录仍失败,后端有报错日志,会出现关键字:InvalidKeyException: Illegal key size
  • 密码解密失败原因排查

异常日志

2022-07-15 13:58:58.439  INFO 17064 --- [0.0-8090-exec-5] p.s.pamirs.user.api.utils.AES256Utils    :
java.security.InvalidKeyException: Illegal key size
    at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1039) ~[na:1.8.0_121]
    at javax.crypto.Cipher.implInit(Cipher.java:805) ~[na:1.8.0_121]
    at javax.crypto.Cipher.chooseProvider(Cipher.java:864) ~[na:1.8.0_121]
    at javax.crypto.Cipher.init(Cipher.java:1396) ~[na:1.8.0_121]
    at javax.crypto.Cipher.init(Cipher.java:1327) ~[na:1.8.0_121]
    at pro.shushi.pamirs.user.api.utils.AES256Utils.decrypt(AES256Utils.java:93) ~[pamirs-user-api-3.0.1-20220715.032940-5.jar:na]
    at pro.shushi.pamirs.user.api.crypto.DecryptAspect.decryptObj(DecryptAspect.java:81) [pamirs-user-api-3.0.1-20220715.032940-5.jar:na]
    at pro.shushi.pamirs.user.api.crypto.DecryptAspect.decryptData(DecryptAspect.java:62) [pamirs-user-api-3.0.1-20220715.032940-5.jar:na]
    at pro.shushi.pamirs.user.api.crypto.DecryptAspect.decrypt(DecryptAspect.java:44) [pamirs-user-api-3.0.1-20220715.032940-5.jar:na]

异常原因:如果密钥大于128, 会抛出java.security.InvalidKeyException: Illegal key size 异常. 因为密钥长度是受限制的, java运行时环境读到的是受限的policy文件. 文件位于${java_home}/jre/lib/security, 这种限制是因为美国对软件出口的控制.
参考资料:https://www.cnblogs.com/jinloooong/p/10619353.html

解法办法

  • 1、请检查jdk版本是否高于1.8_221以上。

  • 2、如无法升级jdk版本的环境下,下载JCE无限制权限策略文件。
    请点击下载 jce_policy-8.zip 并按照如下步骤进行操作:

    • 解压jce_policy-8.zip,得到两个文件US_export_policy.jarlocal_policy.jar
    • 如果安装了JRE,将两个jar文件放到%JRE_HOME%\lib\security目录下覆盖原来的文件
    • 如果安装了JDK,将两个jar文件放到%JDK_HOME%\jre\lib\security目录下覆盖原来文件

Oinone社区 作者:望闲原创文章,如若转载,请注明出处:https://doc.oinone.top/oinone-faq/7305.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(1)
望闲望闲
上一篇 2024年5月16日 pm2:30
下一篇 2024年5月17日 pm2:23

相关推荐

  • Oinone 是什么

    1.Oinone能做什么? Oinone 是一款专注解决复杂业务场景的开源低代码应用平台,旨在提供所见即所得的快速可视化搭建应用功能,并打造企业专属的低代码平台。 提升交付效率,缩短交付周期; 减少人力投入,解决技术人才招聘难的难题; 减少接联调,减少重复建设,解决质量管控难题; 一键轻松安装,应用全生命周期管理,解决应用管理难题; 2.为什么要用Oinon…

    2022年3月14日
    00
  • 【界面设计器】组件开发常见问题

    如何获取当前页面中的全部可用字段? 在Class Component(ts)中使用以下代码获取当前设计组件实例 “` tsimport { WidgetInstance } from '@kunlun/ui-designer-dependencies'; @Widget.Reactive()@Widget.In…

    2023年11月1日
    00
  • 协同开发常见问题

    一、协同开发支持 https://doc.oinone.top/backend/4821.html 二、协同开发手册 https://doc.oinone.top/backend/14878.html 三、协同开发常见问题 1、启动报错:公共环境开启了元数据保护模式,本地开发环境需配置https://doc.oinone.top/faq/17045.html…

    2024年10月24日
    00
  • 验证服务是否启动成功

    验证服务是否启动成功可以调用****/ruok接口,端口是服务器实际运行端口返回imok是启动成功,返回no是启动失败 @Order(Ordered.LOWEST_PRECEDENCE) @RestController public class HealthCheckController implements ApplicationListener<A…

    2024年9月27日
    00
  • 数据大屏如何绑定页面

    第一步:数据可视化创建大屏。 第二步:界面设计器创建页面,在页面设计时,拖一个数据大屏组件,将大屏绑定到页面中,点击右上角显示母版,准备将页面绑定到菜单上。 第三步:在oinone功能展示应用下,创建一个菜单,点击绑定当前页面,将该页面绑定到菜单上,点击发布。 第四步:进入刚才菜单所属的应用(oinone功能展示),可以看到刚刚新增的菜单,数据大屏就成功绑定…

    2024年12月11日
    00

Leave a Reply

登录后才能评论