gpt4 book ai didi

java - JBoss 的单独登录配置?

转载 作者:行者123 更新时间:2023-12-01 15:43:34 25 4
gpt4 key购买 nike

我正在尝试创建一个 RPM 打包的 Ear 文件,该文件应该可以与 JBoss 容器中的其他 RPM 打包的 Ear 文件一起安装。 (我可能可以在 JBoss 中创建一个单独的容器,但这对于一只 Ear 来说是很大的开销。)除了一个问题之外,这工作得很好。

我的问题是这个 Ear 文件公开了使用自己的身份验证策略 (login-config.xml policy/application-policy/authentication/login-module) 的 Web 服务。现在多个 RPM 想要通过该文件提供身份验证信息,我们就与 RPM 规范规则发生冲突,即任何文件都不能被多个 RPM 包所拥有(无论如何,无论最后哪个 RPM 都会破坏前一个)。

有没有什么方法可以在单独的文件中声明应用程序策略/身份验证 block ,或者以某种方式将其放置在login-config.xml之外?例如,是否可以声明引用单独的登录 XML 定义的附加安全 mbean(在单独的文件中)?

这是JBoss v4.2,但我愿意稍后考虑它是否解决了这个问题。

更新:

卢卡斯规则。以下是工作配置!

<?xml version='1.0'?>

<server>
<mbean code="org.jboss.security.auth.login.DynamicLoginConfig"
name="jboss.security.tests:service=LoginConfig">

<depends optional-attribute-name="SecurityManagerService">
jboss.security:service=JaasSecurityManager
</depends>
<depends optional-attribute-name="LoginConfigService">
jboss.security:service=XMLLoginConfig
</depends>

<attribute name="PolicyConfig" serialDataType="jbxb">

<jaas:policy
xsi:schemaLocation="urn:jboss:security-config:4.1 resource:security-config_4_1.xsd"
xmlns:jaas="urn:jboss:security-config:4.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<jaas:application-policy name="mySecurityDomain">
<jaas:authentication>
<jaas:login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="required">
<jaas:module-option name="unauthenticatedIdentity">noone</jaas:module-option>
<jaas:module-option name="dsJndiName">java:/myDataSource</jaas:module-option>
<jaas:module-option name="principalsQuery">SELECT password FROM WebServiceUser WHERE userName=?</jaas:module-option>
<jaas:module-option name="rolesQuery">SELECT role, 'Roles' FROM WebServiceUser WHERE userName=?</jaas:module-option>
</jaas:login-module>
</jaas:authentication>
</jaas:application-policy>
</jaas:policy>

</attribute>
</mbean>
</server>

最佳答案

您可以尝试使用 DynamicLoginConfig 服务设置登录模块。我从来没有使用过它,但它看起来可以帮助你。它允许您创建登录模块配置在不同的文件中并在应用程序安装期间部署它。

在这里您可以找到有关它的更多信息:

关于java - JBoss 的单独登录配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7584776/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com