我使用 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/