我正在尝试配置WildFly Elytron,以允许在管理接口上使用两个不同的领域进行身份验证。
例如,我想使用一个ManagementRealm和一个MyLDAPRealm。如果用户在ManagementRealm中被识别,用户应该可以访问管理界面。如果没有,我想试试MyLDAPRealm。如果用户这次被识别,他应该可以访问管理界面。如果没有,它就会失败。一个简单的退路。
我更新了standalone.xml配置以使用Elytron,但它目前不起作用,而且文档也没有像希望的那样有所帮助。目前,我有以下配置位。
管理接口正在使用我要配置的身份验证工厂:
<management-interfaces>
<http-interface http-authentication-factory="management-http-authentication" ssl-context="localhostSslContext">
<http-upgrade enabled="true" sasl-authentication-factory="management-sasl-authentication"/>
<socket-binding http="management-http" https="management-https"/>
</http-interface>
</management-interfaces>身份验证工厂链接到我将更新的管理域:
<http-authentication-factory name="management-http-authentication" security-domain="ManagementDomain" http-server-mechanism-factory="global">
<mechanism-configuration>
<mechanism mechanism-name="DIGEST">
<mechanism-realm realm-name="Management and LDAP"/>
</mechanism>
</mechanism-configuration>
</http-authentication-factory>并更新了“管理域I”,以包括一个附加领域:
<security-domain name="ManagementDomain" default-realm="ManagementRealm" permission-mapper="default-permission-mapper">
<realm name="ManagementRealm" role-decoder="groups-to-roles"/>
<realm name="MyLDAPRealm" role-decoder="groups-to-roles"/>
<realm name="local" role-mapper="super-user-mapper"/>
</security-domain>使用此配置,如果用户在ManagementRealm中,而不是在MyLDAPRealm中,则对其进行身份验证并允许其进入。
这种配置是可能的还是我在Elytron链中遗漏了什么?
发布于 2021-06-17 12:02:49
我想你应该试试像这里这样的failover-realm:
http://www.mastertheboss.com/jboss-server/jboss-security/managing-failover-and-distributed-realms-in-elytron
https://stackoverflow.com/questions/67725060
复制相似问题