Author: coheigea
Date: Tue Feb 15 17:57:46 2011
New Revision: 1070988
URL: http://svn.apache.org/viewvc?rev=1070988&view=rev
Log:
Added some wsse11:TokenType stuff for references to SAML Assertions.
Modified:
webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecEncrypt.java
webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecSignature.java
Modified:
webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecEncrypt.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecEncrypt.java?rev=1070988&r1=1070987&r2=1070988&view=diff
==============================================================================
---
webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecEncrypt.java
(original)
+++
webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecEncrypt.java
Tue Feb 15 17:57:46 2011
@@ -513,12 +513,14 @@ public class WSSecEncrypt extends WSSecE
keyInfo.addKeyName(embeddedKeyName == null ? user :
embeddedKeyName);
} else if
(WSConstants.WSS_SAML_KI_VALUE_TYPE.equals(customReferenceValue)) {
SecurityTokenReference secToken = new
SecurityTokenReference(document);
+ secToken.addTokenType(WSConstants.WSS_SAML_TOKEN_TYPE);
secToken.setKeyIdentifier(
WSConstants.WSS_SAML_KI_VALUE_TYPE, (encKeyIdDirectId ?
"":"#") + encKeyId
);
keyInfo.addUnknownElement(secToken.getElement());
} else if
(WSConstants.WSS_SAML2_KI_VALUE_TYPE.equals(customReferenceValue)) {
SecurityTokenReference secToken = new
SecurityTokenReference(document);
+ secToken.addTokenType(WSConstants.WSS_SAML2_TOKEN_TYPE);
secToken.setKeyIdentifier(
WSConstants.WSS_SAML2_KI_VALUE_TYPE, (encKeyIdDirectId ?
"":"#") + encKeyId
);
Modified:
webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecSignature.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecSignature.java?rev=1070988&r1=1070987&r2=1070988&view=diff
==============================================================================
---
webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecSignature.java
(original)
+++
webservices/wss4j/trunk/src/main/java/org/apache/ws/security/message/WSSecSignature.java
Tue Feb 15 17:57:46 2011
@@ -216,20 +216,39 @@ public class WSSecSignature extends WSSe
case WSConstants.CUSTOM_SYMM_SIGNING :
Reference refCust = new Reference(document);
- refCust.setValueType(customTokenValueType);
+ if
(WSConstants.WSS_SAML_KI_VALUE_TYPE.equals(customTokenValueType)) {
+ secRef.addTokenType(WSConstants.WSS_SAML_TOKEN_TYPE);
+ refCust.setValueType(customTokenValueType);
+ } else if
(WSConstants.WSS_SAML2_KI_VALUE_TYPE.equals(customTokenValueType)) {
+ secRef.addTokenType(WSConstants.WSS_SAML2_TOKEN_TYPE);
+ } else {
+ refCust.setValueType(customTokenValueType);
+ }
refCust.setURI("#" + customTokenId);
secRef.setReference(refCust);
break;
case WSConstants.CUSTOM_SYMM_SIGNING_DIRECT :
Reference refCustd = new Reference(document);
- refCustd.setValueType(customTokenValueType);
+ if
(WSConstants.WSS_SAML_KI_VALUE_TYPE.equals(customTokenValueType)) {
+ secRef.addTokenType(WSConstants.WSS_SAML_TOKEN_TYPE);
+ refCustd.setValueType(customTokenValueType);
+ } else if
(WSConstants.WSS_SAML2_KI_VALUE_TYPE.equals(customTokenValueType)) {
+ secRef.addTokenType(WSConstants.WSS_SAML2_TOKEN_TYPE);
+ } else {
+ refCustd.setValueType(customTokenValueType);
+ }
refCustd.setURI(customTokenId);
secRef.setReference(refCustd);
break;
case WSConstants.CUSTOM_KEY_IDENTIFIER:
secRef.setKeyIdentifier(customTokenValueType, customTokenId);
+ if
(WSConstants.WSS_SAML_KI_VALUE_TYPE.equals(customTokenValueType)) {
+ secRef.addTokenType(WSConstants.WSS_SAML_TOKEN_TYPE);
+ } else if
(WSConstants.WSS_SAML2_KI_VALUE_TYPE.equals(customTokenValueType)) {
+ secRef.addTokenType(WSConstants.WSS_SAML2_TOKEN_TYPE);
+ }
break;
case WSConstants.KEY_VALUE: