如何实现使用基于 NTLM 身份验证的身份验证连接到外部 Web 服务的 Web 服务客户端
我对用java实现Web服务客户端还很陌生。 我发现一个教程非常有用...http ://wso2.org/library/tutorials/creating-web-service-client-3-steps-using-eclipse。
就我而言,我收到 401 错误:未经授权。 访问 wsdl 是正常的,我需要输入用户名/密码。 在这种情况下该怎么办? 关于安全部分的一些输入:
WWW-Authenticate Negotiate NTLM + Web services +HTTP 401 所以我不知道哪个java库可以在这种情况下帮助我以及如何将它集成到我的代码中。
感谢您的帮助 拉娜
i'm quite new in implementing web service client in java.
i found a tutorial very useful...http://wso2.org/library/tutorials/creating-web-service-client-3-steps-using-eclipse.
in my case i got 401 error: Unauthorized.
It is normal as to access the wsdl i need to type the username/password.
how one can do in that case?
Some input on the security part:
WWW-Authenticate Negotiate NTLM + web services +HTTP 401
so i don't know which java library can help me in that case and how to integrate it in my code.
thanks for your help
Lana
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如前所述,您正在访问一个需要您进行身份验证的 Web 服务。 NTLM 是 Microsoft 堆栈通常使用的一种身份验证机制。 此 WSO2 页面介绍如何配置 Axis2 以使用 NTLM 进行身份验证。
不幸的是,如果您尝试通过 Eclipse 来完成此操作,这不会有任何帮助。在这种情况下,我建议下载 WSDL(我假设您知道用户名和密码),当 Eclipse 要求您“选择服务定义”时,请使用 WSDL 的本地副本。不过,当您连接到 Web 服务时,您将需要编写代码来提供凭据。
编辑:编辑提及下载 WSDL。
As mentioned, you're hitting a Web Service that has requires you authenticate with it. NTLM is an authentication mechanism typically used by a Microsoft stack. This WSO2 page describes how to configure Axis2 to authenticate using NTLM.
Unfortunately, that's not going to help if you're trying to do it through Eclipse. What I'd recommend in that case is to download the WSDL (I'm assuming you know the username and passsword) and when Eclipse asks you to "Select a Service Definition", use the local copy of the WSDL instead. You will need to code to supply the credentials, though, when you connect to the web service.
Edit: Edited to mention downloading the WSDL.