0

如何设置 spring ws 客户端,即“WebServiceTemplate”来向服务发出请求并使用 kerberos 进行身份验证。该服务是tomcat 上的一个spring ws 端点,它是kerberized。

遇到以下帖子Spring Security Kerberos/SPNEGO Extension

此设置是否允许 spring ws 客户端使用 kerberos 进行身份验证?

<sec:http entry-point-ref="spnegoEntryPoint">
    <sec:intercept-url pattern="/secure/**" access="IS_AUTHENTICATED_FULLY" />
    <sec:custom-filter ref="spnegoAuthenticationProcessingFilter" position="BASIC_PROCESSING_FILTER" />
</sec:http>

<bean id="spnegoEntryPoint" class="org.springframework.security.extensions.kerberos.web.SpnegoEntryPoint" />

<bean id="spnegoAuthenticationProcessingFilter" class="org.springframework.security.extensions.kerberos.web.SpnegoAuthenticationProcessingFilter">
    <property name="authenticationManager" ref="authenticationManager" />
</bean>

<sec:authentication-manager alias="authenticationManager">
    <sec:authentication-provider ref="kerberosServiceAuthenticationProvider" />
</sec:authentication-manager>

<bean id="kerberosServiceAuthenticationProvider" class="org.springframework.security.extensions.kerberos.KerberosServiceAuthenticationProvider">
    <property name="ticketValidator">
        <bean class="org.springframework.security.extensions.kerberos.SunJaasKerberosTicketValidator">
            <property name="servicePrincipal" value="HTTP/web.springsource.com" />
            <property name="keyTabLocation" value="classpath:http-web.keytab" />
        </bean>
    </property>
    <property name="userDetailsService" ref="dummyUserDetailsService" />
</bean>

<!-- Just returns the User authenticated by Kerberos and gives him the ROLE_USER -->
<bean id="dummyUserDetailsService" class="org.springframework.security.extensions.kerberos.sample.DummyUserDetailsService"/>

如果我可以使用它来使用 kerberos 对服务进行身份验证,有人可以告诉我以下行的目的。“dummyUserDetailsS​​ervice”的实施应该包括什么

<bean id="dummyUserDetailsService" class="org.springframework.security.extensions.kerberos.sample.DummyUserDetailsService"/>

另外,我如何设置通过 SSL 进行这些调用

非常感谢,

4

1 回答 1

0

您提到的 Spring 配置用于设置 Web 应用程序(服务器端),以便它可以处理 Kerberos 身份验证。您的问题实际上是关于如何使客户端与可以进行 Kerberos 身份验证的服务器一起工作。我的建议是首先让您的服务器使用 kerberos 身份验证。您最初可以使用浏览器对其进行测试。

之后,您可以使用普通的 Java 客户端代码连接到服务器。有关详细信息,请参阅以下线程:Java 中的简单 Kerberos 客户端?

于 2012-10-05T04:02:38.207 回答