Modified:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecureConversationTokenTest.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecureConversationTokenTest.java?rev=1228829&r1=1228828&r2=1228829&view=diff
==============================================================================
---
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecureConversationTokenTest.java
(original)
+++
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecureConversationTokenTest.java
Sun Jan 8 11:44:13 2012
@@ -20,52 +20,155 @@ package org.swssf.policy.test;
import org.swssf.policy.PolicyEnforcer;
import org.swssf.policy.PolicyViolationException;
+import org.swssf.wss.ext.WSSConstants;
import org.swssf.wss.ext.WSSecurityException;
-import org.swssf.wss.securityEvent.SecureConversationTokenSecurityEvent;
-import org.swssf.wss.securityEvent.SecurityEvent;
+import org.swssf.wss.impl.securityToken.X509SecurityToken;
+import org.swssf.wss.securityEvent.*;
+import org.swssf.xmlsec.ext.XMLSecurityException;
import org.testng.Assert;
import org.testng.annotations.Test;
+import javax.xml.namespace.QName;
+
/**
- * @author $Author: giger $
- * @version $Revision: 1181995 $ $Date: 2011-10-11 20:03:00 +0200 (Tue, 11 Oct
2011) $
+ * @author $Author$
+ * @version $Revision$ $Date$
*/
public class SecureConversationTokenTest extends AbstractPolicyTestBase {
@Test
public void testPolicy() throws Exception {
String policyString =
- "<sp:SecureConversationToken
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\" " +
-
"xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
- "<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ "<sp:SymmetricBinding
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\"
xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
"<wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
- "<sp:RequireExternalUriReference/>\n" +
+ "<sp:EncryptionToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SecureConversationToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:RequireExternalUriReference/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SecureConversationToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:EncryptionToken>\n" +
+ "<sp:SignatureToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SecureConversationToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:RequireExternalUriReference/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SecureConversationToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:SignatureToken>\n" +
"</wsp:Policy>\n" +
- "</sp:SecureConversationToken>";
+ "</sp:SymmetricBinding>";
+
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent(SecurityEvent.Event.SecureConversationToken);
- secureConversationTokenSecurityEvent.setIssuerName("xs:anyURI");
- secureConversationTokenSecurityEvent.setExternalUriRef(true);
-
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
+ SecureConversationTokenSecurityEvent initiatorTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
+ initiatorTokenSecurityEvent.setIssuerName("xs:anyURI");
+ initiatorTokenSecurityEvent.setExternalUriRef(true);
+ initiatorTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
initiatorTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
+ policyEnforcer.registerSecurityEvent(initiatorTokenSecurityEvent);
+
+ SecureConversationTokenSecurityEvent recipientTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
+ recipientTokenSecurityEvent.setIssuerName("xs:anyURI");
+ recipientTokenSecurityEvent.setExternalUriRef(true);
+ recipientTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
recipientTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
+ policyEnforcer.registerSecurityEvent(recipientTokenSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(), true);
+ signedPartSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+ policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
+
+ ContentEncryptedElementSecurityEvent
contentEncryptedElementSecurityEvent = new
ContentEncryptedElementSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(),
true, true);
+
contentEncryptedElementSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+
policyEnforcer.registerSecurityEvent(contentEncryptedElementSecurityEvent);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
policyEnforcer.doFinal();
}
@Test
public void testPolicyNegative() throws Exception {
String policyString =
- "<sp:SecureConversationToken
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\" " +
-
"xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
- "<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ "<sp:SymmetricBinding
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\"
xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
"<wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
- "<sp:RequireExternalUriReference/>\n" +
+ "<sp:EncryptionToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SecureConversationToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:RequireExternalUriReference/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SecureConversationToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:EncryptionToken>\n" +
+ "<sp:SignatureToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SecureConversationToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:RequireExternalUriReference/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SecureConversationToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:SignatureToken>\n" +
"</wsp:Policy>\n" +
- "</sp:SecureConversationToken>";
+ "</sp:SymmetricBinding>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent(SecurityEvent.Event.SecureConversationToken);
- secureConversationTokenSecurityEvent.setIssuerName("sss");
- secureConversationTokenSecurityEvent.setExternalUriRef(true);
+ SecureConversationTokenSecurityEvent initiatorTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
+ initiatorTokenSecurityEvent.setIssuerName("sss");
+ initiatorTokenSecurityEvent.setExternalUriRef(true);
+ initiatorTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
initiatorTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
+ policyEnforcer.registerSecurityEvent(initiatorTokenSecurityEvent);
+
+ SecureConversationTokenSecurityEvent recipientTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
+ recipientTokenSecurityEvent.setIssuerName("sss");
+ recipientTokenSecurityEvent.setExternalUriRef(true);
+ recipientTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
recipientTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
+ policyEnforcer.registerSecurityEvent(recipientTokenSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(), true);
+ signedPartSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+ policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
+
+ ContentEncryptedElementSecurityEvent
contentEncryptedElementSecurityEvent = new
ContentEncryptedElementSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(),
true, true);
+
contentEncryptedElementSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+
policyEnforcer.registerSecurityEvent(contentEncryptedElementSecurityEvent);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+
try {
-
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
Assert.fail("Exception expected");
} catch (WSSecurityException e) {
Assert.assertTrue(e.getCause() instanceof
PolicyViolationException);
Propchange:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecureConversationTokenTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecurityContextTokenTest.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecurityContextTokenTest.java?rev=1228829&r1=1228828&r2=1228829&view=diff
==============================================================================
---
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecurityContextTokenTest.java
(original)
+++
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecurityContextTokenTest.java
Sun Jan 8 11:44:13 2012
@@ -20,52 +20,156 @@ package org.swssf.policy.test;
import org.swssf.policy.PolicyEnforcer;
import org.swssf.policy.PolicyViolationException;
+import org.swssf.wss.ext.WSSConstants;
import org.swssf.wss.ext.WSSecurityException;
-import org.swssf.wss.securityEvent.SecurityContextTokenSecurityEvent;
-import org.swssf.wss.securityEvent.SecurityEvent;
+import org.swssf.wss.impl.securityToken.X509SecurityToken;
+import org.swssf.wss.securityEvent.*;
+import org.swssf.xmlsec.ext.XMLSecurityException;
import org.testng.Assert;
import org.testng.annotations.Test;
+import javax.xml.namespace.QName;
+
/**
- * @author $Author: giger $
- * @version $Revision: 1181995 $ $Date: 2011-10-11 20:03:00 +0200 (Tue, 11 Oct
2011) $
+ * @author $Author$
+ * @version $Revision$ $Date$
*/
public class SecurityContextTokenTest extends AbstractPolicyTestBase {
@Test
public void testPolicy() throws Exception {
String policyString =
- "<sp:SecurityContextToken
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\" " +
-
"xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
- "<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ "<sp:SymmetricBinding
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\"
xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
"<wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
- "<sp:RequireExternalUriReference/>\n" +
+ "<sp:EncryptionToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SecurityContextToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:RequireExternalUriReference/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SecurityContextToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:EncryptionToken>\n" +
+ "<sp:SignatureToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SecurityContextToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:RequireExternalUriReference/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SecurityContextToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:SignatureToken>\n" +
"</wsp:Policy>\n" +
- "</sp:SecurityContextToken>";
+ "</sp:SymmetricBinding>";
+
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SecurityContextTokenSecurityEvent securityContextTokenSecurityEvent =
new SecurityContextTokenSecurityEvent(SecurityEvent.Event.SecurityContextToken);
- securityContextTokenSecurityEvent.setIssuerName("xs:anyURI");
- securityContextTokenSecurityEvent.setExternalUriRef(true);
-
policyEnforcer.registerSecurityEvent(securityContextTokenSecurityEvent);
+ SecurityContextTokenSecurityEvent initiatorTokenSecurityEvent = new
SecurityContextTokenSecurityEvent();
+ initiatorTokenSecurityEvent.setIssuerName("xs:anyURI");
+ initiatorTokenSecurityEvent.setExternalUriRef(true);
+ initiatorTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
initiatorTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
+ policyEnforcer.registerSecurityEvent(initiatorTokenSecurityEvent);
+
+ SecurityContextTokenSecurityEvent recipientTokenSecurityEvent = new
SecurityContextTokenSecurityEvent();
+ recipientTokenSecurityEvent.setIssuerName("xs:anyURI");
+ recipientTokenSecurityEvent.setExternalUriRef(true);
+ recipientTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
recipientTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
+ policyEnforcer.registerSecurityEvent(recipientTokenSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(), true);
+ signedPartSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+ policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
+
+ ContentEncryptedElementSecurityEvent
contentEncryptedElementSecurityEvent = new
ContentEncryptedElementSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(),
true, true);
+
contentEncryptedElementSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+
policyEnforcer.registerSecurityEvent(contentEncryptedElementSecurityEvent);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
policyEnforcer.doFinal();
}
@Test
public void testPolicyNegative() throws Exception {
String policyString =
- "<sp:SecurityContextToken
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\" " +
-
"xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
- "<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ "<sp:SymmetricBinding
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\"
xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
"<wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
- "<sp:RequireExternalUriReference/>\n" +
+ "<sp:EncryptionToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SecurityContextToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:RequireExternalUriReference/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SecurityContextToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:EncryptionToken>\n" +
+ "<sp:SignatureToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SecurityContextToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:RequireExternalUriReference/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SecurityContextToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:SignatureToken>\n" +
"</wsp:Policy>\n" +
- "</sp:SecurityContextToken>";
+ "</sp:SymmetricBinding>";
+
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SecurityContextTokenSecurityEvent securityContextTokenSecurityEvent =
new SecurityContextTokenSecurityEvent(SecurityEvent.Event.SecurityContextToken);
- securityContextTokenSecurityEvent.setIssuerName("sss");
- securityContextTokenSecurityEvent.setExternalUriRef(true);
+ SecurityContextTokenSecurityEvent initiatorTokenSecurityEvent = new
SecurityContextTokenSecurityEvent();
+ initiatorTokenSecurityEvent.setIssuerName("sss");
+ initiatorTokenSecurityEvent.setExternalUriRef(true);
+ initiatorTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
initiatorTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
+ policyEnforcer.registerSecurityEvent(initiatorTokenSecurityEvent);
+
+ SecurityContextTokenSecurityEvent recipientTokenSecurityEvent = new
SecurityContextTokenSecurityEvent();
+ recipientTokenSecurityEvent.setIssuerName("sss");
+ recipientTokenSecurityEvent.setExternalUriRef(true);
+ recipientTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
recipientTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
+ policyEnforcer.registerSecurityEvent(recipientTokenSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(), true);
+ signedPartSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+ policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
+
+ ContentEncryptedElementSecurityEvent
contentEncryptedElementSecurityEvent = new
ContentEncryptedElementSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(),
true, true);
+
contentEncryptedElementSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+
policyEnforcer.registerSecurityEvent(contentEncryptedElementSecurityEvent);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+
try {
-
policyEnforcer.registerSecurityEvent(securityContextTokenSecurityEvent);
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
Assert.fail("Exception expected");
} catch (WSSecurityException e) {
Assert.assertTrue(e.getCause() instanceof
PolicyViolationException);
Propchange:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SecurityContextTokenTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedElementsTest.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedElementsTest.java?rev=1228829&r1=1228828&r2=1228829&view=diff
==============================================================================
---
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedElementsTest.java
(original)
+++
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedElementsTest.java
Sun Jan 8 11:44:13 2012
@@ -21,7 +21,7 @@ package org.swssf.policy.test;
import org.swssf.policy.PolicyEnforcer;
import org.swssf.policy.PolicyViolationException;
import org.swssf.wss.ext.WSSecurityException;
-import org.swssf.wss.securityEvent.SecurityEvent;
+import org.swssf.wss.securityEvent.OperationSecurityEvent;
import org.swssf.wss.securityEvent.SignedElementSecurityEvent;
import org.testng.Assert;
import org.testng.annotations.Test;
@@ -29,8 +29,8 @@ import org.testng.annotations.Test;
import javax.xml.namespace.QName;
/**
- * @author $Author: giger $
- * @version $Revision: 1181995 $ $Date: 2011-10-11 20:03:00 +0200 (Tue, 11 Oct
2011) $
+ * @author $Author$
+ * @version $Revision$ $Date$
*/
public class SignedElementsTest extends AbstractPolicyTestBase {
@@ -41,7 +41,12 @@ public class SignedElementsTest extends
"<sp:XPath
xmlns:b=\"http://example.org\">/b:a</sp:XPath>\n" +
"</sp:SignedElements>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SignedElementSecurityEvent signedElementSecurityEvent = new
SignedElementSecurityEvent(SecurityEvent.Event.SignedElement, true);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedElementSecurityEvent signedElementSecurityEvent = new
SignedElementSecurityEvent(null, true);
signedElementSecurityEvent.setElement(new
QName("http://schemas.xmlsoap.org/soap/envelope/", "Body"));
policyEnforcer.registerSecurityEvent(signedElementSecurityEvent);
signedElementSecurityEvent.setElement(new QName("http://example.org",
"a"));
@@ -59,10 +64,15 @@ public class SignedElementsTest extends
"<sp:XPath
xmlns:b=\"http://example.org\">/b:a</sp:XPath>\n" +
"</sp:SignedElements>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SignedElementSecurityEvent signedElementSecurityEvent = new
SignedElementSecurityEvent(SecurityEvent.Event.SignedElement, true);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedElementSecurityEvent signedElementSecurityEvent = new
SignedElementSecurityEvent(null, true);
signedElementSecurityEvent.setElement(new
QName("http://schemas.xmlsoap.org/soap/envelope/", "Body"));
policyEnforcer.registerSecurityEvent(signedElementSecurityEvent);
- signedElementSecurityEvent = new
SignedElementSecurityEvent(SecurityEvent.Event.SignedElement, false);
+ signedElementSecurityEvent = new SignedElementSecurityEvent(null,
false);
signedElementSecurityEvent.setElement(new QName("http://example.org",
"a"));
try {
policyEnforcer.registerSecurityEvent(signedElementSecurityEvent);
Propchange:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedElementsTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedPartsTest.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedPartsTest.java?rev=1228829&r1=1228828&r2=1228829&view=diff
==============================================================================
---
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedPartsTest.java
(original)
+++
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedPartsTest.java
Sun Jan 8 11:44:13 2012
@@ -21,7 +21,7 @@ package org.swssf.policy.test;
import org.swssf.policy.PolicyEnforcer;
import org.swssf.policy.PolicyViolationException;
import org.swssf.wss.ext.WSSecurityException;
-import org.swssf.wss.securityEvent.SecurityEvent;
+import org.swssf.wss.securityEvent.OperationSecurityEvent;
import org.swssf.wss.securityEvent.SignedPartSecurityEvent;
import org.testng.Assert;
import org.testng.annotations.Test;
@@ -29,8 +29,8 @@ import org.testng.annotations.Test;
import javax.xml.namespace.QName;
/**
- * @author $Author: giger $
- * @version $Revision: 1181995 $ $Date: 2011-10-11 20:03:00 +0200 (Tue, 11 Oct
2011) $
+ * @author $Author$
+ * @version $Revision$ $Date$
*/
public class SignedPartsTest extends AbstractPolicyTestBase {
@@ -46,7 +46,12 @@ public class SignedPartsTest extends Abs
"</sp:Attachments>\n" +
"</sp:SignedParts>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, true);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(null, true);
signedPartSecurityEvent.setElement(new
QName("http://schemas.xmlsoap.org/soap/envelope/", "Body"));
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
signedPartSecurityEvent.setElement(new QName("http://example.org",
"a"));
@@ -69,10 +74,15 @@ public class SignedPartsTest extends Abs
"</sp:Attachments>\n" +
"</sp:SignedParts>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, true);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(null, true);
signedPartSecurityEvent.setElement(new
QName("http://schemas.xmlsoap.org/soap/envelope/", "Body"));
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
- signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, false);
+ signedPartSecurityEvent = new SignedPartSecurityEvent(null, false);
signedPartSecurityEvent.setElement(new QName("http://example.org",
"a"));
try {
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
@@ -88,7 +98,12 @@ public class SignedPartsTest extends Abs
"<sp:SignedParts
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\"
xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
"</sp:SignedParts>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, true);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(null, true);
signedPartSecurityEvent.setElement(new
QName("http://schemas.xmlsoap.org/soap/envelope/", "Body"));
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
signedPartSecurityEvent.setElement(new QName("http://example.org",
"a"));
@@ -104,14 +119,19 @@ public class SignedPartsTest extends Abs
"<sp:SignedParts
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\"
xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
"</sp:SignedParts>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, false);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(null, false);
signedPartSecurityEvent.setElement(new
QName("http://schemas.xmlsoap.org/soap/envelope/", "Body"));
try {
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
} catch (WSSecurityException e) {
Assert.assertTrue(e.getCause() instanceof
PolicyViolationException);
}
- signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, false);
+ signedPartSecurityEvent = new SignedPartSecurityEvent(null, false);
signedPartSecurityEvent.setElement(new QName("http://example.org",
"a"));
try {
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
@@ -133,7 +153,12 @@ public class SignedPartsTest extends Abs
"</sp:Attachments>\n" +
"</sp:SignedParts>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, true);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(null, true);
signedPartSecurityEvent.setElement(new
QName("http://schemas.xmlsoap.org/soap/envelope/", "Body"));
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
signedPartSecurityEvent.setElement(new QName("http://example.org",
"a"));
@@ -156,10 +181,15 @@ public class SignedPartsTest extends Abs
"</sp:Attachments>\n" +
"</sp:SignedParts>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, true);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(null, true);
signedPartSecurityEvent.setElement(new
QName("http://schemas.xmlsoap.org/soap/envelope/", "Body"));
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
- signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, false);
+ signedPartSecurityEvent = new SignedPartSecurityEvent(null, false);
signedPartSecurityEvent.setElement(new QName("http://example.org",
"a"));
try {
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
Propchange:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SignedPartsTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SpnegoContextTokenTest.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SpnegoContextTokenTest.java?rev=1228829&r1=1228828&r2=1228829&view=diff
==============================================================================
---
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SpnegoContextTokenTest.java
(original)
+++
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SpnegoContextTokenTest.java
Sun Jan 8 11:44:13 2012
@@ -19,30 +19,82 @@
package org.swssf.policy.test;
import org.swssf.policy.PolicyEnforcer;
-import org.swssf.wss.securityEvent.SecurityEvent;
-import org.swssf.wss.securityEvent.SpnegoContextTokenSecurityEvent;
+import org.swssf.wss.ext.WSSConstants;
+import org.swssf.wss.impl.securityToken.X509SecurityToken;
+import org.swssf.wss.securityEvent.*;
+import org.swssf.xmlsec.ext.XMLSecurityException;
import org.testng.annotations.Test;
+import javax.xml.namespace.QName;
+
/**
- * @author $Author: giger $
- * @version $Revision: 1181995 $ $Date: 2011-10-11 20:03:00 +0200 (Tue, 11 Oct
2011) $
+ * @author $Author$
+ * @version $Revision$ $Date$
*/
public class SpnegoContextTokenTest extends AbstractPolicyTestBase {
@Test
public void testPolicy() throws Exception {
String policyString =
- "<sp:SpnegoContextToken
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\" " +
-
"xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
- "<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ "<sp:AsymmetricBinding
xmlns:sp=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702\"
xmlns:sp3=\"http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802\">\n" +
"<wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
- "<sp:MustNotSendCancel/>\n" +
+ "<sp:InitiatorToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SpnegoContextToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:MustNotSendCancel/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SpnegoContextToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:InitiatorToken>\n" +
+ "<sp:RecipientToken>\n" +
+ " <wsp:Policy>\n" +
+ " <sp:SpnegoContextToken>\n" +
+ "
<sp:IssuerName>xs:anyURI</sp:IssuerName>\n" +
+ " <wsp:Policy
xmlns:wsp=\"http://schemas.xmlsoap.org/ws/2004/09/policy\">\n" +
+ " <sp:MustNotSendCancel/>\n" +
+ " </wsp:Policy>\n" +
+ " </sp:SpnegoContextToken>\n" +
+ " </wsp:Policy>\n" +
+ "</sp:RecipientToken>\n" +
"</wsp:Policy>\n" +
- "</sp:SpnegoContextToken>";
+ "</sp:AsymmetricBinding>";
+
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SpnegoContextTokenSecurityEvent spnegoContextTokenSecurityEvent = new
SpnegoContextTokenSecurityEvent(SecurityEvent.Event.SpnegoContextToken);
- spnegoContextTokenSecurityEvent.setIssuerName("xs:anyURI");
- policyEnforcer.registerSecurityEvent(spnegoContextTokenSecurityEvent);
+ SpnegoContextTokenSecurityEvent initiatorTokenSecurityEvent = new
SpnegoContextTokenSecurityEvent();
+ initiatorTokenSecurityEvent.setIssuerName("xs:anyURI");
+ initiatorTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
initiatorTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
+ policyEnforcer.registerSecurityEvent(initiatorTokenSecurityEvent);
+
+ SpnegoContextTokenSecurityEvent recipientTokenSecurityEvent = new
SpnegoContextTokenSecurityEvent();
+ recipientTokenSecurityEvent.setSecurityToken(new
X509SecurityToken(WSSConstants.X509V3Token, null, null, null, "1", null, null) {
+ @Override
+ protected String getAlias() throws XMLSecurityException {
+ return null;
+ }
+ });
+
recipientTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
+ policyEnforcer.registerSecurityEvent(recipientTokenSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(), true);
+ signedPartSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+ policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
+
+ ContentEncryptedElementSecurityEvent
contentEncryptedElementSecurityEvent = new
ContentEncryptedElementSecurityEvent(recipientTokenSecurityEvent.getSecurityToken(),
true, true);
+
contentEncryptedElementSecurityEvent.setElement(WSSConstants.TAG_soap11_Body);
+
policyEnforcer.registerSecurityEvent(contentEncryptedElementSecurityEvent);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
policyEnforcer.doFinal();
}
Propchange:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SpnegoContextTokenTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified:
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SymmetricBindingTest.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SymmetricBindingTest.java?rev=1228829&r1=1228828&r2=1228829&view=diff
==============================================================================
---
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SymmetricBindingTest.java
(original)
+++
webservices/wss4j/branches/swssf/streaming-ws-policy/src/test/java/org/swssf/policy/test/SymmetricBindingTest.java
Sun Jan 8 11:44:13 2012
@@ -27,6 +27,8 @@ import org.swssf.wss.securityEvent.*;
import org.testng.Assert;
import org.testng.annotations.Test;
+import javax.xml.namespace.QName;
+
/**
* @author $Author$
* @version $Revision$ $Date$
@@ -46,21 +48,31 @@ public class SymmetricBindingTest extend
"</wsp:Policy>\n" +
"</sp:SymmetricBinding>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- TimestampSecurityEvent timestampSecurityEvent = new
TimestampSecurityEvent(SecurityEvent.Event.Timestamp);
+
+ TimestampSecurityEvent timestampSecurityEvent = new
TimestampSecurityEvent();
policyEnforcer.registerSecurityEvent(timestampSecurityEvent);
- SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent(SecurityEvent.Event.SecureConversationToken);
- secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null));
+
+ SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
+ secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null, null));
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
+
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
- EncryptedElementSecurityEvent encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(SecurityEvent.Event.EncryptedElement, true);
+
+ EncryptedElementSecurityEvent encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(null, true, false);
encryptedElementSecurityEvent.setElement(WSSConstants.TAG_dsig_Signature);
policyEnforcer.registerSecurityEvent(encryptedElementSecurityEvent);
- encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(SecurityEvent.Event.EncryptedElement, true);
+
+ encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(null, true, false);
encryptedElementSecurityEvent.setElement(WSSConstants.TAG_wsse11_SignatureConfirmation);
policyEnforcer.registerSecurityEvent(encryptedElementSecurityEvent);
- SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, true);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(null, true);
signedPartSecurityEvent.setElement(WSSConstants.TAG_soap12_Body);
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);
policyEnforcer.doFinal();
@@ -78,21 +90,29 @@ public class SymmetricBindingTest extend
"</wsp:Policy>\n" +
"</sp:SymmetricBinding>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent(SecurityEvent.Event.X509Token);
- secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null));
+
+ SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
+ secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null, null));
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
+
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
- TimestampSecurityEvent timestampSecurityEvent = new
TimestampSecurityEvent(SecurityEvent.Event.Timestamp);
+
+ TimestampSecurityEvent timestampSecurityEvent = new
TimestampSecurityEvent();
+ policyEnforcer.registerSecurityEvent(timestampSecurityEvent);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
try {
- policyEnforcer.registerSecurityEvent(timestampSecurityEvent);
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
Assert.fail("Exception expected");
} catch (WSSecurityException e) {
Assert.assertTrue(e.getCause() instanceof
PolicyViolationException);
}
}
+ /* todo:
@Test
public void testPolicyWrongProtectionOrder() throws Exception {
String policyString =
@@ -106,16 +126,21 @@ public class SymmetricBindingTest extend
"</wsp:Policy>\n" +
"</sp:SymmetricBinding>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent(SecurityEvent.Event.X509Token);
+ SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null));
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
+
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
try {
-
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
Assert.fail("Exception expected");
} catch (WSSecurityException e) {
Assert.assertTrue(e.getCause() instanceof
PolicyViolationException);
}
}
+ */
@Test
public void testPolicySignatureNotEncrypted() throws Exception {
@@ -130,18 +155,25 @@ public class SymmetricBindingTest extend
"</wsp:Policy>\n" +
"</sp:SymmetricBinding>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- TimestampSecurityEvent timestampSecurityEvent = new
TimestampSecurityEvent(SecurityEvent.Event.Timestamp);
+ TimestampSecurityEvent timestampSecurityEvent = new
TimestampSecurityEvent();
policyEnforcer.registerSecurityEvent(timestampSecurityEvent);
- SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent(SecurityEvent.Event.X509Token);
- secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null));
+
+ SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
+ secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null, null));
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
+
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
- EncryptedElementSecurityEvent encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(SecurityEvent.Event.EncryptedElement, false);
+
+ EncryptedElementSecurityEvent encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(null, false, false);
encryptedElementSecurityEvent.setElement(WSSConstants.TAG_dsig_Signature);
+ policyEnforcer.registerSecurityEvent(encryptedElementSecurityEvent);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
try {
-
policyEnforcer.registerSecurityEvent(encryptedElementSecurityEvent);
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
Assert.fail("Exception expected");
} catch (WSSecurityException e) {
Assert.assertTrue(e.getCause() instanceof
PolicyViolationException);
@@ -161,21 +193,30 @@ public class SymmetricBindingTest extend
"</wsp:Policy>\n" +
"</sp:SymmetricBinding>";
PolicyEnforcer policyEnforcer =
buildAndStartPolicyEngine(policyString);
- TimestampSecurityEvent timestampSecurityEvent = new
TimestampSecurityEvent(SecurityEvent.Event.Timestamp);
+ TimestampSecurityEvent timestampSecurityEvent = new
TimestampSecurityEvent();
policyEnforcer.registerSecurityEvent(timestampSecurityEvent);
- SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent(SecurityEvent.Event.X509Token);
- secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null));
+
+ SecureConversationTokenSecurityEvent
secureConversationTokenSecurityEvent = new
SecureConversationTokenSecurityEvent();
+ secureConversationTokenSecurityEvent.setSecurityToken(new
SecureConversationSecurityToken(null, null, null, "1", null, null));
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Signature);
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
+
secureConversationTokenSecurityEvent.setTokenUsage(TokenSecurityEvent.TokenUsage.Encryption);
policyEnforcer.registerSecurityEvent(secureConversationTokenSecurityEvent);
- EncryptedElementSecurityEvent encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(SecurityEvent.Event.EncryptedElement, true);
+
+ EncryptedElementSecurityEvent encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(null, true, false);
encryptedElementSecurityEvent.setElement(WSSConstants.TAG_dsig_Signature);
policyEnforcer.registerSecurityEvent(encryptedElementSecurityEvent);
- encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(SecurityEvent.Event.EncryptedElement, true);
+
+ encryptedElementSecurityEvent = new
EncryptedElementSecurityEvent(null, true, false);
encryptedElementSecurityEvent.setElement(WSSConstants.TAG_wsse11_SignatureConfirmation);
policyEnforcer.registerSecurityEvent(encryptedElementSecurityEvent);
- SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(SecurityEvent.Event.SignedPart, false);
+
+ OperationSecurityEvent operationSecurityEvent = new
OperationSecurityEvent();
+ operationSecurityEvent.setOperation(new QName("definitions"));
+ policyEnforcer.registerSecurityEvent(operationSecurityEvent);
+
+ SignedPartSecurityEvent signedPartSecurityEvent = new
SignedPartSecurityEvent(null, false);
signedPartSecurityEvent.setElement(WSSConstants.TAG_soap12_Body);
try {
policyEnforcer.registerSecurityEvent(signedPartSecurityEvent);