Repository: cxf Updated Branches: refs/heads/master d222f3e51 -> 94585ae07
http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/Bethal.cxf ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/Bethal.cxf b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Bethal.cxf new file mode 100644 index 0000000..2700d2a --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Bethal.cxf @@ -0,0 +1,72 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you 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. +--> + +<!-- + ** This file configures the Bethal Server. + ** It is an https server that conditionally responds + ** with 401s. + --> + +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:cxf="http://cxf.apache.org/core" + xmlns:sec="http://cxf.apache.org/configuration/security" + xmlns:http="http://cxf.apache.org/transports/http/configuration" + xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" + xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" + xsi:schemaLocation=" + http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd + http://cxf.apache.org/configuration/security + http://cxf.apache.org/schemas/configuration/security.xsd + http://cxf.apache.org/transports/http/configuration + http://cxf.apache.org/schemas/configuration/http-conf.xsd + http://cxf.apache.org/transports/http-jetty/configuration + http://cxf.apache.org/schemas/configuration/http-jetty.xsd + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + + <http:destination + name="{http://apache.org/hello_world}Bethal.http-destination"> + </http:destination> + + <httpj:engine-factory bus="cxf"> + <httpj:engine port="${testutil.ports.BusServer.4}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="OBF:1v2j1uum1xtv1zej1zer1xtn1uvk1v1v"> + <sec:keyStore type="JKS" password="OBF:1v2j1uum1xtv1zej1zer1xtn1uvk1v1v" + resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="OBF:1v2j1uum1xtv1zej1zer1xtn1uvk1v1v" + resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:clientAuthentication want="true" required="true"/> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + + <cxf:bus> + <cxf:inInterceptors> + <bean class="org.apache.cxf.systest.https.PushBack401"/> + </cxf:inInterceptors> + </cxf:bus> + +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/BethalClientBeans.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/BethalClientBeans.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/BethalClientBeans.xml new file mode 100644 index 0000000..a012a45 --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/BethalClientBeans.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sec="http://cxf.apache.org/configuration/security" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xsi:schemaLocation=" http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xs d"> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <import resource="classpath:org/apache/cxf/systest/https/BethalClientConfig.cxf"/> + <jaxws:client xmlns:s="http://apache.org/hello_world" id="Bethal" serviceClass="org.apache.hello_world.Greeter" serviceName="s:SOAPService" endpointName="s:Bethal" address="https://localhost:${testutil.ports.BusServer.4}/Bethal"/> +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/BethalClientConfig.cxf ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/BethalClientConfig.cxf b/systests/transports/src/test/resources/org/apache/cxf/systest/https/BethalClientConfig.cxf new file mode 100644 index 0000000..47e7dfe --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/BethalClientConfig.cxf @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:sec="http://cxf.apache.org/configuration/security" + xmlns:http="http://cxf.apache.org/transports/http/configuration" + xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" + xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" + xsi:schemaLocation=" + http://cxf.apache.org/configuration/security + http://cxf.apache.org/schemas/configuration/security.xsd + http://cxf.apache.org/transports/http/configuration + http://cxf.apache.org/schemas/configuration/http-conf.xsd + http://cxf.apache.org/transports/http-jetty/configuration + http://cxf.apache.org/schemas/configuration/http-jetty.xsd + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + + <http:conduit name="{http://apache.org/hello_world}Bethal.http-conduit"> + + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" + resource="keys/Morpit.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" + resource="keys/Truststore.jks"/> + </sec:trustManagers> + </http:tlsClientParameters> + <http:authorization> + <sec:UserName>Betty</sec:UserName> + <sec:Password>password</sec:Password> + </http:authorization> + <http:client AutoRedirect="true" Connection="Keep-Alive"/> + + </http:conduit> + +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/Gordy.cxf ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/Gordy.cxf b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Gordy.cxf new file mode 100644 index 0000000..61a59dd --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Gordy.cxf @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you 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. +--> + +<!-- + ** This file configures the Gordy Server. + ** It is an https server that redirects to Bethal. + --> + + +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:sec="http://cxf.apache.org/configuration/security" + xmlns:http="http://cxf.apache.org/transports/http/configuration" + xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" + xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" + xsi:schemaLocation=" + http://cxf.apache.org/configuration/security + http://cxf.apache.org/schemas/configuration/security.xsd + http://cxf.apache.org/transports/http/configuration + http://cxf.apache.org/schemas/configuration/http-conf.xsd + http://cxf.apache.org/transports/http-jetty/configuration + http://cxf.apache.org/schemas/configuration/http-jetty.xsd + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + + <http:destination + name="{http://apache.org/hello_world}Gordy.http-destination"> + <http:server RedirectURL="https://localhost:${testutil.ports.BusServer.4}/Bethal"/> + </http:destination> + + <httpj:engine-factory bus="cxf"> + <httpj:engine port="${testutil.ports.BusServer.3}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" + resource="keys/Gordy.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" + resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:clientAuthentication want="true" required="true"/> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/Morpit.cxf ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/Morpit.cxf b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Morpit.cxf new file mode 100644 index 0000000..e6db5ff --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Morpit.cxf @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you 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. +--> + +<!-- + ** This file configures the Morpit Server. It is just an + ** Https server with a name that will kick in the HostnameVerifier. + --> + + +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:sec="http://cxf.apache.org/configuration/security" + xmlns:http="http://cxf.apache.org/transports/http/configuration" + xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" + xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" + xsi:schemaLocation=" + http://cxf.apache.org/configuration/security + http://cxf.apache.org/schemas/configuration/security.xsd + http://cxf.apache.org/transports/http/configuration + http://cxf.apache.org/schemas/configuration/http-conf.xsd + http://cxf.apache.org/transports/http-jetty/configuration + http://cxf.apache.org/schemas/configuration/http-jetty.xsd + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + + <http:destination name="{http://apache.org/hello_world}GreeterImplPort.http-destination"> + </http:destination> + + <httpj:engine-factory bus="cxf"> + <httpj:engine port="${testutil.ports.BusServer.5}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" + resource="keys/Morpit.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" + resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:clientAuthentication want="true" required="true"/> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/Poltim.cxf ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/Poltim.cxf b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Poltim.cxf new file mode 100644 index 0000000..090418d --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Poltim.cxf @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you 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. +--> + +<!-- + ** This file configures the Poltim Server. + ** It is an https server that redirects to Mortimer. + --> + + +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:sec="http://cxf.apache.org/configuration/security" + xmlns:http="http://cxf.apache.org/transports/http/configuration" + xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" + xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" + xsi:schemaLocation=" + http://cxf.apache.org/configuration/security + http://cxf.apache.org/schemas/configuration/security.xsd + http://cxf.apache.org/transports/http/configuration + http://cxf.apache.org/schemas/configuration/http-conf.xsd + http://cxf.apache.org/transports/http-jetty/configuration + http://cxf.apache.org/schemas/configuration/http-jetty.xsd + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + + <http:destination name="{http://apache.org/hello_world}Poltim.http-destination"> + <http:server RedirectURL="http://localhost:${testutil.ports.BusServer.0}/Mortimer"/> + </http:destination> + + <httpj:engine-factory bus="cxf"> + <httpj:engine port="${testutil.ports.BusServer.2}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" + resource="keys/Poltim.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" + resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:clientAuthentication want="true" required="true"/> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/Tarpin.cxf ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/Tarpin.cxf b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Tarpin.cxf new file mode 100644 index 0000000..00d5c20 --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/Tarpin.cxf @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you 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. +--> + +<!-- + ** This file configures the Tarpin Server. + ** It is an https server that redirects to Gordy. + --> + + +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:sec="http://cxf.apache.org/configuration/security" + xmlns:http="http://cxf.apache.org/transports/http/configuration" + xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" + xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" + xsi:schemaLocation=" + http://cxf.apache.org/configuration/security + http://cxf.apache.org/schemas/configuration/security.xsd + http://cxf.apache.org/transports/http/configuration + http://cxf.apache.org/schemas/configuration/http-conf.xsd + http://cxf.apache.org/transports/http-jetty/configuration + http://cxf.apache.org/schemas/configuration/http-jetty.xsd + http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans.xsd"> + + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + + <http:destination name="{http://apache.org/hello_world}Tarpin.http-destination"> + <http:server RedirectURL="https://localhost:${testutil.ports.BusServer.3}/Gordy"/> + </http:destination> + + <httpj:engine-factory bus="cxf"> + <httpj:engine port="${testutil.ports.BusServer.1}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" + file="src/test/resources/keys/Tarpin.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" + file="src/test/resources/keys/Truststore.jks"/> + </sec:trustManagers> + <sec:clientAuthentication want="true" required="true"/> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-publish-callback.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-publish-callback.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-publish-callback.xml new file mode 100644 index 0000000..8228d10 --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-publish-callback.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:sec="http://cxf.apache.org/configuration/security" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd "> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <!-- --> + <!-- This Spring config file is designed to represent a minimal --> + <!-- configuration for spring-loading a CXF servant, where the --> + <!-- servant listens using HTTP/S as the transport protocol. --> + <!-- --> + <!-- Note that the service endpoint is spring-loaded. In the --> + <!-- scenario in which this config is designed to run, the --> + <!-- server application merely instantiates a Bus, and does not --> + <!-- publish any services programmatically --> + <!-- --> + <!-- --> + <!-- Spring-load an HTTPS servant --> + <!-- --> + <jaxws:endpoint xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint" implementor="org.apache.cxf.systest.http.GreeterImpl" address="https://localhost:${testutil.ports.BusServer.1}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-9001-tls-config"/> + <!-- --> + <!-- TLS Port configuration parameters for port 9001 --> + <!-- --> + <httpj:engine-factory id="port-9001-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.1}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPasswordCallbackHandler="org.apache.cxf.systest.https.KeyPasswordCallbackHandler"> + <sec:keyStore type="JKS" password="password" file="src/test/resources/keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" file="src/test/resources/keys/Truststore.jks"/> + </sec:trustManagers> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- HTTP/S configuration for clients --> + <!-- --> + <http:conduit name="{http://apache.org/hello_world/services}HttpsPort.http-conduit"> + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers keyPasswordCallbackHandler="org.apache.cxf.systest.https.KeyPasswordCallbackHandler"> + <sec:keyStore type="JKS" password="password" file="src/test/resources/keys/Morpit.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" file="src/test/resources/keys/Truststore.jks"/> + </sec:trustManagers> + </http:tlsClientParameters> + </http:conduit> +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-publish.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-publish.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-publish.xml new file mode 100644 index 0000000..1d8190d --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-publish.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:sec="http://cxf.apache.org/configuration/security" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd "> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <!-- --> + <!-- This Spring config file is designed to represent a minimal --> + <!-- configuration for spring-loading a CXF servant, where the --> + <!-- servant listens using HTTP/S as the transport protocol. --> + <!-- --> + <!-- Note that the service endpoint is spring-loaded. In the --> + <!-- scenario in which this config is designed to run, the --> + <!-- server application merely instantiates a Bus, and does not --> + <!-- publish any services programmatically --> + <!-- --> + <!-- --> + <!-- Spring-load an HTTPS servant --> + <!-- --> + <jaxws:endpoint xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint" implementor="org.apache.cxf.systest.http.GreeterImpl" address="https://localhost:${testutil.ports.BusServer.1}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-9001-tls-config"/> + <!-- --> + <!-- TLS Port configuration parameters for port 9001 --> + <!-- --> + <httpj:engine-factory id="port-9001-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.1}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- HTTP/S configuration for clients --> + <!-- --> + <http:conduit name="{http://apache.org/hello_world/services}HttpsPort.http-conduit"> + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Morpit.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + </http:tlsClientParameters> + </http:conduit> +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-server-constraints.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-server-constraints.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-server-constraints.xml new file mode 100644 index 0000000..753e0a4 --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-server-constraints.xml @@ -0,0 +1,255 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:sec="http://cxf.apache.org/configuration/security" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd "> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <!-- --> + <!-- This Spring config file is designed to represent a minimal --> + <!-- configuration for spring-loading a CXF servant, where the --> + <!-- servant listens using HTTP/S as the transport protocol. --> + <!-- --> + <!-- Note that the service endpoint is spring-loaded. In the --> + <!-- scenario in which this config is designed to run, the --> + <!-- server application merely instantiates a Bus, and does not --> + <!-- publish any services programmatically --> + <!-- --> + <!-- --> + <!-- Spring-load an HTTPS servant --> + <!-- --> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint-testutil-ports-BusServer-0" address="https://localhost:${testutil.ports.BusServer.0}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-testutil.ports.BusServer.0-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint-testutil-ports-BusServer-1" address="https://localhost:${testutil.ports.BusServer.1}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-testutil.ports.BusServer.1-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint-testutil-ports-BusServer-2" address="https://localhost:${testutil.ports.BusServer.2}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-testutil.ports.BusServer.2-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint-testutil-ports-BusServer-3" address="https://localhost:${testutil.ports.BusServer.3}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-testutil.ports.BusServer.3-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint-testutil-ports-BusServer-4" address="https://localhost:${testutil.ports.BusServer.4}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-testutil.ports.BusServer.4-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint-testutil-ports-BusServer-5" address="https://localhost:${testutil.ports.BusServer.5}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-testutil.ports.BusServer.5-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint-testutil-ports-BusServer-6" address="https://localhost:${testutil.ports.BusServer.6}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-testutil.ports.BusServer.6-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint-testutil-ports-BusServer-7" address="https://localhost:${testutil.ports.BusServer.7}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-testutil.ports.BusServer.7-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <!-- --> + <!-- TLS Port configuration parameters for port 9000 --> + <!-- --> + <httpj:engine-factory id="port-testutil.ports.BusServer.0-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.0}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:certConstraints> + <sec:SubjectDNConstraints> + <sec:RegularExpression>.*O=ApacheTest.*</sec:RegularExpression> + <sec:RegularExpression>.*OU=Morpit.*</sec:RegularExpression> + </sec:SubjectDNConstraints> + </sec:certConstraints> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- TLS Port configuration parameters for port 9007 --> + <!-- --> + <httpj:engine-factory id="port-testutil.ports.BusServer.1-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.1}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:certConstraints> + <sec:SubjectDNConstraints> + <sec:RegularExpression>.*O=BadApacheTest.*</sec:RegularExpression> + </sec:SubjectDNConstraints> + </sec:certConstraints> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- TLS Port configuration parameters for port 9008 --> + <!-- --> + <httpj:engine-factory id="port-testutil.ports.BusServer.2-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.2}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:certConstraints> + <sec:SubjectDNConstraints> + <sec:RegularExpression>.*O=ApacheTest.*</sec:RegularExpression> + <sec:RegularExpression>.*O=BadApacheTest.*</sec:RegularExpression> + </sec:SubjectDNConstraints> + </sec:certConstraints> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- TLS Port configuration parameters for port 9009 --> + <!-- --> + <httpj:engine-factory id="port-testutil.ports.BusServer.3-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.3}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:certConstraints> + <sec:SubjectDNConstraints combinator="ANY"> + <sec:RegularExpression>.*O=ApacheTest.*</sec:RegularExpression> + <sec:RegularExpression>.*O=BadApacheTest.*</sec:RegularExpression> + </sec:SubjectDNConstraints> + </sec:certConstraints> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- TLS Port configuration parameters for port 9010 --> + <!-- --> + <httpj:engine-factory id="port-testutil.ports.BusServer.4-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.4}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:certConstraints> + <sec:IssuerDNConstraints combinator="ALL"> + <sec:RegularExpression>.*O=ApacheTest.*</sec:RegularExpression> + <sec:RegularExpression>.*O=BadApacheTest.*</sec:RegularExpression> + </sec:IssuerDNConstraints> + </sec:certConstraints> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- TLS Port configuration parameters for port 9011 --> + <!-- --> + <httpj:engine-factory id="port-testutil.ports.BusServer.5-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.5}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:certConstraints> + <sec:IssuerDNConstraints combinator="ANY"> + <sec:RegularExpression>.*O=ApacheTest.*</sec:RegularExpression> + <sec:RegularExpression>.*O=BadApacheTest.*</sec:RegularExpression> + </sec:IssuerDNConstraints> + </sec:certConstraints> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- TLS Port configuration parameters for port 9012 --> + <!-- --> + <httpj:engine-factory id="port-testutil.ports.BusServer.6-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.6}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Morpit.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:clientAuthentication required="true"/> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- TLS Port configuration parameters for port 9013 --> + <!-- --> + <httpj:engine-factory id="port-testutil.ports.BusServer.7-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.7}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Gordy.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:clientAuthentication required="true"/> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- HTTP/S configuration for clients --> + <!-- --> + <http:conduit name="{http://apache.org/hello_world/services}HttpsPort.http-conduit"> + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Morpit.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:certConstraints> + <sec:SubjectDNConstraints> + <sec:RegularExpression>.*CN=(Bethal|Gordy).*</sec:RegularExpression> + <sec:RegularExpression>.*O=ApacheTest.*</sec:RegularExpression> + </sec:SubjectDNConstraints> + <sec:IssuerDNConstraints combinator="ANY"> + <sec:RegularExpression>.*CN=Bethal.*</sec:RegularExpression> + <sec:RegularExpression>.*OU=Morpit.*</sec:RegularExpression> + </sec:IssuerDNConstraints> + </sec:certConstraints> + </http:tlsClientParameters> + </http:conduit> +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-server.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-server.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-server.xml new file mode 100644 index 0000000..2ded663 --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-server.xml @@ -0,0 +1,77 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:sec="http://cxf.apache.org/configuration/security" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd "> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <!-- --> + <!-- This Spring config file is designed to represent a minimal --> + <!-- configuration for spring-loading a CXF servant, where the --> + <!-- servant listens using HTTP/S as the transport protocol. --> + <!-- --> + <!-- Note that the service endpoint is spring-loaded. In the --> + <!-- scenario in which this config is designed to run, the --> + <!-- server application merely instantiates a Bus, and does not --> + <!-- publish any services programmatically --> + <!-- --> + <!-- --> + <!-- Spring-load an HTTPS servant --> + <!-- --> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint" address="https://localhost:${testutil.ports.BusServer.2}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-9002-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <!-- Non http endpoint --> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpEndpoint" address="http://localhost:${testutil.ports.BusServer.3}/SoapContext/HttpPort" serviceName="s:SOAPService" endpointName="e:HttpsPort"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <!-- --> + <!-- TLS Port configuration parameters for port 9002 --> + <!-- --> + <httpj:engine-factory id="port-9002-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.2}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:clientAuthentication want="true" required="true"/> + <sec:certAlias>bethal</sec:certAlias> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- HTTP/S configuration for clients --> + <!-- --> + <http:conduit name="{http://apache.org/hello_world/services}HttpsPort.http-conduit"> + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Morpit.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + <sec:certAlias>morpit</sec:certAlias> + </http:tlsClientParameters> + </http:conduit> +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-tlsrefs-publish.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-tlsrefs-publish.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-tlsrefs-publish.xml new file mode 100644 index 0000000..a9a73fd --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/jaxws-tlsrefs-publish.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:sec="http://cxf.apache.org/configuration/security" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd "> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <!-- --> + <!-- This Spring config file is designed to represent a minimal --> + <!-- configuration for spring-loading a CXF servant, where the --> + <!-- servant listens using HTTP/S as the transport protocol. --> + <!-- --> + <!-- Note that the service endpoint is spring-loaded. In the --> + <!-- scenario in which this config is designed to run, the --> + <!-- server application merely instantiates a Bus, and does not --> + <!-- publish any services programmatically --> + <!-- --> + <!-- --> + <!-- Spring-load an HTTPS servant --> + <!-- --> + <jaxws:endpoint xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint" implementor="org.apache.cxf.systest.http.GreeterImpl" address="https://localhost:${testutil.ports.BusServer.1}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-9001-tls-config"/> + <!-- --> + <!-- TLS Port configuration parameters for port 9001 --> + <!-- --> + <bean id="serverKeyManagers" class="org.apache.cxf.systest.https.HTTPSClientTest$ServerManagersFactory" factory-method="getKeyManagers"/> + <bean id="serverTrustManagers" class="org.apache.cxf.systest.https.HTTPSClientTest$ServerManagersFactory" factory-method="getTrustManagers"/> + <httpj:engine-factory id="port-9001-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.1}"> + <httpj:tlsServerParameters> + <sec:keyManagers ref="serverKeyManagers"/> + <sec:trustManagers ref="serverTrustManagers"/> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- HTTP/S configuration for clients --> + <!-- --> + <bean id="clientKeyManagers" class="org.apache.cxf.systest.https.HTTPSClientTest$ClientManagersFactory" factory-method="getKeyManagers"/> + <bean id="clientTrustManagers" class="org.apache.cxf.systest.https.HTTPSClientTest$ClientManagersFactory" factory-method="getTrustManagers"/> + <http:conduit name="{http://apache.org/hello_world/services}HttpsPort.http-conduit"> + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers ref="clientKeyManagers"/> + <sec:trustManagers ref="clientTrustManagers"/> + </http:tlsClientParameters> + </http:conduit> +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/pkcs12.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/pkcs12.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/pkcs12.xml new file mode 100644 index 0000000..d01a2a0 --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/pkcs12.xml @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:sec="http://cxf.apache.org/configuration/security" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd "> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <!-- --> + <!-- This Spring config file is designed to represent a minimal --> + <!-- configuration for spring-loading a CXF servant, where the --> + <!-- servant listens using HTTP/S as the transport protocol. --> + <!-- --> + <!-- Note that the service endpoint is spring-loaded. In the --> + <!-- scenario in which this config is designed to run, the --> + <!-- server application merely instantiates a Bus, and does not --> + <!-- publish any services programmatically --> + <!-- --> + <!-- This test ensures we can use PKCS12 keystores and PEM truststores --> + <!-- --> + <!-- --> + <!-- Spring-load an HTTPS servant --> + <!-- --> + <jaxws:server xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint" address="https://localhost:${testutil.ports.BusServer.6}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-9006-tls-config"> + <jaxws:serviceBean> + <bean class="org.apache.cxf.systest.http.GreeterImpl"/> + </jaxws:serviceBean> + </jaxws:server> + <!-- --> + <!-- TLS Port configuration parameters for port 9006 --> + <!-- --> + <httpj:engine-factory id="port-9006-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.6}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="pkcs12" password="password" resource="keys/Bethal.p12"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:certStore resource="keys/Truststore.pem"/> + </sec:trustManagers> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- HTTP/S configuration for clients --> + <!-- --> + <http:conduit name="{http://apache.org/hello_world/services}HttpsPort.http-conduit"> + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="pkcs12" password="password" resource="keys/Morpit.p12"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:certStore resource="keys/Truststore.pem"/> + </sec:trustManagers> + </http:tlsClientParameters> + </http:conduit> +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/resource-key-spec-url.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/resource-key-spec-url.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/resource-key-spec-url.xml new file mode 100644 index 0000000..0e70d13 --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/resource-key-spec-url.xml @@ -0,0 +1,72 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:cxf="http://cxf.apache.org/core" xmlns:sec="http://cxf.apache.org/configuration/security" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://cxf.apach e.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd "> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <!-- --> + <!-- This Spring config file is designed to represent a minimal --> + <!-- configuration for spring-loading a CXF servant, where the --> + <!-- servant listens using HTTP/S as the transport protocol. --> + <!-- --> + <!-- Note that the service endpoint is spring-loaded. In the --> + <!-- scenario in which this config is designed to run, the --> + <!-- server application merely instantiates a Bus, and does not --> + <!-- publish any services programmatically --> + <!-- --> + <!-- --> + <!-- Spring-load an HTTPS servant --> + <!-- --> + <jaxws:endpoint xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint" implementor="org.apache.cxf.systest.http.GreeterImpl" address="https://localhost:${testutil.ports.BusServer.5}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" wsdlLocation="/wsdl/hello_world_services.wsdl" depends-on="port-9005-tls-config"> + <jaxws:features> + <cxf:logging/> + </jaxws:features> + </jaxws:endpoint> + <!-- --> + <!-- TLS Port configuration parameters for port 9005 --> + <!-- --> + <!-- This test exercises the resource attribute in a keyStore element --> + <!-- --> + <httpj:engine-factory id="port-9005-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.5}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- HTTP/S configuration for clients --> + <!-- --> + <!-- This test exercises the resource attribute in a keyStore and certStore element --> + <!-- --> + <http:conduit name="https://localhost:.*/SoapContext/HttpsPort"> + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="pkcs12" password="password" resource="keys/Morpit.p12"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:certStore resource="keys/Truststore.pem"/> + </sec:trustManagers> + </http:tlsClientParameters> + </http:conduit> +</beans> http://git-wip-us.apache.org/repos/asf/cxf/blob/94585ae0/systests/transports/src/test/resources/org/apache/cxf/systest/https/resource-key-spec.xml ---------------------------------------------------------------------- diff --git a/systests/transports/src/test/resources/org/apache/cxf/systest/https/resource-key-spec.xml b/systests/transports/src/test/resources/org/apache/cxf/systest/https/resource-key-spec.xml new file mode 100644 index 0000000..a1f9bba --- /dev/null +++ b/systests/transports/src/test/resources/org/apache/cxf/systest/https/resource-key-spec.xml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:sec="http://cxf.apache.org/configuration/security" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://cxf.apache.org/transports/http-jetty/configuration http://cxf.apache.org/schemas/configuration/http-jetty.xsd http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd "> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + <!-- --> + <!-- This Spring config file is designed to represent a minimal --> + <!-- configuration for spring-loading a CXF servant, where the --> + <!-- servant listens using HTTP/S as the transport protocol. --> + <!-- --> + <!-- Note that the service endpoint is spring-loaded. In the --> + <!-- scenario in which this config is designed to run, the --> + <!-- server application merely instantiates a Bus, and does not --> + <!-- publish any services programmatically --> + <!-- --> + <!-- --> + <!-- Spring-load an HTTPS servant --> + <!-- --> + <jaxws:endpoint xmlns:e="http://apache.org/hello_world/services" xmlns:s="http://apache.org/hello_world/services" id="JaxwsHttpsEndpoint" implementor="org.apache.cxf.systest.http.GreeterImpl" address="https://localhost:${testutil.ports.BusServer.4}/SoapContext/HttpsPort" serviceName="s:SOAPService" endpointName="e:HttpsPort" depends-on="port-9004-tls-config"/> + <!-- --> + <!-- TLS Port configuration parameters for port 9004 --> + <!-- --> + <!-- This test exercises the resource attribute in a keyStore element --> + <!-- --> + <httpj:engine-factory id="port-9004-tls-config"> + <httpj:engine port="${testutil.ports.BusServer.4}"> + <httpj:tlsServerParameters> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="JKS" password="password" resource="keys/Bethal.jks"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:keyStore type="JKS" password="password" resource="keys/Truststore.jks"/> + </sec:trustManagers> + </httpj:tlsServerParameters> + </httpj:engine> + </httpj:engine-factory> + <!-- --> + <!-- HTTP/S configuration for clients --> + <!-- --> + <!-- This test exercises the resource attribute in a keyStore and certStore element --> + <!-- --> + <http:conduit name="{http://apache.org/hello_world/services}HttpsPort.http-conduit"> + <http:tlsClientParameters disableCNCheck="true"> + <sec:keyManagers keyPassword="password"> + <sec:keyStore type="pkcs12" password="password" resource="keys/Morpit.p12"/> + </sec:keyManagers> + <sec:trustManagers> + <sec:certStore resource="keys/Truststore.pem"/> + </sec:trustManagers> + </http:tlsClientParameters> + </http:conduit> +</beans>
