我使用JAX-RS开发了一个REST Web服务,该服务托管在Apache Tomcat服务器上。我使用Eclipse进行开发并托管在Windows 7 Enterprise机器上。现在我需要提供Kerberos身份验证来从任何客户端(例如SoapUI)访问我的服务。我试图从许多网站获取信息,但我得到的只是linux机器上的配置。 我是安全概念和身份验证机制和架构的新手,我将非常感谢您的详细解释。
答案 0 :(得分:0)
以下是有关如何将Tomcat与Windows身份验证集成的详细说明:
https://tomcat.apache.org/tomcat-7.0-doc/windows-auth-howto.html
请注意,您可能需要两件不同的东西,我不确定您要找的是哪一件。
第一个始终是透明的,这意味着用户无需再次输入用户名+密码。在第二个中,她显然必须这样做。
如果您正在寻找其他服务(如SoapUI)来使用Kerberos票证访问您的服务,那么这些服务需要自己获得票证。如果您只是希望这些服务使用用户名+密码(而不是Kerberos),那么您当然不需要票证。
澄清后编辑:使用Windows域中的用户名+密码实际上根本不涉及Kerberos。它使用LDAP进行身份验证,映射到Java中的JNDI。在Tomcat中有一个JNDIRealm来设置它,如下所述:
https://tomcat.apache.org/tomcat-7.0-doc/realm-howto.html#JNDIRealm