You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在JBoss EAP 7.1/WildFly中通过WS-Security头SAML凭证初始化EJB安全上下文

问题:Web服务安全上下文到EJB会话上下文的用户身份传播

我正在给SOAP Web服务配置WS-Security策略,核心是要支持SAML 2.0 Bearer和SAML 2.0 Sender Vouches两种认证模式,最终目标是利用SAML令牌中的凭证初始化EJB安全上下文,让应用的EJB模块能正确完成用户授权逻辑。

目前我已经通过嵌入式Apache CXF完成了Web服务的安全配置,也能成功初始化Web服务安全上下文——调用WebServiceContext.getUserPrincipal()可以正常获取到用户主体。但遇到了一个卡壳的问题:没办法把这个用户上下文从Web服务上下文传播到EJB会话上下文,SessionContext.getCallerPrincipal()始终拿不到正确的用户信息。

我自己梳理了思路,觉得应该要实现类似JBoss WS-Security相关功能的逻辑,也就是编写一个自定义的CXF拦截器,类似SubjectCreatingPolicyInterceptor那样,通过解析SAML令牌里的凭证来创建并传递EJB安全上下文,但具体的实现细节还没理清,想请教各位有没有靠谱的实现建议或者思路?


内容的提问来源于stack exchange,提问作者SKempken

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:16:00