java - 访问受 SSO 保护的 Web 服务

标签 java web-services single-sign-on

我使用 java.net.URLConnection 编写了一个简单的 java 客户端来连接到受 SSO 保护的 Web 服务。我还扩展了 java.net.Authenticator 并为我自己的身份 validator 提供了 SSO 的用户名和密码,但我仍然无法从我的 java 客户端访问 Web 服务。

我有什么遗漏的东西吗? 你能帮我么?

谢谢, 洛克什

最佳答案

您需要弄清楚该站点使用什么登录机制。如果您提供了身份 validator 但该身份 validator 不起作用,则该站点可能会将客户端重定向到带有用于输入登录凭据的表单的登录页面。您应该能够从 HTML 表单中找出要发送的请求。

您可能缺少的另一件事是您必须跟踪服务器尝试设置的 cookie,并在您的请求中提供它们。很可能会有一个 session token ,允许服务器在您登录后将您的请求与您经过身份验证的身份进行匹配。

关于java - 访问受 SSO 保护的 Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5050990/

相关文章:

java - 使一组函数全部返回唯一值而无需硬编码数字?

java - 许多Java集合都实现了add方法——它们实际上是深复制

c# - C# 中的 Web 服务和属性

spring-security - 使用 Spring Security 的预认证/单点登录

java - 从java方法返回不同的类型

java - 从 ByteBuffer/Netty ByteBuff 并行/多线程读取

java - 如何通过 WebSocket 响应 Web 服务请求

web-services - 寻找免费的地理定位服务(来自国家/省/市)或数据库?

spring-security - Spring Security OAuth2 SSO 与自定义提供程序 + 注销

rest - 使用 Spring Security 在 Web 应用程序和 RESTful 服务之间共享安全上下文