Axis2如何限制一个Web服务

Posted

技术标签:

【中文标题】Axis2如何限制一个Web服务【英文标题】:Axis2 how to restrict one web service 【发布时间】:2013-01-20 13:15:28 【问题描述】:

我有两个网络服务。 我用于移动应用程序的一种,用于从数据库中选择/更新数据。我被要求为第三方编写另一个 Web 服务,以从我们的数据库中收集公共数据。我不希望我的第一个服务公开。 如果我将我的 Web 服务的链接提供给任何人,他们也可以看到我的其他 Web 服务 例如,

http://server.mydomain.com/axis2/services/WebService?wsdl

任何人都可以使用

列出我的所有服务

http://server.mydomain.com/axis2/services/listService

有没有办法让我向公众隐藏我的一项服务?

有什么想法吗???

谢谢

【问题讨论】:

【参考方案1】:

基本 URL 相同,因此,是的,用户可以看到所有服务。但这并不意味着他们也可以访问它。您可以通过设置一些身份验证/授权来限制访问。

但如果你不想让人们知道它。我建议最好把它放在一个单独的 Axis 引擎中。让你的网址变得不一样。

【讨论】:

这是个好主意!我真的不希望人们知道其他服务,因为只有我将它用于移动应用程序,所以我没有进行任何身份验证检查(这非常糟糕)。但现在我可以将新服务放在另一个 Axis2 引擎中,因为我不介意更改 URL。谢谢

以上是关于Axis2如何限制一个Web服务的主要内容,如果未能解决你的问题,请参考以下文章

Axis2 与旧 wsdl 文件/Web 服务的兼容性

使用 https 使用不同的 web 服务但只有一个使用证书身份验证后的 Axis2 问题

Axis2 Web服务配置文件services.xml详解

Axis2 的 wsdl2java 在 RPC/Encoded 样式 Web 服务上失败

Tomcat v7.0 服务器中的 Apache Axis2 Web 服务运行时不支持服务项目测试

Axis2 webservice 和 CXF web service 的区别