SSO 的 Jersey 身份验证
Jersey authentication for SSO
我目前正在尝试使用 Jersey 访问 Jira REST。
问题是我们的 Jira 设置了单点登录。
使用 "client.addFilter(new HTTPBasicAuthFilter(..." 的身份验证不起作用。
如果我通过浏览器访问 Jira,然后将收到的 cookie 硬编码到 Jersey,我就可以访问 Jira REST。
我现在的问题是如何通过 SSO 登录 Jersey。
据我所见,单击 SSO 页面上的 "Login" 只会发送一个 POST 请求,请求正文如 "username=&password=&login-form-type=pwd"。
所以我应该能够像我猜的那样用 Jersey 检索 cookie...
干杯!
我设法用 Selenium Ghost Driver 完成了它。
DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
"/Path/to/bin/phantomjs");
driver = new PhantomJSDriver(caps);
之后我使用驱动程序输入用户名和密码,登录,获取新的 cookie,然后将此 cookie 与 Jersey 一起使用。
可能不是理想的方式,但它确实有效。
How to run ghostdriver with Selenium using java
我目前正在尝试使用 Jersey 访问 Jira REST。 问题是我们的 Jira 设置了单点登录。 使用 "client.addFilter(new HTTPBasicAuthFilter(..." 的身份验证不起作用。 如果我通过浏览器访问 Jira,然后将收到的 cookie 硬编码到 Jersey,我就可以访问 Jira REST。
我现在的问题是如何通过 SSO 登录 Jersey。 据我所见,单击 SSO 页面上的 "Login" 只会发送一个 POST 请求,请求正文如 "username=&password=&login-form-type=pwd"。 所以我应该能够像我猜的那样用 Jersey 检索 cookie...
干杯!
我设法用 Selenium Ghost Driver 完成了它。
DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
"/Path/to/bin/phantomjs");
driver = new PhantomJSDriver(caps);
之后我使用驱动程序输入用户名和密码,登录,获取新的 cookie,然后将此 cookie 与 Jersey 一起使用。
可能不是理想的方式,但它确实有效。
How to run ghostdriver with Selenium using java