我正在使用 JBoss AS7 + JSF 2.1
我正在尝试使用数据库登录模块对我的 Web 应用程序中特定资源的用户进行身份验证。在standalone.xml 中有3 个安全域:“other”、“jboss-web-policy”和“jboss-ejb-policy”。
应该 我将我的数据库登录模块放在“其他”安全域中?
或 我应该定义一个新的自定义安全域并将我的数据库登录模块放入其中吗?
无论哪种方式,我将如何告诉 JBoss 它应该为我的应用程序使用哪个安全域/登录模块?
提前致谢。
最佳答案
您提到的两个选项是有效的,但从我的角度来看,最好为您的应用程序创建一个新的安全域(更清楚)。
另一方面,回答你的第二个问题,你必须在应用程序元文件中为你的应用程序指定安全域(不是在 jboss 中,而是在你的应用程序中)。
如果你有一个 war 文件,你必须在文件 WEB-INF/jboss-web.xml 中设置它,它看起来类似于:
<jboss-web>
<security-domain>java:/jaas/your-domain</security-domain>
</jboss-web>
另一方面,如果你有一个 ejb-jar 模块,文件 META-INF/jboss.xml 看起来像:
<jboss>
<security-domain>java:/jaas/your-domain</security-domain>
</jboss>
如果你有一个 ear 文件,文件 META-INF/jboss-app.xml 看起来类似于:
<jboss-app>
<security-domain>java:/jaas/your-domain</security-domain>
</jboss-app>
关于security - 如何在 JBoss AS7 中为我的 Web 应用程序指定使用哪个安全域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15087971/