繁体   English   中英

如何通过Axis2 WebService中的用户名和密码进行身份验证?

[英]How to authenticate by user name and password in an Axis2 WebService?

我已经通过Java中的Axis2构建了一个Web服务,并将其上传到服务器上。 一切都很好,它工作正常。 但是我还没有考虑过任何身份验证方法。 如何为我的方法设置用户名和密码?

Web服务认证的标准是WS-Security Axis2实现称为Rampart

您可以创建一个接受用户名和密码的Web服务方法。
如果用户名和密码正确,那么您将创建一个会话令牌(最好使用凭据创建)并将其发送回Web服务客户端。
每个Web服务调用的客户端也必须与请求参数一起发送令牌。
由于请求具有有效的令牌,因此该客户端被视为已通过身份验证,因此您可以继续进行Web服务调用。

如果您使用的是servlet(而不是定制的独立服务器应用程序),则可以使用servlet过滤器进行身份验证。

根据您使用的Web框架,您可以为此使用标准安全性。 就像您保护页面安全一样。

或者,您可以使用http BASIC或DIGEST身份验证来保护资源。

Web服务(对于容器)只不过是网页,因此可以通过所有标准方式对其进行保护。

您可以成功使用现有的Axis2模块之一:Rampart。

检查网站( http://axis.apache.org/axis2/java/rampart/ ),以获取设置/配置说明以及客户端和服务器示例。

通过Rampart,我设法对WCF服务器和Java客户端使用UsernameAndPassword身份验证。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM