You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by co...@apache.org on 2013/03/13 14:12:04 UTC

svn commit: r1455924 - in /webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy: SP12Constants.java SPConstants.java builders/HttpsTokenBuilder.java model/HttpsToken.java

Author: coheigea
Date: Wed Mar 13 13:12:04 2013
New Revision: 1455924

URL: http://svn.apache.org/r1455924
Log:
Fixed WS-SP 1.1 RequireClientCertificate handling

Modified:
    webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SP12Constants.java
    webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SPConstants.java
    webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/builders/HttpsTokenBuilder.java
    webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/model/HttpsToken.java

Modified: webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SP12Constants.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SP12Constants.java?rev=1455924&r1=1455923&r2=1455924&view=diff
==============================================================================
--- webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SP12Constants.java (original)
+++ webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SP12Constants.java Wed Mar 13 13:12:04 2013
@@ -67,13 +67,13 @@ public class SP12Constants extends SPCon
             SP12Constants.SP_NS, SPConstants.TRUST_13, SP12Constants.SP_PREFIX);
 
     public static final QName REQUIRE_CLIENT_CERTIFICATE = new QName(
-            SP12Constants.SP_NS, "RequireClientCertificate", SP12Constants.SP_PREFIX);
+            SP12Constants.SP_NS, SPConstants.REQUIRE_CLIENT_CERTIFICATE, SP12Constants.SP_PREFIX);
 
     public static final QName HTTP_BASIC_AUTHENTICATION = new QName(
-            SP12Constants.SP_NS, "HttpBasicAuthentication", SP12Constants.SP_PREFIX);
+            SP12Constants.SP_NS, SPConstants.HTTP_BASIC_AUTHENTICATION, SP12Constants.SP_PREFIX);
 
     public static final QName HTTP_DIGEST_AUTHENTICATION = new QName(
-            SP12Constants.SP_NS, "HttpDigestAuthentication", SP12Constants.SP_PREFIX);
+            SP12Constants.SP_NS, SPConstants.HTTP_DIGEST_AUTHENTICATION, SP12Constants.SP_PREFIX);
 
     public static final QName TRANSPORT_BINDING = new QName(
             SP12Constants.SP_NS, SPConstants.TRANSPORT_BINDING, SP12Constants.SP_PREFIX);

Modified: webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SPConstants.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SPConstants.java?rev=1455924&r1=1455923&r2=1455924&view=diff
==============================================================================
--- webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SPConstants.java (original)
+++ webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/SPConstants.java Wed Mar 13 13:12:04 2013
@@ -186,11 +186,11 @@ public abstract class SPConstants {
 
     public final static String SPNEGO_CONTEXT_TOKEN = "SpnegoContextToken";
 
-    public final static QName REQUIRE_CLIENT_CERTIFICATE = new QName("RequireClientCertificate");
+    public final static String REQUIRE_CLIENT_CERTIFICATE = "RequireClientCertificate";
 
-    public final static QName HTTP_BASIC_AUTHENTICATION = new QName("HttpBasicAuthentication");
+    public final static String HTTP_BASIC_AUTHENTICATION = "HttpBasicAuthentication";
 
-    public final static QName HTTP_DIGEST_AUTHENTICATION = new QName("HttpDigestAuthentication");
+    public final static String HTTP_DIGEST_AUTHENTICATION = "HttpDigestAuthentication";
 
     public final static String SECURITY_CONTEXT_TOKEN = "SecurityContextToken";
 

Modified: webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/builders/HttpsTokenBuilder.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/builders/HttpsTokenBuilder.java?rev=1455924&r1=1455923&r2=1455924&view=diff
==============================================================================
--- webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/builders/HttpsTokenBuilder.java (original)
+++ webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/builders/HttpsTokenBuilder.java Wed Mar 13 13:12:04 2013
@@ -63,6 +63,15 @@ public class HttpsTokenBuilder implement
                 claims,
                 nestedPolicy
         );
+        
+        if (spVersion == SPConstants.SPVersion.SP11) {
+            String attr = 
+                SPUtils.getAttribute(element, new QName(null, SPConstants.REQUIRE_CLIENT_CERTIFICATE));
+            if ("true".equals(attr)) {
+                httpsToken.setAuthenticationType(HttpsToken.AuthenticationType.RequireClientCertificate);
+            }
+        }
+        
         httpsToken.setOptional(SPUtils.isOptional(element));
         httpsToken.setIgnorable(SPUtils.isIgnorable(element));
         return httpsToken;

Modified: webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/model/HttpsToken.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/model/HttpsToken.java?rev=1455924&r1=1455923&r2=1455924&view=diff
==============================================================================
--- webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/model/HttpsToken.java (original)
+++ webservices/wss4j/trunk/policy/src/main/java/org/apache/wss4j/policy/model/HttpsToken.java Wed Mar 13 13:12:04 2013
@@ -90,7 +90,7 @@ public class HttpsToken extends Abstract
         return authenticationType;
     }
 
-    protected void setAuthenticationType(AuthenticationType authenticationType) {
+    public void setAuthenticationType(AuthenticationType authenticationType) {
         this.authenticationType = authenticationType;
     }
 }