Author: nandana
Date: Tue Sep 1 19:01:32 2009
New Revision: 810171
URL: http://svn.apache.org/viewvc?rev=810171&view=rev
Log:
RAMPART-258 Adding the SAML 2.0 sample. Thanks Thilina
Added:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/README.txt
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/policy.xml
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/services.xml
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/Client.java
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/PWCBHandler.java
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/SimpleService.java
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/sts_policy.xml
Modified:
webservices/rampart/branches/java/1_5/modules/rampart-samples/README.txt
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/build.xml
Modified:
webservices/rampart/branches/java/1_5/modules/rampart-samples/README.txt
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/README.txt?rev=810171&r1=810170&r2=810171&view=diff
==============================================================================
--- webservices/rampart/branches/java/1_5/modules/rampart-samples/README.txt
(original)
+++ webservices/rampart/branches/java/1_5/modules/rampart-samples/README.txt
Tue Sep 1 19:01:32 2009
@@ -15,3 +15,7 @@
and mars to required places.
- Please copy log4j.jar to AXIS2_HOME/lib directory before trying out
samples.
+
+ - Please follow the instructions on endorsing the default JAXP
implementation
+ available in README.txt of this distribution before invoking
+ Sample 08.(Issuing a SAML 2.0 Token)
Modified:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/build.xml
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/build.xml?rev=810171&r1=810170&r2=810171&view=diff
==============================================================================
---
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/build.xml
(original)
+++
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/build.xml
Tue Sep 1 19:01:32 2009
@@ -109,6 +109,17 @@
<create.and.run.client sample.number="07"/>
</target>
+ <!-- Sample Service 08 -->
+ <target name="service.08" if="env.AXIS2_HOME" depends="check.dependency">
+ <create.service.repo sample.number="08"/>
+ </target>
+
+ <!-- Sample Client 08 -->
+ <target name="client.08" if="env.AXIS2_HOME" depends="check.dependency">
+ <create.and.run.client sample.number="08"/>
+ </target>
+
+
<target name="clean">
<delete dir="build" />
</target>
Added:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/README.txt
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/README.txt?rev=810171&view=auto
==============================================================================
---
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/README.txt
(added)
+++
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/README.txt
Tue Sep 1 19:01:32 2009
@@ -0,0 +1,8 @@
+WS-Trust - RST - Resquest Security Token Service - Issuing a SAML 2.0 token -
issuing a token
+
+When using this sample with the TCPMon to monitor the soap messages, you have
to use the
+correct URL in the client code before build the sample 08.
+
+You have to endorse the default JAXP implementation of your JDK before
invoking this sample.
+Please follow the instructions available in the README.txt of this
distribution to endorse
+the default JAXP implementation.
Added:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/policy.xml
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/policy.xml?rev=810171&view=auto
==============================================================================
---
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/policy.xml
(added)
+++
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/policy.xml
Tue Sep 1 19:01:32 2009
@@ -0,0 +1,73 @@
+<wsp:Policy wsu:Id="SgnOnlyAnonymous"
+
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
+ xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
+ xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
+ xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <wsp:ExactlyOne>
+ <wsp:All>
+ <sp:SymmetricBinding>
+ <wsp:Policy>
+ <sp:ProtectionToken>
+ <wsp:Policy>
+ <sp:X509Token
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never">
+ <wsp:Policy>
+
<sp:RequireThumbprintReference/>
+
<sp:WssX509V3Token10/>
+ </wsp:Policy>
+ </sp:X509Token>
+ </wsp:Policy>
+ </sp:ProtectionToken>
+ <sp:AlgorithmSuite>
+ <wsp:Policy>
+ <sp:Basic256/>
+ </wsp:Policy>
+ </sp:AlgorithmSuite>
+ <sp:Layout>
+ <wsp:Policy>
+ <sp:Lax/>
+ </wsp:Policy>
+ </sp:Layout>
+ <sp:IncludeTimestamp/>
+ <sp:OnlySignEntireHeadersAndBody/>
+ </wsp:Policy>
+ </sp:SymmetricBinding>
+ <sp:SupportingTokens
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <wsp:Policy>
+ <sp:IssuedToken
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient">
+ <Issuer
xmlns="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <Address
xmlns="http://www.w3.org/2005/08/addressing">http://localhost:8080/axis2/services/STS</Address>
+ </Issuer>
+
<sp:RequestSecurityTokenTemplate>
+ <t:TokenType
xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust">http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0</t:TokenType>
+ <t:KeyType
xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust">http://schemas.xmlsoap.org/ws/2005/02/trust/SymmetricKey</t:KeyType>
+ <t:KeySize
xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust">256</t:KeySize>
+
</sp:RequestSecurityTokenTemplate>
+ <wsp:Policy>
+
<sp:RequireInternalReference/>
+ </wsp:Policy>
+ </sp:IssuedToken>
+ </wsp:Policy>
+ </sp:SupportingTokens>
+ <sp:SignedParts>
+ <sp:Header Name="To"
Namespace="http://www.w3.org/2005/08/addressing"/>
+ <sp:Body/>
+ </sp:SignedParts>
+ <sp:Wss11>
+ <wsp:Policy>
+ <sp:MustSupportRefKeyIdentifier/>
+ <sp:MustSupportRefIssuerSerial/>
+ <sp:MustSupportRefThumbprint/>
+ <sp:MustSupportRefEncryptedKey/>
+ <sp:RequireSignatureConfirmation/>
+ </wsp:Policy>
+ </sp:Wss11>
+ <sp:Trust10>
+ <wsp:Policy>
+ <sp:MustSupportIssuedTokens/>
+ <sp:RequireClientEntropy/>
+ <sp:RequireServerEntropy/>
+ </wsp:Policy>
+ </sp:Trust10>
+ </wsp:All>
+ </wsp:ExactlyOne>
+</wsp:Policy>
Added:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/services.xml
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/services.xml?rev=810171&view=auto
==============================================================================
---
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/services.xml
(added)
+++
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/services.xml
Tue Sep 1 19:01:32 2009
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ !
+ ! Copyright 2006 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.
+ !-->
+<!-- services.xml for STS of Sample06 : WS Trust -->
+
+<service name="STS">
+ <module ref="rampart" />
+ <module ref="addressing" />
+ <module ref="rahas" />
+ <parameter name="saml-issuer-config">
+ <saml-issuer-config>
+ <issuerName>SAMPLE_STS</issuerName>
+ <issuerKeyAlias>service</issuerKeyAlias>
+ <issuerKeyPassword>apache</issuerKeyPassword>
+ <cryptoProperties>
+ <crypto
provider="org.apache.ws.security.components.crypto.Merlin">
+ <property
name="org.apache.ws.security.crypto.merlin.keystore.type">JKS</property>
+ <property
name="org.apache.ws.security.crypto.merlin.file">service.jks</property>
+ <property
name="org.apache.ws.security.crypto.merlin.keystore.password">apache</property>
+ </crypto>
+ </cryptoProperties>
+ <timeToLive>300000</timeToLive>
+ <keySize>256</keySize>
+ <addRequestedAttachedRef />
+ <addRequestedUnattachedRef />
+
+ <!--
+ Key computation mechanism
+ 1 - Use Request Entropy
+ 2 - Provide Entropy
+ 3 - Use Own Key
+ -->
+ <keyComputation>2</keyComputation>
+
+ <!--
+ proofKeyType element is valid only if the keyComputation is set
to 3
+ i.e. Use Own Key
+
+ Valid values are: EncryptedKey & BinarySecret
+ -->
+ <proofKeyType>BinarySecret</proofKeyType>
+ <trusted-services>
+ <service alias="service">*</service>
+ </trusted-services>
+ </saml-issuer-config>
+ </parameter>
+
+ <wsp:Policy wsu:Id="SigOnly"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
+ <wsp:ExactlyOne>
+ <wsp:All>
+ <sp:AsymmetricBinding
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <wsp:Policy>
+ <sp:InitiatorToken>
+ <wsp:Policy>
+ <sp:X509Token
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient">
+
<wsp:Policy>
+
<sp:RequireThumbprintReference/>
+
<sp:WssX509V3Token10/>
+
</wsp:Policy>
+ </sp:X509Token>
+ </wsp:Policy>
+ </sp:InitiatorToken>
+ <sp:RecipientToken>
+ <wsp:Policy>
+ <sp:X509Token
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never">
+
<wsp:Policy>
+
<sp:RequireThumbprintReference/>
+
<sp:WssX509V3Token10/>
+
</wsp:Policy>
+ </sp:X509Token>
+ </wsp:Policy>
+ </sp:RecipientToken>
+ <sp:AlgorithmSuite>
+ <wsp:Policy>
+
<sp:TripleDesRsa15/>
+ </wsp:Policy>
+ </sp:AlgorithmSuite>
+ <sp:Layout>
+ <wsp:Policy>
+ <sp:Strict/>
+ </wsp:Policy>
+ </sp:Layout>
+ <sp:IncludeTimestamp/>
+
<sp:OnlySignEntireHeadersAndBody/>
+ </wsp:Policy>
+ </sp:AsymmetricBinding>
+ <sp:Wss10
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <wsp:Policy>
+
<sp:MustSupportRefKeyIdentifier/>
+ <sp:MustSupportRefIssuerSerial/>
+ </wsp:Policy>
+ </sp:Wss10>
+ <sp:SignedParts
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <sp:Body/>
+ </sp:SignedParts>
+ <ramp:RampartConfig
xmlns:ramp="http://ws.apache.org/rampart/policy">
+ <ramp:user>service</ramp:user>
+
<ramp:encryptionUser>client</ramp:encryptionUser>
+
<ramp:passwordCallbackClass>org.apache.rampart.samples.policy.sample08.PWCBHandler</ramp:passwordCallbackClass>
+
+ <ramp:signatureCrypto>
+ <ramp:crypto
provider="org.apache.ws.security.components.crypto.Merlin">
+ <ramp:property
name="org.apache.ws.security.crypto.merlin.keystore.type">JKS</ramp:property>
+ <ramp:property
name="org.apache.ws.security.crypto.merlin.file">service.jks</ramp:property>
+ <ramp:property
name="org.apache.ws.security.crypto.merlin.keystore.password">apache</ramp:property>
+ </ramp:crypto>
+ </ramp:signatureCrypto>
+ </ramp:RampartConfig>
+ </wsp:All>
+ </wsp:ExactlyOne>
+ </wsp:Policy>
+</service>
+
Added:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/Client.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/Client.java?rev=810171&view=auto
==============================================================================
---
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/Client.java
(added)
+++
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/Client.java
Tue Sep 1 19:01:32 2009
@@ -0,0 +1,94 @@
+/*
+ * 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 org.apache.rampart.samples.policy.sample08;
+
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
+import org.apache.axiom.om.impl.builder.StAXOMBuilder;
+import org.apache.axiom.soap.SOAP12Constants;
+import org.apache.axis2.addressing.AddressingConstants;
+import org.apache.axis2.addressing.EndpointReference;
+import org.apache.axis2.client.Options;
+import org.apache.axis2.client.ServiceClient;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.ConfigurationContextFactory;
+import org.apache.neethi.Policy;
+import org.apache.neethi.PolicyEngine;
+import org.apache.rahas.RahasConstants;
+import org.apache.rahas.Token;
+import org.apache.rahas.TokenStorage;
+import org.apache.rahas.TrustException;
+import org.apache.rahas.TrustUtil;
+import org.apache.rahas.client.STSClient;
+import org.apache.rampart.RampartMessageData;
+import org.apache.ws.secpolicy.SP11Constants;
+import org.apache.ws.secpolicy.SPConstants;
+import org.opensaml.XML;
+
+import javax.xml.namespace.QName;
+
+public class Client {
+
+ public static void main(String[] args) throws Exception {
+
+ if(args.length != 3) {
+ System.out.println("Usage: $java Client
endpoint_address client_repo_path policy_xml_path");
+ }
+
+ ConfigurationContext ctx =
ConfigurationContextFactory.createConfigurationContextFromFileSystem(args[1],
null);
+
+ STSClient stsClient = new STSClient(ctx);
+
+ stsClient.setRstTemplate(getRSTTemplate());
+ String action =
TrustUtil.getActionValue(RahasConstants.VERSION_05_02,
RahasConstants.RST_ACTION_ISSUE);
+ stsClient.setAction(action);
+
+ Token responseToken =
stsClient.requestSecurityToken(loadPolicy("sample08/policy.xml"),
"http://localhost:8080/axis2/services/STS",
loadPolicy("sample08/sts_policy.xml"), null);
+
+ System.out.println("\n############################# Requested
SAML 2.0 Token ###################################\n");
+ System.out.println(responseToken.getToken().toString());
+
System.out.println("\n##########################################################################################\n");
+
+
+ }
+
+ private static Policy loadPolicy(String xmlPath) throws Exception {
+ StAXOMBuilder builder = new StAXOMBuilder(xmlPath);
+ return PolicyEngine.getPolicy(builder.getDocumentElement());
+ }
+
+ private static OMElement getSAMLToken(OMElement resp) {
+ OMElement rst = resp.getFirstChildWithName(new
QName(RahasConstants.WST_NS_05_02,
+
RahasConstants.IssuanceBindingLocalNames.
+
REQUESTED_SECURITY_TOKEN));
+ OMElement elem = rst.getFirstChildWithName(new QName(XML.SAML_NS,
"Assertion"));
+ return elem;
+ }
+
+
+ private static OMElement getRSTTemplate() throws Exception {
+ OMFactory fac = OMAbstractFactory.getOMFactory();
+ OMElement elem =
fac.createOMElement(SP11Constants.REQUEST_SECURITY_TOKEN_TEMPLATE);
+ TrustUtil.createTokenTypeElement(RahasConstants.VERSION_05_02,
elem).setText(RahasConstants.TOK_TYPE_SAML_20);
+ TrustUtil.createKeyTypeElement(RahasConstants.VERSION_05_02, elem,
RahasConstants.KEY_TYPE_SYMM_KEY);
+ TrustUtil.createKeySizeElement(RahasConstants.VERSION_05_02, elem, 256);
+ return elem;
+ }
+
+}
Added:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/PWCBHandler.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/PWCBHandler.java?rev=810171&view=auto
==============================================================================
---
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/PWCBHandler.java
(added)
+++
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/PWCBHandler.java
Tue Sep 1 19:01:32 2009
@@ -0,0 +1,42 @@
+/*
+ * 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 org.apache.rampart.samples.policy.sample08;
+
+import org.apache.ws.security.WSPasswordCallback;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+
+import java.io.IOException;
+
+public class PWCBHandler implements CallbackHandler {
+
+ public void handle(Callback[] callbacks) throws IOException,
+ UnsupportedCallbackException {
+ for (int i = 0; i < callbacks.length; i++) {
+ WSPasswordCallback pwcb = (WSPasswordCallback)callbacks[i];
+ String id = pwcb.getIdentifer();
+ if("client".equals(id)) {
+ pwcb.setPassword("apache");
+ } else if("service".equals(id)) {
+ pwcb.setPassword("apache");
+ }
+ }
+ }
+
+}
Added:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/SimpleService.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/SimpleService.java?rev=810171&view=auto
==============================================================================
---
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/SimpleService.java
(added)
+++
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/src/org/apache/rampart/samples/policy/sample08/SimpleService.java
Tue Sep 1 19:01:32 2009
@@ -0,0 +1,24 @@
+/*
+ * Copyright 2003-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 org.apache.rampart.samples.policy.sample08;
+
+public class SimpleService {
+
+ public String echo(String arg) {
+ return arg;
+ }
+}
Added:
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/sts_policy.xml
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/sts_policy.xml?rev=810171&view=auto
==============================================================================
---
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/sts_policy.xml
(added)
+++
webservices/rampart/branches/java/1_5/modules/rampart-samples/policy/sample08/sts_policy.xml
Tue Sep 1 19:01:32 2009
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ !
+ ! Copyright 2006 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.
+ !-->
+<wsp:Policy wsu:Id="SigOnly"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
+ <wsp:ExactlyOne>
+ <wsp:All>
+ <sp:AsymmetricBinding
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <wsp:Policy>
+ <sp:InitiatorToken>
+ <wsp:Policy>
+ <sp:X509Token
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient">
+ <wsp:Policy>
+
<sp:RequireThumbprintReference/>
+
<sp:WssX509V3Token10/>
+ </wsp:Policy>
+ </sp:X509Token>
+ </wsp:Policy>
+ </sp:InitiatorToken>
+ <sp:RecipientToken>
+ <wsp:Policy>
+ <sp:X509Token
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never">
+ <wsp:Policy>
+
<sp:RequireThumbprintReference/>
+
<sp:WssX509V3Token10/>
+ </wsp:Policy>
+ </sp:X509Token>
+ </wsp:Policy>
+ </sp:RecipientToken>
+ <sp:AlgorithmSuite>
+ <wsp:Policy>
+ <sp:TripleDesRsa15/>
+ </wsp:Policy>
+ </sp:AlgorithmSuite>
+ <sp:Layout>
+ <wsp:Policy>
+ <sp:Strict/>
+ </wsp:Policy>
+ </sp:Layout>
+ <sp:IncludeTimestamp/>
+ <sp:OnlySignEntireHeadersAndBody/>
+ </wsp:Policy>
+ </sp:AsymmetricBinding>
+ <sp:Wss10
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <wsp:Policy>
+ <sp:MustSupportRefKeyIdentifier/>
+ <sp:MustSupportRefIssuerSerial/>
+ </wsp:Policy>
+ </sp:Wss10>
+ <sp:SignedParts
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+ <sp:Body/>
+ </sp:SignedParts>
+
+ <ramp:RampartConfig
xmlns:ramp="http://ws.apache.org/rampart/policy">
+ <ramp:user>client</ramp:user>
+
<ramp:encryptionUser>service</ramp:encryptionUser>
+
<ramp:passwordCallbackClass>org.apache.rampart.samples.policy.sample08.PWCBHandler</ramp:passwordCallbackClass>
+
+ <ramp:signatureCrypto>
+ <ramp:crypto
provider="org.apache.ws.security.components.crypto.Merlin">
+ <ramp:property
name="org.apache.ws.security.crypto.merlin.keystore.type">JKS</ramp:property>
+ <ramp:property
name="org.apache.ws.security.crypto.merlin.file">client.jks</ramp:property>
+ <ramp:property
name="org.apache.ws.security.crypto.merlin.keystore.password">apache</ramp:property>
+ </ramp:crypto>
+ </ramp:signatureCrypto>
+ </ramp:RampartConfig>
+
+ </wsp:All>
+ </wsp:ExactlyOne>
+</wsp:Policy>