You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ws.apache.org by we...@apache.org on 2006/01/10 16:38:35 UTC
svn commit: r367649 [1/2] -
/webservices/commons/trunk/policy/src/examples/secParser/
Author: werner
Date: Tue Jan 10 07:38:28 2006
New Revision: 367649
URL: http://svn.apache.org/viewcvs?rev=367649&view=rev
Log:
Next step for a security policy processor - still imcomplete.
Added:
webservices/commons/trunk/policy/src/examples/secParser/EncryptedPartsElementsProcessor.java
webservices/commons/trunk/policy/src/examples/secParser/SignedPartsElementsProcessor.java
webservices/commons/trunk/policy/src/examples/secParser/UsernameTokenProcessor.java
webservices/commons/trunk/policy/src/examples/secParser/X509TokenProcessor.java
Modified:
webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicy.java
webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicyToken.java
webservices/commons/trunk/policy/src/examples/secParser/SecurityProcessorContext.java
webservices/commons/trunk/policy/src/examples/secParser/WSSPolicyProcessorFull.java
Added: webservices/commons/trunk/policy/src/examples/secParser/EncryptedPartsElementsProcessor.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/policy/src/examples/secParser/EncryptedPartsElementsProcessor.java?rev=367649&view=auto
==============================================================================
--- webservices/commons/trunk/policy/src/examples/secParser/EncryptedPartsElementsProcessor.java (added)
+++ webservices/commons/trunk/policy/src/examples/secParser/EncryptedPartsElementsProcessor.java Tue Jan 10 07:38:28 2006
@@ -0,0 +1,142 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package examples.secParser;
+
+import org.apache.ws.policy.PrimitiveAssertion;
+
+/**
+ * @author Werner Dittmann (werner@apache.org)
+ */
+
+public class EncryptedPartsElementsProcessor {
+
+ private boolean initializedEncryptedParts = false;
+ private boolean initializedEncryptedElements = false;
+ private SecurityPolicy secPol = new SecurityPolicy();
+
+ /**
+ * Intialize the EncryptedParts complex token.
+ *
+ * This method creates copies of the child tokens that are
+ * allowed for SignedParts. These tokens are Body and Header. These copies
+ * are initialized with handler object and then set as child tokens
+ * of EncryptedParts.
+ * <p/>
+ * The handler object must define the methods <code>doSignedParts, doBody, doHeader</code>.
+ *
+ * @param spt
+ * The token that will hold the child tokens.
+ * @throws NoSuchMethodException
+ */
+ private void initializeEncryptedParts(SecurityPolicyToken spt) throws NoSuchMethodException {
+ SecurityPolicyToken tmpSpt = secPol.body.copy();
+ tmpSpt.setProcessTokenMethod(this);
+ spt.setChildToken(tmpSpt);
+
+ tmpSpt = secPol.header.copy();
+ tmpSpt.setProcessTokenMethod(this);
+ spt.setChildToken(tmpSpt);
+
+ }
+
+ /**
+ * Intialize the EncryptedElements complex token.
+ *
+ * This method creates a copy of the child token that is
+ * allowed for EncryptedElements. The token is XPath. This copy
+ * is initialized with a handler object and then set as child token
+ * of EncryptedElements.
+ * <p/>
+ * The handler object must define the method <code>doXPath</code>.
+ *
+ * @param spt
+ * The token that will hold the child tokens.
+ * @throws NoSuchMethodException
+ */
+ private void initializeEncryptedElements(SecurityPolicyToken spt) throws NoSuchMethodException {
+ SecurityPolicyToken tmpSpt = secPol.xPath.copy();
+ tmpSpt.setProcessTokenMethod(this);
+ spt.setChildToken(tmpSpt);
+ }
+
+
+ public Object doEncryptedParts(SecurityProcessorContext spc) {
+ System.out.println("Processing EncryptedParts token (EPE): "
+ + SecurityProcessorContext.ACTION_NAMES[spc.getAction()]);
+
+ SecurityPolicyToken spt = spc.readCurrentSecurityToken();
+ if (!initializedEncryptedParts) {
+ try {
+ initializeEncryptedParts(spt);
+ initializedEncryptedParts = true;
+ } catch (NoSuchMethodException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return new Boolean(false);
+ }
+ }
+ System.out.println(spt.getTokenName());
+ PrimitiveAssertion pa = spc.getAssertion();
+ String text = pa.getStrValue();
+ if (text != null) {
+ text = text.trim();
+ System.out.println("Value: '" + text.toString() + "'");
+ }
+ return new Boolean(true);
+ }
+
+ public Object doEncryptedElements(SecurityProcessorContext spc) {
+ System.out.println("Processing EncryptedElements token (EPE): "
+ + SecurityProcessorContext.ACTION_NAMES[spc.getAction()]);
+
+ SecurityPolicyToken spt = spc.readCurrentSecurityToken();
+ if (!initializedEncryptedElements) {
+ try {
+ initializeEncryptedElements(spt);
+ initializedEncryptedElements = true;
+ } catch (NoSuchMethodException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return new Boolean(false);
+ }
+ }
+ System.out.println(spt.getTokenName());
+ PrimitiveAssertion pa = spc.getAssertion();
+ String text = pa.getStrValue();
+ if (text != null) {
+ text = text.trim();
+ System.out.println("Value: '" + text.toString() + "'");
+ }
+ return new Boolean(true);
+ }
+
+ public Object doBody(SecurityProcessorContext spc) {
+ System.out.println("Processing Body token (EPE)");
+ return new Boolean(true);
+ }
+
+ public Object doHeader(SecurityProcessorContext spc) {
+ System.out.println("Processing Header token (EPE)");
+ return new Boolean(true);
+ }
+
+ public Object doXPath(SecurityProcessorContext spc) {
+ System.out.println("Processing XPath token (EPE)");
+ return new Boolean(true);
+ }
+
+}
Modified: webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicy.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicy.java?rev=367649&r1=367648&r2=367649&view=diff
==============================================================================
--- webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicy.java (original)
+++ webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicy.java Tue Jan 10 07:38:28 2006
@@ -1,8 +1,17 @@
/*
- * Created on 28.12.2005
+ * Copyright 2004,2005 The Apache Software Foundation.
*
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
*/
package examples.secParser;
@@ -10,442 +19,396 @@
public class SecurityPolicy {
- SecurityPolicyToken signedParts = new SecurityPolicyToken("SignedParts",
- SecurityPolicyToken.COMPLEX_TOKEN, true, null);
-
- SecurityPolicyToken header = new SecurityPolicyToken("Header",
- SecurityPolicyToken.SIMPLE_TOKEN, true, new String[] { "Name",
- "NameSpace" });
-
- SecurityPolicyToken body = new SecurityPolicyToken("Body",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken signedParts = new SecurityPolicyToken("SignedParts",
+ SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken signedElements = new SecurityPolicyToken(
- "SignedElements", SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "XPathVersion" });
+ SecurityPolicyToken header = new SecurityPolicyToken("Header",
+ SecurityPolicyToken.SIMPLE_TOKEN, new String[] { "Name",
+ "Namespace" });
- SecurityPolicyToken xPath = new SecurityPolicyToken(
- "Body",
- SecurityPolicyToken.SIMPLE_TOKEN | SecurityPolicyToken.WITH_CONTENT,
- true, null);
+ SecurityPolicyToken body = new SecurityPolicyToken("Body",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken encryptedParts = new SecurityPolicyToken(
- "EncryptedParts", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken signedElements = new SecurityPolicyToken(
+ "SignedElements", SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "XPathVersion" });
- SecurityPolicyToken encryptedElements = new SecurityPolicyToken(
- "EncryptedElements", SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "XPathVersion" });
+ SecurityPolicyToken xPath = new SecurityPolicyToken(
+ "XPath",
+ SecurityPolicyToken.SIMPLE_TOKEN | SecurityPolicyToken.WITH_CONTENT,
+ null);
- SecurityPolicyToken requiredElements = new SecurityPolicyToken(
- "RequiredElements", SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "XPathVersion" });
+ SecurityPolicyToken encryptedParts = new SecurityPolicyToken(
+ "EncryptedParts", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken usernameToken = new SecurityPolicyToken(
- "UsernameToken", SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ SecurityPolicyToken encryptedElements = new SecurityPolicyToken(
+ "EncryptedElements", SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "XPathVersion" });
- SecurityPolicyToken wssUsernameToken10 = new SecurityPolicyToken(
- "WssUsernameToken10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken requiredElements = new SecurityPolicyToken(
+ "RequiredElements", SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "XPathVersion" });
- SecurityPolicyToken wssUsernameToken11 = new SecurityPolicyToken(
- "WssUsernameToken11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken usernameToken = new SecurityPolicyToken(
+ "UsernameToken", SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "IncludeToken" });
- SecurityPolicyToken issuedToken = new SecurityPolicyToken("IssuedToken",
- SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ SecurityPolicyToken wssUsernameToken10 = new SecurityPolicyToken(
+ "WssUsernameToken10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken issuer = new SecurityPolicyToken(
- "Issuer",
- SecurityPolicyToken.SIMPLE_TOKEN | SecurityPolicyToken.WITH_CONTENT,
- true, null);
+ SecurityPolicyToken wssUsernameToken11 = new SecurityPolicyToken(
+ "WssUsernameToken11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken requestSecurityTokenTemplate = new SecurityPolicyToken(
- "RequestSecurityTokenTemplate", SecurityPolicyToken.COMPLEX_TOKEN
- | SecurityPolicyToken.WITH_CONTENT, true,
- new String[] { "TrustVersion" });
+ SecurityPolicyToken issuedToken = new SecurityPolicyToken("IssuedToken",
+ SecurityPolicyToken.COMPLEX_TOKEN, new String[] { "IncludeToken" });
- SecurityPolicyToken requireDerivedKeys = new SecurityPolicyToken(
- "RequireDerivedKeys", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken issuer = new SecurityPolicyToken(
+ "Issuer",
+ SecurityPolicyToken.SIMPLE_TOKEN | SecurityPolicyToken.WITH_CONTENT,
+ null);
- SecurityPolicyToken requireExternalReference = new SecurityPolicyToken(
- "RequireExternalReference", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken requestSecurityTokenTemplate = new SecurityPolicyToken(
+ "RequestSecurityTokenTemplate", SecurityPolicyToken.COMPLEX_TOKEN
+ | SecurityPolicyToken.WITH_CONTENT,
+ new String[] { "TrustVersion" });
- SecurityPolicyToken requireInternalReference = new SecurityPolicyToken(
- "RequireInternalReference", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken requireDerivedKeys = new SecurityPolicyToken(
+ "RequireDerivedKeys", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken x509Token = new SecurityPolicyToken("X509Token",
- SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ SecurityPolicyToken requireExternalReference = new SecurityPolicyToken(
+ "RequireExternalReference", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken requireKeyIdentifierReference = new SecurityPolicyToken(
- "RequireKeyIdentifierReference", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken requireInternalReference = new SecurityPolicyToken(
+ "RequireInternalReference", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken requireIssuerSerialReference = new SecurityPolicyToken(
- "RequireIssuerSerialReference", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken x509Token = new SecurityPolicyToken("X509Token",
+ SecurityPolicyToken.COMPLEX_TOKEN, new String[] { "IncludeToken" });
- SecurityPolicyToken requiredEmbeddedTokenReference = new SecurityPolicyToken(
- "RequiredEmbeddedTokenReference", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken requireKeyIdentifierReference = new SecurityPolicyToken(
+ "RequireKeyIdentifierReference", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken requireThumbprintReference = new SecurityPolicyToken(
- "RequireThumbprintReference", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken requireIssuerSerialReference = new SecurityPolicyToken(
+ "RequireIssuerSerialReference", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken wssX509V1Token10 = new SecurityPolicyToken(
- "WssX509V1Token10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken requireEmbeddedTokenReference = new SecurityPolicyToken(
+ "RequiredEmbeddedTokenReference", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken wssX509V3Token10 = new SecurityPolicyToken(
- "WssX509V3Token10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken requireThumbprintReference = new SecurityPolicyToken(
+ "RequireThumbprintReference", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken wssX509Pkcs7Token10 = new SecurityPolicyToken(
- "WssX509Pkcs7Token10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken wssX509V1Token10 = new SecurityPolicyToken(
+ "WssX509V1Token10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssX509PkiPathV1Token10 = new SecurityPolicyToken(
- "WssX509PkiPathV1Token10", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken wssX509V3Token10 = new SecurityPolicyToken(
+ "WssX509V3Token10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssX509V1Token11 = new SecurityPolicyToken(
- "WssX509V1Token11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken wssX509Pkcs7Token10 = new SecurityPolicyToken(
+ "WssX509Pkcs7Token10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssX509V3Token11 = new SecurityPolicyToken(
- "WssX509V3Token11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken wssX509PkiPathV1Token10 = new SecurityPolicyToken(
+ "WssX509PkiPathV1Token10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssX509Pkcs7Token11 = new SecurityPolicyToken(
- "WssX509Pkcs7Token11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken wssX509V1Token11 = new SecurityPolicyToken(
+ "WssX509V1Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssX509PkiPathV1Token11 = new SecurityPolicyToken(
- "WssX509PkiPathV1Token11", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken wssX509V3Token11 = new SecurityPolicyToken(
+ "WssX509V3Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken kerberosToken = new SecurityPolicyToken(
- "KerberosToken", SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ SecurityPolicyToken wssX509Pkcs7Token11 = new SecurityPolicyToken(
+ "WssX509Pkcs7Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- // requireDerivedKeys already defined for issuedToken
- // requireKeyIdentifierReference already defined for x509Token
- SecurityPolicyToken wssKerberosV5ApReqToken11 = new SecurityPolicyToken(
- "WssKerberosV5ApReqToken11", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken wssX509PkiPathV1Token11 = new SecurityPolicyToken(
+ "WssX509PkiPathV1Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssGssKerberosV5ApReqToken11 = new SecurityPolicyToken(
- "WssGssKerberosV5ApReqToken11", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken kerberosToken = new SecurityPolicyToken(
+ "KerberosToken", SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "IncludeToken" });
- SecurityPolicyToken spnegoContextToken = new SecurityPolicyToken(
- "SpnegoContextToken", SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ // requireDerivedKeys already defined for issuedToken
+ // requireKeyIdentifierReference already defined for x509Token
+ SecurityPolicyToken wssKerberosV5ApReqToken11 = new SecurityPolicyToken(
+ "WssKerberosV5ApReqToken11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- // issuer already defined for issuedToken
- // requireDerivedKeys already defined for issuedToken
+ SecurityPolicyToken wssGssKerberosV5ApReqToken11 = new SecurityPolicyToken(
+ "WssGssKerberosV5ApReqToken11", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken securityContextToken = new SecurityPolicyToken(
- "SecurityContextToken", SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ SecurityPolicyToken spnegoContextToken = new SecurityPolicyToken(
+ "SpnegoContextToken", SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "IncludeToken" });
- // requireDerivedKeys already defined for issuedToken
- SecurityPolicyToken requireExternalUriReference = new SecurityPolicyToken(
- "RequireExternalUriReference", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ // issuer already defined for issuedToken
+ // requireDerivedKeys already defined for issuedToken
- SecurityPolicyToken sc10SecurityContextToken = new SecurityPolicyToken(
- "SC10SecurityContextToken", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken securityContextToken = new SecurityPolicyToken(
+ "SecurityContextToken", SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "IncludeToken" });
- SecurityPolicyToken secureConversationToken = new SecurityPolicyToken(
- "SecureConversationToken", SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ // requireDerivedKeys already defined for issuedToken
+ SecurityPolicyToken requireExternalUriReference = new SecurityPolicyToken(
+ "RequireExternalUriReference", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- // issuer already defined for issuedToken
- // requireDerivedKeys already defined for issuedToken
- // requireExternalUriReference is already defined for SecurityContextToken
- // sc10SecurityContextToken is already defined for SecurityContextToken
- SecurityPolicyToken bootstrapPolicy = new SecurityPolicyToken(
- "BootstrapPolicy", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken sc10SecurityContextToken = new SecurityPolicyToken(
+ "SC10SecurityContextToken", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken samlToken = new SecurityPolicyToken("SamlToken",
- SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ SecurityPolicyToken secureConversationToken = new SecurityPolicyToken(
+ "SecureConversationToken", SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "IncludeToken" });
- // requireDerivedKeys already defined for issuedToken
- // requireKeyIdentifierReference already defined for x509Token
- SecurityPolicyToken wssSamlV10Token10 = new SecurityPolicyToken(
- "WssSamlV10Token10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ // issuer already defined for issuedToken
+ // requireDerivedKeys already defined for issuedToken
+ // requireExternalUriReference is already defined for SecurityContextToken
+ // sc10SecurityContextToken is already defined for SecurityContextToken
+ SecurityPolicyToken bootstrapPolicy = new SecurityPolicyToken(
+ "BootstrapPolicy", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken wssSamlV11Token10 = new SecurityPolicyToken(
- "WssSamlV11Token10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken samlToken = new SecurityPolicyToken("SamlToken",
+ SecurityPolicyToken.COMPLEX_TOKEN, new String[] { "IncludeToken" });
- SecurityPolicyToken wssSamlV10Token11 = new SecurityPolicyToken(
- "WssSamlV10Token11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ // requireDerivedKeys already defined for issuedToken
+ // requireKeyIdentifierReference already defined for x509Token
+ SecurityPolicyToken wssSamlV10Token10 = new SecurityPolicyToken(
+ "WssSamlV10Token10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssSamlV11Token11 = new SecurityPolicyToken(
- "WssSamlV11Token11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken wssSamlV11Token10 = new SecurityPolicyToken(
+ "WssSamlV11Token10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssSamlV20Token11 = new SecurityPolicyToken(
- "WssSamlV20Token11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken wssSamlV10Token11 = new SecurityPolicyToken(
+ "WssSamlV10Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken relToken = new SecurityPolicyToken("RelToken",
- SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "IncludeToken" });
+ SecurityPolicyToken wssSamlV11Token11 = new SecurityPolicyToken(
+ "WssSamlV11Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- // requireDerivedKeys already defined for issuedToken
- // requireKeyIdentifierReference already defined for x509Token
- SecurityPolicyToken wssRelV10Token10 = new SecurityPolicyToken(
- "WssRelV10Token10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken wssSamlV20Token11 = new SecurityPolicyToken(
+ "WssSamlV20Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssRelV20Token10 = new SecurityPolicyToken(
- "WssRelV20Token10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken relToken = new SecurityPolicyToken("RelToken",
+ SecurityPolicyToken.COMPLEX_TOKEN, new String[] { "IncludeToken" });
- SecurityPolicyToken wssRelV10Token11 = new SecurityPolicyToken(
- "WssRelV10Token11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ // requireDerivedKeys already defined for issuedToken
+ // requireKeyIdentifierReference already defined for x509Token
+ SecurityPolicyToken wssRelV10Token10 = new SecurityPolicyToken(
+ "WssRelV10Token10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken wssRelV20Token11 = new SecurityPolicyToken(
- "WssRelV20Token11", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken wssRelV20Token10 = new SecurityPolicyToken(
+ "WssRelV20Token10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken httpsToken = new SecurityPolicyToken("RelToken",
- SecurityPolicyToken.COMPLEX_TOKEN, true,
- new String[] { "RequireClientCertificate" });
+ SecurityPolicyToken wssRelV10Token11 = new SecurityPolicyToken(
+ "WssRelV10Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken algorithmSuite = new SecurityPolicyToken("RelToken",
- SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken wssRelV20Token11 = new SecurityPolicyToken(
+ "WssRelV20Token11", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic256 = new SecurityPolicyToken("Basic256",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken httpsToken = new SecurityPolicyToken("RelToken",
+ SecurityPolicyToken.COMPLEX_TOKEN,
+ new String[] { "RequireClientCertificate" });
- SecurityPolicyToken basic192 = new SecurityPolicyToken("Basic192",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken algorithmSuite = new SecurityPolicyToken("RelToken",
+ SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken basic128 = new SecurityPolicyToken("Basic128",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic256 = new SecurityPolicyToken("Basic256",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken tripleDes = new SecurityPolicyToken("TripleDes",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic192 = new SecurityPolicyToken("Basic192",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic256Rsa15 = new SecurityPolicyToken(
- "Basic256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic128 = new SecurityPolicyToken("Basic128",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic192Rsa15 = new SecurityPolicyToken(
- "Basic192Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken tripleDes = new SecurityPolicyToken("TripleDes",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic128Rsa15 = new SecurityPolicyToken(
- "Basic128Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic256Rsa15 = new SecurityPolicyToken(
+ "Basic256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken tripleDesRsa15 = new SecurityPolicyToken(
- "TripleDesRsa15", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic192Rsa15 = new SecurityPolicyToken(
+ "Basic192Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic256Sha256 = new SecurityPolicyToken(
- "Basic256Sha256", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic128Rsa15 = new SecurityPolicyToken(
+ "Basic128Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic192Sha256 = new SecurityPolicyToken(
- "Basic192Sha256", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken tripleDesRsa15 = new SecurityPolicyToken(
+ "TripleDesRsa15", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic128Sha256 = new SecurityPolicyToken(
- "Basic128Sha256", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic256Sha256 = new SecurityPolicyToken(
+ "Basic256Sha256", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken tripleDesSha256 = new SecurityPolicyToken(
- "TripleDesSha256", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic192Sha256 = new SecurityPolicyToken(
+ "Basic192Sha256", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic256Sha256Rsa15 = new SecurityPolicyToken(
- "Basic256Sha256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic128Sha256 = new SecurityPolicyToken(
+ "Basic128Sha256", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic192Sha256Rsa15 = new SecurityPolicyToken(
- "Basic192Sha256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken tripleDesSha256 = new SecurityPolicyToken(
+ "TripleDesSha256", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken basic128Sha256Rsa15 = new SecurityPolicyToken(
- "Basic128Sha256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic256Sha256Rsa15 = new SecurityPolicyToken(
+ "Basic256Sha256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken tripleDesSha256Rsa15 = new SecurityPolicyToken(
- "TripleDesSha256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken basic192Sha256Rsa15 = new SecurityPolicyToken(
+ "Basic192Sha256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken inclusiveC14N = new SecurityPolicyToken(
- "InclusiveC14N", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken basic128Sha256Rsa15 = new SecurityPolicyToken(
+ "Basic128Sha256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken soapNormalization10 = new SecurityPolicyToken(
- "SoapNormalization10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken tripleDesSha256Rsa15 = new SecurityPolicyToken(
+ "TripleDesSha256Rsa15", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken strTransform10 = new SecurityPolicyToken(
- "StrTransform10", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken inclusiveC14N = new SecurityPolicyToken(
+ "InclusiveC14N", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken xPath10 = new SecurityPolicyToken("XPath10",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken soapNormalization10 = new SecurityPolicyToken(
+ "SoapNormalization10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken xPathFilter20 = new SecurityPolicyToken(
- "XPathFilter20", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken strTransform10 = new SecurityPolicyToken(
+ "StrTransform10", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken layout = new SecurityPolicyToken("Layout",
- SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken xPath10 = new SecurityPolicyToken("XPath10",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken strict = new SecurityPolicyToken("Strict",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken xPathFilter20 = new SecurityPolicyToken(
+ "XPathFilter20", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken lax = new SecurityPolicyToken("Lax",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken layout = new SecurityPolicyToken("Layout",
+ SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken laxTsFirst = new SecurityPolicyToken("LaxTsFirst",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken strict = new SecurityPolicyToken("Strict",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken laxTsLast = new SecurityPolicyToken("LaxTsLast",
- SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken lax = new SecurityPolicyToken("Lax",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken transportBinding = new SecurityPolicyToken(
- "TransportBinding", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken laxTsFirst = new SecurityPolicyToken("LaxTsFirst",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken transportToken = new SecurityPolicyToken(
- "TransportToken", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken laxTsLast = new SecurityPolicyToken("LaxTsLast",
+ SecurityPolicyToken.SIMPLE_TOKEN, null);
- // algorithmSuite and layout see above
- SecurityPolicyToken includeTimestamp = new SecurityPolicyToken(
- "IncludeTimestamp", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken transportBinding = new SecurityPolicyToken(
+ "TransportBinding", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken symmetricBinding = new SecurityPolicyToken(
- "SymmetricBinding", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken transportToken = new SecurityPolicyToken(
+ "TransportToken", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken encryptionToken = new SecurityPolicyToken(
- "EncryptionToken", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ // algorithmSuite and layout see above
+ SecurityPolicyToken includeTimestamp = new SecurityPolicyToken(
+ "IncludeTimestamp", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken signatureToken = new SecurityPolicyToken(
- "SignatureToken", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken symmetricBinding = new SecurityPolicyToken(
+ "SymmetricBinding", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken protectionToken = new SecurityPolicyToken(
- "ProtectionToken", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken encryptionToken = new SecurityPolicyToken(
+ "EncryptionToken", SecurityPolicyToken.COMPLEX_TOKEN, null);
- // algorithmSuite and layout see above
- // includeTimestamp already defined for transport binding
- SecurityPolicyToken encryptBeforeSigning = new SecurityPolicyToken(
- "EncryptBeforeSigning", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken signatureToken = new SecurityPolicyToken(
+ "SignatureToken", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken encryptSignature = new SecurityPolicyToken(
- "EncryptSignature", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ SecurityPolicyToken protectionToken = new SecurityPolicyToken(
+ "ProtectionToken", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken protectTokens = new SecurityPolicyToken(
- "ProtectTokens", SecurityPolicyToken.SIMPLE_TOKEN, true, null);
+ // algorithmSuite and layout see above
+ // includeTimestamp already defined for transport binding
+ SecurityPolicyToken encryptBeforeSigning = new SecurityPolicyToken(
+ "EncryptBeforeSigning", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken onlySignEntireHeadersAndBody = new SecurityPolicyToken(
- "OnlySignEntireHeadersAndBody", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken encryptSignature = new SecurityPolicyToken(
+ "EncryptSignature", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken asymmetricBinding = new SecurityPolicyToken(
- "AsymmetricBinding", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken protectTokens = new SecurityPolicyToken(
+ "ProtectTokens", SecurityPolicyToken.SIMPLE_TOKEN, null);
- SecurityPolicyToken initiatorToken = new SecurityPolicyToken(
- "InitiatorToken", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken onlySignEntireHeadersAndBody = new SecurityPolicyToken(
+ "OnlySignEntireHeadersAndBody", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken receipientToken = new SecurityPolicyToken(
- "ReceipientToken", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken asymmetricBinding = new SecurityPolicyToken(
+ "AsymmetricBinding", SecurityPolicyToken.COMPLEX_TOKEN, null);
- // all other tokens for asymmetric already defined above
+ SecurityPolicyToken initiatorToken = new SecurityPolicyToken(
+ "InitiatorToken", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken supportingTokens = new SecurityPolicyToken(
- "SupportingTokens", SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken receipientToken = new SecurityPolicyToken(
+ "ReceipientToken", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken signedSupportingTokens = new SecurityPolicyToken(
- "SignedSupportingTokens", SecurityPolicyToken.COMPLEX_TOKEN, true,
- null);
+ // all other tokens for asymmetric already defined above
- SecurityPolicyToken endorsingSupportingTokens = new SecurityPolicyToken(
- "EndorsingSupportingTokens", SecurityPolicyToken.COMPLEX_TOKEN,
- true, null);
+ SecurityPolicyToken supportingTokens = new SecurityPolicyToken(
+ "SupportingTokens", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken signedEndorsingSupportingTokens = new SecurityPolicyToken(
- "SignedEndorsingSupportingTokens",
- SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken signedSupportingTokens = new SecurityPolicyToken(
+ "SignedSupportingTokens", SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken wss10 = new SecurityPolicyToken("wss10",
- SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken endorsingSupportingTokens = new SecurityPolicyToken(
+ "EndorsingSupportingTokens", SecurityPolicyToken.COMPLEX_TOKEN,
+ null);
- SecurityPolicyToken mustSupportRefKeyIdentifier = new SecurityPolicyToken(
- "MustSupportRefKeyIdentifier", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken signedEndorsingSupportingTokens = new SecurityPolicyToken(
+ "SignedEndorsingSupportingTokens",
+ SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken mustSupportRefIssuerSerial = new SecurityPolicyToken(
- "MustSupportRefIssuerSerial", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken wss10 = new SecurityPolicyToken("wss10",
+ SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken mustSupportRefExternalUri = new SecurityPolicyToken(
- "MustSupportRefExternalUri", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken mustSupportRefKeyIdentifier = new SecurityPolicyToken(
+ "MustSupportRefKeyIdentifier", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken mustSupportRefEmbeddedToken = new SecurityPolicyToken(
- "MustSupportRefEmbeddedToken", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken mustSupportRefIssuerSerial = new SecurityPolicyToken(
+ "MustSupportRefIssuerSerial", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken wss11 = new SecurityPolicyToken("wss11",
- SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken mustSupportRefExternalUri = new SecurityPolicyToken(
+ "MustSupportRefExternalUri", SecurityPolicyToken.SIMPLE_TOKEN, null);
- // all from wss10
- SecurityPolicyToken mustSupportRefKeyThumbprint = new SecurityPolicyToken(
- "mustSupportRefKeyThumbprint", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken mustSupportRefEmbeddedToken = new SecurityPolicyToken(
+ "MustSupportRefEmbeddedToken", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken mustSupportRefKeyEncryptedKey = new SecurityPolicyToken(
- "mustSupportRefKeyEncryptedKey", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken wss11 = new SecurityPolicyToken("wss11",
+ SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken requireSignatureConfirmation = new SecurityPolicyToken(
- "requireSignatureConfirmation", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ // all from wss10
+ SecurityPolicyToken mustSupportRefKeyThumbprint = new SecurityPolicyToken(
+ "mustSupportRefKeyThumbprint", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken trust10 = new SecurityPolicyToken("trust10",
- SecurityPolicyToken.COMPLEX_TOKEN, true, null);
+ SecurityPolicyToken mustSupportRefKeyEncryptedKey = new SecurityPolicyToken(
+ "mustSupportRefKeyEncryptedKey", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken mustSupportClientChallenge = new SecurityPolicyToken(
- "mustSupportClientChallenge", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken requireSignatureConfirmation = new SecurityPolicyToken(
+ "requireSignatureConfirmation", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken mustSupportServerChallenge = new SecurityPolicyToken(
- "mustSupportServerChallenge", SecurityPolicyToken.SIMPLE_TOKEN,
- true, null);
+ SecurityPolicyToken trust10 = new SecurityPolicyToken("trust10",
+ SecurityPolicyToken.COMPLEX_TOKEN, null);
- SecurityPolicyToken requireClientEntropy = new SecurityPolicyToken(
- "requireClientEntropy", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken mustSupportClientChallenge = new SecurityPolicyToken(
+ "mustSupportClientChallenge", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken requireServerEntropy = new SecurityPolicyToken(
- "requireServerEntropy", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken mustSupportServerChallenge = new SecurityPolicyToken(
+ "mustSupportServerChallenge", SecurityPolicyToken.SIMPLE_TOKEN,
+ null);
- SecurityPolicyToken mustSupportIssuedTokens = new SecurityPolicyToken(
- "mustSupportIssuedTokens", SecurityPolicyToken.SIMPLE_TOKEN, true,
- null);
+ SecurityPolicyToken requireClientEntropy = new SecurityPolicyToken(
+ "requireClientEntropy", SecurityPolicyToken.SIMPLE_TOKEN, null);
- String includeNever = "http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never";
+ SecurityPolicyToken requireServerEntropy = new SecurityPolicyToken(
+ "requireServerEntropy", SecurityPolicyToken.SIMPLE_TOKEN, null);
- String includeOnce = "http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Once";
+ SecurityPolicyToken mustSupportIssuedTokens = new SecurityPolicyToken(
+ "mustSupportIssuedTokens", SecurityPolicyToken.SIMPLE_TOKEN, null);
- String includeAlways = "http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Always";
+ String includeNever = "http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never";
- /**
- * Intialize the SignedParts complex token.
- *
- * This method creates a copy of the SingedParts token and sets the handler
- * object to the copy. Then it creates copies of the child tokens that are
- * allowed for SingedParts. These tokens are Body and Header. These copies
- * are also initialized with the handler object and then set a schild tokens
- * of SingedParts.
- *
- * @param handler
- * The handler object that must contain the methods
- * <code>doSignedParts, doBody, doHeader</code>.
- * @return the intialized SignedParts token.
- * @throws NoSuchMethodException
- */
- public SecurityPolicyToken initializeSignedParts(Object handler)
- throws NoSuchMethodException {
- SecurityPolicyToken spt = signedParts.copy();
- spt.setProcessTokenMethod(handler);
+ String includeOnce = "http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Once";
- SecurityPolicyToken tmpSpt = body.copy();
- tmpSpt.setProcessTokenMethod(handler);
- spt.setChildToken(tmpSpt);
+ String includeAlways = "http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Always";
- tmpSpt = header.copy();
- tmpSpt.setProcessTokenMethod(handler);
- spt.setChildToken(tmpSpt);
- return spt;
- }
}
Modified: webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicyToken.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicyToken.java?rev=367649&r1=367648&r2=367649&view=diff
==============================================================================
--- webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicyToken.java (original)
+++ webservices/commons/trunk/policy/src/examples/secParser/SecurityPolicyToken.java Tue Jan 10 07:38:28 2006
@@ -1,8 +1,17 @@
/*
- * Created on 28.12.2005
+ * Copyright 2004,2005 The Apache Software Foundation.
*
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
*/
package examples.secParser;
@@ -13,213 +22,203 @@
public class SecurityPolicyToken {
- /**
- * The following values describe the type of the security token. A complex
- * token starts a transaction because it contains nested tokens. A simple
- * token does not contain nested tokens but stands allone an defines a
- * simple assertion or property.
- *
- * If Content is set then this token contains additional text content, e.g.
- * XPath expressions.
- */
- public static final int COMPLEX_TOKEN = 1;
-
- public static final int SIMPLE_TOKEN = 2;
-
- public static final int WITH_CONTENT = 100;
-
- private String tokenName;
-
- private int tokenType = 0;
-
- private boolean supported = false;
-
- private String[] attributes = null;
-
- private Object handler = null;
-
- private Method processTokenMethod = null;
-
- private ArrayList childTokens = null;
-
- /**
- * Create a SecurityPolicyToken data structure.
- *
- * @param token
- * The name of the token, equals to to local name of the XML
- * element
- * @param type
- * Type of the token. Either complex or simple. Can have a flag
- * if the token containes some data.
- * @param sup
- * If true the processor supports this token and the enforcer can
- * work with it,
- * @param attribs
- * The names of allowed attributes on this token
- * @param h
- * The handler object that implements the processing method. The
- * name of a processing method is constructed by prepending a
- * "do" to the token name
- * @throws SecurityException
- * @throws NoSuchMethodException
- */
- public SecurityPolicyToken(String token, int type, boolean sup,
- String[] attribs, Object h) throws SecurityException,
- NoSuchMethodException {
- this(token, type, sup, attribs);
-
- setProcessTokenMethod(h);
- }
-
- /**
- * Create a SecurityPolicyToken data structure.
- *
- * @param token
- * The name of the token, equals to to local name of the XML
- * element
- * @param type
- * Type of the token. Either complex or simple. Can have a flag
- * if the token containes some data.
- * @param sup
- * If true the processor supports this token and the enforcer can
- * work with it,
- * @param attribs
- * The names of allowed attributes on this token processing
- * method is constructed by prepending a "do" to the token name
- */
- public SecurityPolicyToken(String token, int type, boolean sup,
- String[] attribs) {
- tokenName = token;
- tokenType = type;
- supported = sup;
- attributes = attribs;
-
- if (tokenType == COMPLEX_TOKEN) {
- childTokens = new ArrayList();
- }
- }
-
- /**
- * @return Returns the attributes.
- */
- public String[] getAttributes() {
- return attributes;
- }
-
- /**
- * Set the method which processes this security token.
- *
- * @param h
- * The handler object that implements the processing method. The
- * name of a processing method is constructed by prepending a
- * "do" to the token name.
- *
- * @throws NoSuchMethodException
- */
- public void setProcessTokenMethod(Object h) throws NoSuchMethodException {
-
- if (h == null) {
- return;
- }
- handler = h;
- Class handlerCls = h.getClass();
- Class[] parameters = new Class[] { SecurityProcessorContext.class };
-
- processTokenMethod = handlerCls.getDeclaredMethod("do" + tokenName,
- parameters);
- }
-
- /**
- * Invoke the processing method for this token.
- *
- * @param spc
- * The SecurityProcessContext handed over to the processing
- * method
- * @return True if the token is processed successfully
- * @throws IllegalArgumentException
- * @throws IllegalAccessException
- * @throws InvocationTargetException
- */
- public boolean invokeProcessTokenMethod(SecurityProcessorContext spc)
- throws IllegalArgumentException, IllegalAccessException,
- InvocationTargetException {
-
- if (processTokenMethod == null) {
- return false;
- }
- Object[] parameter = new Object[] { spc };
- Object ret = processTokenMethod.invoke(handler, parameter);
- Boolean bool;
- if (ret instanceof Boolean) {
- bool = (Boolean) ret;
- return bool.booleanValue();
- }
- return false;
- }
-
- /**
- * @return Returns the supported.
- */
- public boolean isSupported() {
- return supported;
- }
-
- /**
- * @return Returns the tokenName.
- */
- public String getTokenName() {
- return tokenName;
- }
-
- /**
- * Add a Child token to this complex token.
- *
- * @param spt
- * The child token to add to this Complex token
- */
- public void setChildToken(SecurityPolicyToken spt) {
- childTokens.add(spt);
- }
-
- /**
- * Gets a named child token,
- *
- * @param sptName
- * The token name to check for
- * @return the SecurityPolicyToken if this token contains the named token as
- * child token, null otherwise.
- */
- public SecurityPolicyToken getChildToken(String sptName) {
- Iterator it = childTokens.iterator();
- while (it.hasNext()) {
- SecurityPolicyToken tmpSpt = (SecurityPolicyToken) it.next();
- if (sptName.equals(tmpSpt.getTokenName())) {
- return tmpSpt;
- }
- }
- return null;
- }
-
- /**
- * Copy this SecurityPolicyToken and return the copy.
- *
- * Produce a copy of this SPT. The imutable fields (token name, token type,
- * supported, and attributes) are copied by reference. The child tokens are
- * copied by value thus they can be modified. The handler object and the
- * associated processing method are not copied and must be intialized.
- *
- * @return A new SecurityPolicyToken
- */
- public SecurityPolicyToken copy() {
- SecurityPolicyToken spt = new SecurityPolicyToken(tokenName, tokenType,
- supported, attributes);
- if (childTokens != null) {
- Iterator it = childTokens.iterator();
- while (it.hasNext()) {
- SecurityPolicyToken tmpSpt = (SecurityPolicyToken) it.next();
- spt.setChildToken(tmpSpt);
- }
- }
- return spt;
- }
+ /**
+ * The following values describe the type of the security token. A complex
+ * token starts a transaction because it contains nested tokens. A simple
+ * token does not contain nested tokens but stands allone an defines a
+ * simple assertion or property.
+ *
+ * If Content is set then this token contains additional text content, e.g.
+ * XPath expressions.
+ */
+ public static final int COMPLEX_TOKEN = 1;
+
+ public static final int SIMPLE_TOKEN = 2;
+
+ public static final int WITH_CONTENT = 100;
+
+ private String tokenName;
+
+ private int tokenType = 0;
+
+ // private boolean supported = false;
+
+ private String[] attributes = null;
+
+ private Object handler = null;
+
+ private Method processTokenMethod = null;
+
+ private ArrayList childTokens = null;
+
+ /**
+ * Create a SecurityPolicyToken data structure.
+ *
+ * @param token
+ * The name of the token, equals to to local name of the XML
+ * element
+ * @param type
+ * Type of the token. Either complex or simple. Can have a flag
+ * if the token containes some data.
+ * @param sup
+ * If true the processor supports this token and the enforcer can
+ * work with it,
+ * @param attribs
+ * The names of allowed attributes on this token
+ * @param h
+ * The handler object that implements the processing method. The
+ * name of a processing method is constructed by prepending a
+ * "do" to the token name
+ * @throws SecurityException
+ * @throws NoSuchMethodException
+ */
+ public SecurityPolicyToken(String token, int type, String[] attribs,
+ Object h) throws SecurityException, NoSuchMethodException {
+ this(token, type, attribs);
+
+ setProcessTokenMethod(h);
+ }
+
+ /**
+ * Create a SecurityPolicyToken data structure.
+ *
+ * @param token
+ * The name of the token, equals to to local name of the XML
+ * element
+ * @param type
+ * Type of the token. Either complex or simple. Can have a flag
+ * if the token containes some data.
+ * @param sup
+ * If true the processor supports this token and the enforcer can
+ * work with it,
+ * @param attribs
+ * The names of allowed attributes on this token processing
+ * method is constructed by prepending a "do" to the token name
+ */
+ public SecurityPolicyToken(String token, int type, String[] attribs) {
+ tokenName = token;
+ tokenType = type;
+ attributes = attribs;
+
+ if (tokenType == COMPLEX_TOKEN) {
+ childTokens = new ArrayList();
+ }
+ }
+
+ /**
+ * @return Returns the attributes.
+ */
+ public String[] getAttributes() {
+ return attributes;
+ }
+
+ /**
+ * Set the method which processes this security token.
+ *
+ * @param h
+ * The handler object that implements the processing method. The
+ * name of a processing method is constructed by prepending a
+ * "do" to the token name.
+ *
+ * @throws NoSuchMethodException
+ */
+ public void setProcessTokenMethod(Object h) throws NoSuchMethodException {
+
+ if (h == null) {
+ return;
+ }
+ handler = h;
+ Class handlerCls = h.getClass();
+ Class[] parameters = new Class[] { SecurityProcessorContext.class };
+
+ processTokenMethod = handlerCls.getDeclaredMethod("do" + tokenName,
+ parameters);
+ }
+
+ /**
+ * Invoke the processing method for this token.
+ *
+ * @param spc
+ * The SecurityProcessContext handed over to the processing
+ * method
+ * @return True if the token is processed successfully
+ * @throws IllegalArgumentException
+ * @throws IllegalAccessException
+ * @throws InvocationTargetException
+ */
+ public boolean invokeProcessTokenMethod(SecurityProcessorContext spc)
+ throws IllegalArgumentException, IllegalAccessException,
+ InvocationTargetException {
+
+ if (processTokenMethod == null) {
+ return false;
+ }
+ Object[] parameter = new Object[] { spc };
+ Object ret = processTokenMethod.invoke(handler, parameter);
+ Boolean bool;
+ if (ret instanceof Boolean) {
+ bool = (Boolean) ret;
+ return bool.booleanValue();
+ }
+ return false;
+ }
+
+ /**
+ * @return Returns the tokenName.
+ */
+ public String getTokenName() {
+ return tokenName;
+ }
+
+ /**
+ * Add a Child token to this complex token.
+ *
+ * @param spt
+ * The child token to add to this Complex token
+ */
+ public void setChildToken(SecurityPolicyToken spt) {
+ childTokens.add(spt);
+ }
+
+ /**
+ * Gets a named child token,
+ *
+ * @param sptName
+ * The token name to check for
+ * @return the SecurityPolicyToken if this token contains the named token as
+ * child token, null otherwise.
+ */
+ public SecurityPolicyToken getChildToken(String sptName) {
+ Iterator it = childTokens.iterator();
+ while (it.hasNext()) {
+ SecurityPolicyToken tmpSpt = (SecurityPolicyToken) it.next();
+ if (sptName.equals(tmpSpt.getTokenName())) {
+ return tmpSpt;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Copy this SecurityPolicyToken and return the copy.
+ *
+ * Produce a copy of this SPT. The imutable fields (token name, token type,
+ * supported, and attributes) are copied by reference. The child tokens are
+ * copied by value thus they can be modified. The handler object and the
+ * associated processing method are not copied and must be intialized.
+ *
+ * @return A new SecurityPolicyToken
+ */
+ public SecurityPolicyToken copy() {
+ SecurityPolicyToken spt = new SecurityPolicyToken(tokenName, tokenType,
+ attributes);
+ if (childTokens != null) {
+ Iterator it = childTokens.iterator();
+ while (it.hasNext()) {
+ SecurityPolicyToken tmpSpt = (SecurityPolicyToken) it.next();
+ spt.setChildToken(tmpSpt);
+ }
+ }
+ return spt;
+ }
}
Modified: webservices/commons/trunk/policy/src/examples/secParser/SecurityProcessorContext.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/policy/src/examples/secParser/SecurityProcessorContext.java?rev=367649&r1=367648&r2=367649&view=diff
==============================================================================
--- webservices/commons/trunk/policy/src/examples/secParser/SecurityProcessorContext.java (original)
+++ webservices/commons/trunk/policy/src/examples/secParser/SecurityProcessorContext.java Tue Jan 10 07:38:28 2006
@@ -1,15 +1,131 @@
/*
- * Created on 28.12.2005
+ * Copyright 2004,2005 The Apache Software Foundation.
*
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
*/
package examples.secParser;
+import java.util.ArrayList;
+
+import org.apache.ws.policy.PrimitiveAssertion;
+
public class SecurityProcessorContext {
-
- public SecurityProcessorContext() {
-
- }
+
+ public static final int NONE = 0;
+ public static final int START = 1;
+ public static final int COMMIT = 2;
+ public static final int ABORT = 3;
+
+ public static final String[] ACTION_NAMES = new String[]{"NONE", "START", "COMMIT", "ABORT"};
+
+ private ArrayList tokenStack = new ArrayList();
+
+ private int tokenStackPointer = 0;
+
+ private PrimitiveAssertion assertion = null;
+
+ private int action = NONE;
+
+ public SecurityProcessorContext() {
+ }
+
+ /**
+ * Gets the action to perform in the processing method.
+ *
+ * @return The action
+ */
+ public int getAction() {
+ return action;
+ }
+
+ /**
+ * Sets to action to perform in the processing method.
+ *
+ * @param action The actio to set. Either NONE, START, COMMIT, or ABORT
+ */
+ public void setAction(int action) {
+ this.action = action;
+ }
+ /**
+ * Get the current assertion that is being processed.
+ *
+ * This is always a PrimitiveAssertion.
+ *
+ * @return The current assertion.
+ */
+ public PrimitiveAssertion getAssertion() {
+ return assertion;
+ }
+
+ /**
+ * Set the current assertion that is being processed.
+ *
+ * This is always a primitive assertion.
+ *
+ * @param assertion The assertion to set
+ */
+ public void setAssertion(PrimitiveAssertion assertion) {
+ this.assertion = assertion;
+ }
+
+ /**
+ * Push a SecurityPolicyToken onto the token stack.
+ *
+ * The pushed token becomes the current token. The current token is the
+ * starting point for further parsing.
+ *
+ * @param spt
+ * The SecurityPolicyToken to push on the stack
+ */
+ public void pushSecurityToken(SecurityPolicyToken spt) {
+ tokenStack.add(tokenStackPointer, spt);
+ tokenStackPointer++;
+ }
+
+ /**
+ * Pop a SecurityPolicyToken from the token stack.
+ *
+ * If the stack contains at least one token the method pops the topmost
+ * token from the stack and returns it. If the stack is empty the method
+ * returns a <code>null</code>.
+ *
+ * @return The topmost SecurityPolicyToken or null if the stack is empty.
+ */
+ public SecurityPolicyToken popSecurityToken() {
+ if (tokenStackPointer > 0) {
+ tokenStackPointer--;
+ return (SecurityPolicyToken) tokenStack.get(tokenStackPointer);
+ } else {
+ return null;
+ }
+ }
+
+ /**
+ * Reads and returns the current SecurityPolicyToken.
+ *
+ * If the stack contains at least one token the method reads the topmost
+ * token from the stack and returns it. If the stack is empty the method
+ * returns a <code>null</code>. The metho does not remove the token from
+ * the stack.
+ *
+ * @return The topmost SecurityPolicyToken or null if the stack is empty.
+ */
+ public SecurityPolicyToken readCurrentSecurityToken() {
+ if (tokenStackPointer > 0) {
+ return (SecurityPolicyToken) tokenStack.get(tokenStackPointer - 1);
+ } else {
+ return null;
+ }
+ }
}
Added: webservices/commons/trunk/policy/src/examples/secParser/SignedPartsElementsProcessor.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/policy/src/examples/secParser/SignedPartsElementsProcessor.java?rev=367649&view=auto
==============================================================================
--- webservices/commons/trunk/policy/src/examples/secParser/SignedPartsElementsProcessor.java (added)
+++ webservices/commons/trunk/policy/src/examples/secParser/SignedPartsElementsProcessor.java Tue Jan 10 07:38:28 2006
@@ -0,0 +1,144 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package examples.secParser;
+
+import org.apache.ws.policy.PrimitiveAssertion;
+
+/**
+ * @author Werner Dittmann (werner@apache.org)
+ */
+
+public class SignedPartsElementsProcessor {
+
+ private boolean initializedSignedParts = false;
+ private boolean initializedSignedElements = false;
+ private SecurityPolicy secPol = new SecurityPolicy();
+
+ public SignedPartsElementsProcessor() {
+ }
+
+ /**
+ * Intialize the SignedParts complex token.
+ *
+ * This method creates copies of the child tokens that are
+ * allowed for SignedParts. These tokens are Body and Header. These copies
+ * are initialized with handler object and then set as child tokens
+ * of SignedParts.
+ * <p/>
+ * The handler object must define the methods <code>doSignedParts, doBody, doHeader</code>.
+ *
+ * @param spt
+ * The token that will hold the child tokens.
+ * @throws NoSuchMethodException
+ */
+ private void initializeSignedParts(SecurityPolicyToken spt) throws NoSuchMethodException {
+ SecurityPolicyToken tmpSpt = secPol.body.copy();
+ tmpSpt.setProcessTokenMethod(this);
+ spt.setChildToken(tmpSpt);
+
+ tmpSpt = secPol.header.copy();
+ tmpSpt.setProcessTokenMethod(this);
+ spt.setChildToken(tmpSpt);
+
+ }
+
+ /**
+ * Intialize the SignedElements complex token.
+ *
+ * This method creates a copy of the child token that is
+ * allowed for SignedElements. The token is XPath. This copy
+ * is initialized with a handler object and then set as child token
+ * of SignedElements.
+ * <p/>
+ * The handler object must define the method <code>doXPath</code>.
+ *
+ * @param spt
+ * The token that will hold the child tokens.
+ * @throws NoSuchMethodException
+ */
+ private void initializeSignedElements(SecurityPolicyToken spt) throws NoSuchMethodException {
+ SecurityPolicyToken tmpSpt = secPol.xPath.copy();
+ tmpSpt.setProcessTokenMethod(this);
+ spt.setChildToken(tmpSpt);
+ }
+
+ public Object doSignedParts(SecurityProcessorContext spc) {
+ System.out.println("Processing SignedParts token (SPE): "
+ + SecurityProcessorContext.ACTION_NAMES[spc.getAction()]);
+
+ SecurityPolicyToken spt = spc.readCurrentSecurityToken();
+ if (!initializedSignedParts) {
+ try {
+ initializeSignedParts(spt);
+ initializedSignedParts = true;
+ } catch (NoSuchMethodException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return new Boolean(false);
+ }
+ }
+ System.out.println(spt.getTokenName());
+ PrimitiveAssertion pa = spc.getAssertion();
+ String text = pa.getStrValue();
+ if (text != null) {
+ text = text.trim();
+ System.out.println("Value: '" + text.toString() + "'");
+ }
+ return new Boolean(true);
+ }
+
+ public Object doSignedElements(SecurityProcessorContext spc) {
+ System.out.println("Processing SignedElements token (SPE): "
+ + SecurityProcessorContext.ACTION_NAMES[spc.getAction()]);
+
+ SecurityPolicyToken spt = spc.readCurrentSecurityToken();
+ if (!initializedSignedElements) {
+ try {
+ initializeSignedElements(spt);
+ initializedSignedElements = true;
+ } catch (NoSuchMethodException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return new Boolean(false);
+ }
+ }
+ System.out.println(spt.getTokenName());
+ PrimitiveAssertion pa = spc.getAssertion();
+ String text = pa.getStrValue();
+ if (text != null) {
+ text = text.trim();
+ System.out.println("Value: '" + text.toString() + "'");
+ }
+ return new Boolean(true);
+ }
+
+ public Object doBody(SecurityProcessorContext spc) {
+ System.out.println("Processing Body token (SPE)");
+ return new Boolean(true);
+ }
+
+ public Object doHeader(SecurityProcessorContext spc) {
+ System.out.println("Processing Header token (SPE)");
+ return new Boolean(true);
+ }
+
+ public Object doXPath(SecurityProcessorContext spc) {
+ System.out.println("Processing XPath token (SPE)");
+ return new Boolean(true);
+ }
+
+}
Added: webservices/commons/trunk/policy/src/examples/secParser/UsernameTokenProcessor.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/policy/src/examples/secParser/UsernameTokenProcessor.java?rev=367649&view=auto
==============================================================================
--- webservices/commons/trunk/policy/src/examples/secParser/UsernameTokenProcessor.java (added)
+++ webservices/commons/trunk/policy/src/examples/secParser/UsernameTokenProcessor.java Tue Jan 10 07:38:28 2006
@@ -0,0 +1,56 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package examples.secParser;
+
+/**
+ * @author Werner Dittmann (werner@apache.org)
+ */
+public class UsernameTokenProcessor {
+
+ private boolean initializedUsernameToken = false;
+
+ private SecurityPolicy secPol = new SecurityPolicy();
+
+ /**
+ * Intialize the UsernameToken complex token.
+ *
+ * This method creates copies of the child tokens that are allowed for
+ * UsernameToken. These tokens are WssUsernameToken10 and
+ * WssUsernameToken11. These copies are also initialized with the handler
+ * object and then set as child tokens of UsernameToken.
+ *
+ * <p/> The handler object must define the methods
+ * <code>doWssUsernameToken10, doWssUsernameToken11</code>.
+ *
+ * @param spt
+ * The token that will hold the child tokens.
+ * @throws NoSuchMethodException
+ */
+ public void initializeUsernameToken(SecurityPolicyToken spt)
+ throws NoSuchMethodException {
+ // SecurityPolicyToken spt = secPol.usernameToken.copy();
+ // spt.setProcessTokenMethod(handler);
+
+ SecurityPolicyToken tmpSpt = secPol.wssUsernameToken10.copy();
+ tmpSpt.setProcessTokenMethod(this);
+ spt.setChildToken(tmpSpt);
+
+ tmpSpt = secPol.wssUsernameToken11.copy();
+ tmpSpt.setProcessTokenMethod(this);
+ spt.setChildToken(tmpSpt);
+ }
+
+}