我们将旧版本的 apache axis2 之一用于我们的 Web 服务框架。我们正在使用壁垒 1.2 作为其中的一部分。
我正在尝试使用带有“nonce”和“timestamp”机制的密码摘要进行身份验证。我们正在准备进行验证。我的身份验证机制工作正常(包括密码回调等)
我担心要让壁垒识别“重放攻击”的问题,基本上与识别这些相关的壁垒模块的功能似乎是不活动的。我可以多次向我的axis2服务发送相同的安全标头(甚至发送我昨天生成的安全标头),它可以很好地进行身份验证并完成网络服务请求。
我最好的猜测是:我在某个地方缺少用于启用检测重放攻击的功能的壁垒模块的配置设置。我已经尝试了下面链接中给出的配置建议(在 services.xml 文件中),但似乎都不起作用:-
- http://hasini-gunasinghe.blogspot.com.au/2012_02_01_archive.html
- http://axis.apache.org/axis2/c/rampart/docs/configurations.html(在底部,它提到了“重放攻击”)
任何人都可以帮助或给我一些想法我缺少什么以及在哪里(我想它与配置设置相关)?
我的axis2.xml文件中有壁垒的模块声明:-
<module ref="rampart"/>
在声明了所有操作之后,我的 services.xml 文件中有我认为的壁垒配置设置;-
<parameter name="InflowSecurity">
<action>
<items>UsernameToken Timestamp</items>
<passwordCallbackClass>com.myCompany.service.dummy.MyAuthenticator</passwordCallbackClass>
</action>
</parameter>
<rampart:rampartconfig xmlns:rampart="http://ws.apache.org/rampart/policy">
<rampart:timestampprecisioninmilliseconds>true
</rampart:timestampprecisioninmilliseconds>
<rampart:timestampttl>300</rampart:timestampttl>
<rampart:timestampmaxskew>300</rampart:timestampmaxskew>
<rampart:timestampstrict>false</rampart:timestampstrict>
<rampart:ReplayDetection>1000</rampart:ReplayDetection>
</rampart:rampartconfig>