当前的JBoss EAP甚至WildFly文档描述了启用服务器到服务器远程EJB调用的配置,但只考虑了遗留安全子系统,请特别参阅
https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.4/html/developing_jakarta_enterprise_beans_applications/clustered_jakarta_enterprise_beans#remote_clients_on_another_instance
https://docs.wildfly.org/26.1/Developer_Guide.html#packaging-the-client-application-on-the-client-server
这些方案使用了jboss-ejb-client.xml,如下所示:
<jboss-ejb-client xmlns:xsi="urn:jboss:ejb-client:1.2" xsi:noNamespaceSchemaLocation="jboss-ejb-client_1_2.xsd">
<client-context>
<ejb-receivers>
<remoting-ejb-receiver outbound-connection-ref="remote-ejb-connection-1" />
<remoting-ejb-receiver outbound-connection-ref="remote-ejb-connection-2" />
</ejb-receivers>
<clusters>
<cluster name="ejb" security-realm="ejb-security-realm-1" username="quickuser1">
<connection-creation-options>
<property name="org.xnio.Options.SSL_ENABLED" value="false" />
<property name="org.xnio.Options.SASL_POLICY_NOANONYMOUS" value="false" />
</connection-creation-options>
</cluster>
</clusters>
</client-context>
</jboss-ejb-client>
如您所见,它使用了security-realm和username元素,这些元素由遗留安全子系统使用。
当你想使用Elytron时,配置应该有所不同,但这在任何地方都没有记录,甚至在迁移指南中也没有。那里只介绍了使用wildfly-config.xml的独立客户端配置。
服务器到服务器的配置在客户端应该是什么样子的?
到目前为止,我只找到了这篇5年前的文章:https://developer.jboss.org/people/fjuma/blog/2017/09/08/getting-started-with-ejbs-and-elytron-part-2,这可能是最接近的,但有几点我不确定,例如,缺少任何与群集相关的客户端配置,以及多个连接的任何分离(到多个群集),已知如果配置不当会导致性能问题(需要为每个集群配置不同的集群名称)。使用Elytron时可能没有问题,因为使用了不同的实现,但在任何情况下,它在文档中完全缺失,因此目前它更多的是一种尝试和错误。
1条答案
按热度按时间djmepvbi1#
是的,您可以按照找到的博客帖子中的描述添加身份验证上下文。
验证上下文中可以配置规则,您可以在其中指定https://docs.wildfly.org/26/wildscribe/subsystem/elytron/authentication-context/index.html时使用的验证配置。这些匹配规则可用于为不同的pot、主机名、路径协议等配置不同的配置。
您可以在jira https://issues.redhat.com/projects/ELY/issues中创建一个问题,以增强文档或迁移文档