You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by pr...@apache.org on 2010/04/21 11:54:21 UTC
svn commit: r936232 -
/axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
Author: prabath
Date: Wed Apr 21 09:54:21 2010
New Revision: 936232
URL: http://svn.apache.org/viewvc?rev=936232&view=rev
Log:
Validator to allow missing UsernameToken and X509Token if they are optional
Modified:
axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
Modified: axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java?rev=936232&r1=936231&r2=936232&view=diff
==============================================================================
--- axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java (original)
+++ axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java Wed Apr 21 09:54:21 2010
@@ -291,9 +291,10 @@ public class PolicyBasedResultsValidator
for (Iterator iter = tokens.iterator(); iter.hasNext();) {
Token token = (Token) iter.next();
if(token instanceof UsernameToken) {
+ UsernameToken ut = (UsernameToken) token;
//Check presence of a UsernameToken
WSSecurityEngineResult utResult = WSSecurityUtil.fetchActionResult(results, WSConstants.UT);
- if(utResult == null) {
+ if(utResult == null && !ut.isOptional()) {
throw new RampartException("usernameTokenMissing");
}
@@ -304,8 +305,9 @@ public class PolicyBasedResultsValidator
throw new RampartException("samlTokenMissing");
}
} else if ( token instanceof X509Token) {
+ X509Token x509Token = (X509Token) token;
WSSecurityEngineResult x509Result = WSSecurityUtil.fetchActionResult(results, WSConstants.BST);
- if(x509Result == null) {
+ if(x509Result == null && !x509Token.isOptional()) {
throw new RampartException("binaryTokenMissing");
}
}