axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <>
Subject [jira] [Commented] (RAMPART-417) Support for transport binding Kerberos v5 authentication
Date Sun, 29 Jan 2017 00:06:25 GMT


Hudson commented on RAMPART-417:

SUCCESS: Integrated in Jenkins build Rampart #2344 (See [])
RAMPART-417, RAMPART-433: Add Kerberos support. Based on patches provided by Detelin Yordanov
and Boris Dushanov. (veithen: rev 1780752)
* (edit) trunk
* (edit) trunk/modules/rampart-core/pom.xml
* (edit) trunk/modules/rampart-core/src/main/java/org/apache/rampart/
* (edit) trunk/modules/rampart-core/src/main/java/org/apache/rampart/builder/
* (edit) trunk/modules/rampart-core/src/main/java/org/apache/rampart/builder/
* (add) trunk/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/
* (edit) trunk/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/
* (add) trunk/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/
* (edit) trunk/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/
* (edit) trunk/modules/rampart-core/src/main/java/org/apache/rampart/util/
* (edit) trunk/modules/rampart-core/src/main/resources/META-INF/services/
* (edit) trunk/modules/rampart-core/src/main/resources/org/apache/rampart/
* (add) trunk/modules/rampart-core/src/test/java/org/apache/rampart/policy
* (add) trunk/modules/rampart-core/src/test/resources/org/apache/rampart/policy
* (edit) trunk/modules/rampart-integration/pom.xml
* (add) trunk/modules/rampart-integration/src/test/java/org/apache/rampart/
* (add) trunk/modules/rampart-integration/src/test/java/org/apache/rampart/
* (add) trunk/modules/rampart-integration/src/test/java/org/apache/rampart/
* (add) trunk/modules/rampart-integration/src/test/java/org/apache/rampart/util
* (add) trunk/modules/rampart-integration/src/test/resources/kerberos
* (add) trunk/modules/rampart-integration/src/test/resources/rampart/kerberos
* (edit) trunk/modules/rampart-policy/pom.xml
* (edit) trunk/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/
* (edit) trunk/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/
* (edit) trunk/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/
* (edit) trunk/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/
* (add) trunk/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy/model/
* (add) trunk/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy11/builders/
* (add) trunk/modules/rampart-policy/src/main/java/org/apache/ws/secpolicy12/builders/
* (edit) trunk/modules/rampart-policy/src/main/resources/META-INF/services/
* (add) trunk/modules/rampart-policy/src/test
* (edit) trunk/pom.xml

> Support for transport binding Kerberos v5 authentication
> --------------------------------------------------------
>                 Key: RAMPART-417
>                 URL:
>             Project: Rampart
>          Issue Type: New Feature
>          Components: rampart-core
>    Affects Versions: 1.6.2
>            Reporter: Detelin Yordanov
>            Assignee: Andreas Veithen
>              Labels: Patch
>             Fix For: 1.7.1
>         Attachments: ImportService.wsdl, rampart_kerberos.patch
> While other web services runtimes (Metro, CXF, WCF) provide some level of support for
Kerberos authentication, Rampart is lacking such at the moment. There are two basic mechanisms
for bringing Kerberos authentication to web services:
> 1. Kerberos authentication over secure transport - transport-level security (https) with
Kerberos token attached as supporting token
> 2. Kerberos authentication using symmetric binding - Kerberos session key is used for
message protection and Kerberos token - for client authentication
> My team developed a Rampart extension that provides support for Kerberos authentication
over secure transport (1) and we are willing to contribute this to the community. This support
requires Kerberos enhancements released with wss4j 1.6.16 and can work with both Java 1.6
and 1.7. We have tested this for interoperability with Apache DS and Active Directory Kerberos
servers. This support can also be used to develop an Axis2 client for a MS .NET web service
that uses [KerberosOverTransport|]
security policy - for this an extension in Axis2 to support WS-AddressingIdentity specification
is needed, see AXIS2-5659.
> I'm attaching a patch with all the necessary changes - it contains two integration tests
using an embedded Apache DS Kerberos server. The patch requires Jetty HTTPS support in Rampart
integration module - this is reported as a separate issue - RAMPART-416.
> Please note that using this with Java 1.6 requires a [KerberosTokenDecoder|]
implementation to be plugged in. A default implementation that uses Apache DS Kerberos API
is available in wss4j 2.0, so once Rampart updates to this wss4j version, Kerberos authentication
support will be available OOTB for Java 1.6. Since Rampart is currently built with Java 1.6,
Rampart integration module has to include a back-ported version of wss4j's [KerberosTokenDecoder|]
implementation so that the tests could pass. They are also passing with Java 1.7 without this
decoder implementation in place.
> A new KerberosConfig Rampart configuration extension is available for configuring Kerberos-specific
settings. It has extensive javadoc, but if needed we might add a separate documentation that
explains how to use it. The integration tests demonstrate end-to-end Kerberos authentication
scenario both using Kerberos key table files and Password callback handlers.
> We have also tried the Kerberos authentication scenario with IBM JDK, but encountered
issues in IBM's JGSS implementation. We have followed up with IBM on fixing those, but it
might take some time till this works with IBM JDK. Still, we do not expect any changes to
be needed in Rampart for this to work.
> Any comments or questions on this support are welcome. I will try to provide a patch
for Rampart 1.6 as well, if you think it is valuable to have this support there as well.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message