为什么这个来自Soteria的简单雅加达安全示例可以在Payara上工作,而不能在WildFly上工作?

本文介绍了为什么这个来自Soteria的简单雅加达安全示例可以在Payara上工作,而不能在WildFly上工作?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!,我习惯于使用WildFly进行Java/Jakarta EE开发,最近我想将一个使用JAAS进行身份验证/授权的项目从Jakarta EE 9.1更新到新的Jakarta Security API。,我无法使其工作,因此我决定创建尽可能简单的示例,并在不同的应用程序服务器上进行试验。我以Soteria(据我所知,是Jakarta Security的参考实现)为例,创建了一个新的Jakarta EE项目来部署在我的应用服务器上。代码可用here。,该示例包括密码为secret1的用户reza的非常简单的标识存储:,servlet包含自定义表单身份验证机制定义,如果用户未通过身份验证,该机制定义会将用户重定向到/login.jsf。通过身份验证时,它会显示用户名(主体名称)并测试用户角色。还有注销功能:,如果用户重定向到/login.jsf:,,则呈现login.xhtml页面,最后,JSF支持bean负责处理表单并调用Jakarta Securty API执行身份验证:,正如我所说,它在Payara上正常工作,但在WildFly上出现以下异常:,注意,我的项目不包含Soteria示例中的jboss-web.xml文件,但是如果我添加它,每次使用登录页面时身份验证都会失败(即使我输入了正确的用户名和密码)。如果我直接打开http://localhost:8080/jakarta-security-example/servlet,我会看到:,如果我单击注销按钮,我会看到:jakarta.servlet.ServletException: UT010062: No SecurityContext available。,试图在Google上查找答案,但找不到,所以我希望Stack Overflow这里的某个人可能知道问题所在,并帮助我。谢谢!,WildFly服务器需要其他配置:,上也有用于此操作的脚本:
https://github.com/wildfly/quickstart/tree/main/ee-security#configure-the-server,发件人https://docs.wildfly.org/25/WildFly_Elytron_Security.html#Elytron_and_Java_EE_Security,这篇关于为什么这个来自Soteria的简单雅加达安全示例可以在Payara上工作,而不能在WildFly上工作?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,
返回顶部
跳到底部

Copyright 2011-2024 南京追名网络科技有限公司 苏ICP备2023031119号-6 乌徒帮 All Rights Reserved Powered by Z-BlogPHP Theme By open开发

请先 登录 再评论,若不是会员请先 注册