如何在宁静的服务中提供kerberos / spnego支持?

时间:2017-04-24 08:47:17

标签: web-services rest jersey cxf kerberos

我有一个由C编写的客户端,它使用libcurl将json发送到一个restful api服务(比如服务器)。服务器是由java编写的,restful api是由jersey实现的,JAX-RS之一(它很简单,可以切换到另一个JAX-RS实现)。现在我想在C客户端访问java restful api服务器之间做一些安全工作。我在互联网上搜索,似乎我应该使用kerberos或spnego进行HTTP访问。我遇到了一些问题。

  1. 我想使用kerberos / spnego身份验证。但我查看了泽西文档(https://jersey.java.net/documentation/latest/security.html)的安全部分,但我没有找到任何与kerberos相关的文档。你知道球衣是否支持kerberos?

  2. 如果我切换到Apache CXF,是否可以轻松切换?我查看了有关CXF kerberos支持的文档。看起来太简单了,在使用Apache CXF时,您是否有任何详细的doc或简单示例来支持kerberos身份验证?

  3. 如果有任何错误,请纠正我。感谢。

1 个答案:

答案 0 :(得分:2)

泽西可以实现这一目标。 Jersey Client在其实现中使用ClosableHttpClient。

如果要对Kerberos使用SPNEGO身份验证方案,则可能必须编写自定义Connector和ConnectorProvider [我还没有找到使用ApacheConnector设置AuthenticationScheme的方法]。

如果它解决了您的用例Can JCIFS be used with Jersey?:)

,请查看此帖子以供参考