首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Elytron Wildfly 17中的jdbc领域对用户进行身份验证?

如何使用Elytron Wildfly 17中的jdbc领域对用户进行身份验证?
EN

Stack Overflow用户
提问于 2020-09-17 22:29:16
回答 1查看 501关注 0票数 1

我一直在研究Wildfly 17 Elytron我已经使用这些jboss-cli和以下命令对其进行了配置。

代码语言:javascript
复制
/subsystem=elytron/jdbc-realm=test-realm:add(principal-query=[{sql="SELECT hash FROM invientusers WHERE emailid = ?", data-source="dataSourcePoolName", clear-password-mapper={password-index=1}},{sql="SELECT Roles FROM Roles WHERE emailid = ?", data-source="dataSourcePoolName", attribute-mapping=[{index=1, to=roles}]}])

/subsystem=elytron/simple-role-decoder=from-roles-attribute:add(attribute=roles)

/subsystem=elytron/security-domain=test-security-sd:add(default-realm=test-realm, realms=[{realm=test-realm, role-decoder=from-roles-attribute}], permission-mapper=default-permission-mapper)

/subsystem=elytron/http-authentication-factory=test-security-http-auth:add(http-server-mechanism-factory=global,security-domain=test-security-sd,mechanism-configurations=[{mechanism-name=BASIC,mechanism-realm-configurations=[{realm-name=test-realm}]}])

 /subsystem=undertow/application-security-domain=test-security-sd:add(http-authentication-factory=test-security-http-auth)

/subsystem=elytron/sasl-authentication-factory=test-sasl-authentication:add(sasl-server-factory=configured,security-domain=test-security-sd,mechanism-configurations=[{mechanism-name=PLAIN}])

/subsystem=remoting/http-connector=http-remoting-connector:write-attribute(name=sasl-authentication-factory,value=test-sasl-authentication)

/subsystem=ejb3/application-security-domain=test-domain:add(security-domain=test-security-sd)

Ejb代码

代码语言:javascript
复制
@SecurityDomain("test-domain")
public class SecuredEJB {

web.xml

代码语言:javascript
复制
<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>test-sasl-authentication</realm-name>
</login-config>

我希望这段代码能够使用JDBC测试领域进行验证。但它使用基于文件的默认域进行ejb验证。

EN

回答 1

Stack Overflow用户

发布于 2020-12-11 00:01:21

您还需要在EJB3子系统中添加域映射:

代码语言:javascript
复制
/subsystem=ejb3/application-security-domain=other:add(security-domain=test-security-sd)

看一下这个关于如何使用文件系统领域保护EJB的example。脚本configure-elytron.cli包含配置服务器所需的所有管理操作。大多数步骤都应该适用于您的场景,除非您要配置JDBC领域。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63940268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档