【问题标题】:Restful Web Service with Kerberos Authentication带有 Kerberos 身份验证的 Restful Web 服务
【发布时间】:2013-12-03 06:24:39
【问题描述】:
启动一个新项目来创建一个需要 Kerberos (Active Directory) 对调用者进行身份验证的静态 Web 服务。
Web 服务将由 Tomcat 托管,我计划将 JAX-RS 与 JAAS 一起使用,但我没有找到太多关于这方面的信息,有没有人有相关信息或经验来帮助它工作?
我应该改用 Spring 和 Spring Security 吗?
【问题讨论】:
标签:
java
spring-security
jax-rs
【解决方案2】:
我也有同样的问题。我用谷歌搜索了很多,没有找到一个好的答案。
问题在于该问题有几个层,并且大多数答案都指向(通常是模糊的)只有一层的解决方案。
对于端到端解决方案,没有一个完整而清晰的示例。
图层
- 客户端使用 kerberos/windows 登录凭据调用 rest 服务。
- 答案通常显示如何使用 kerberos 进行身份验证,但没有说明如何使用它来将登录凭据传递给 REST 服务。
- Spring REST 客户端功能和本机 Java 似乎都能够做到这一点,但不清楚如何做到这一点。
- REST 服务处理通过 windows/kerberos 进行身份验证的客户端的身份验证请求。
- Spring REST 服务功能似乎是实现它的最简单方法,但同样不清楚如何告诉 REST 服务期待该身份验证方法。
- 要么将客户端 kerberos 凭据转发到 REST 服务尝试访问的任何资源,要么获得成功/失败,然后 REST 服务使用 kerberos/windows 身份验证本身(来自客户端的不同凭据)来访问资源。
我希望这个问题的澄清有助于产生一个好的答案。