IBM Support

Enabling an IMS application as a web service provider with SAML signed assertion using IMS Enterprise Suite Version 2.2 SOAP Gateway (z/OS version)

Education


Abstract

This sample takes you through the steps to enable an IMS™ application as a web service by using the IMS Phonebook sample application (IVTNO). This sample demonstrates how to enable web services security using Security Assertion Markup Language (SAML) 2.0 signed assertion, and how to create a client application for secure HTTPS communication to the IMS Phonebook web service that is deployed on the SOAP Gateway server on z/OS®.

Content

The Apache Axis2 web services framework supports multiple XML data-binding approaches, such as XMLBeans, JiBX data binding, as well as the custom Axis Data Binding (ADB) approach developed specifically for Axis2. This sample demonstrates how to use the WSDL2Java tool that takes a WSDL document and generates fully annotated Java™ code from which to implement a service by using the XMLBeans approach.

You will create a client stub that sends messages via secure HTTPS communication (client authentication) to the Phonebook web service that is deployed on the SOAP Gateway server on the z/OS platform.

Requirements

  • IMS Enterprise Suite Version 2.2 SOAP Gateway
  • IMS Version 11 or Version 12 with integrated IMS Connect
  • The IMS Phonebook sample application files (included with this sample)
  • IBM® Rational® Developer for System z® Version 8.0.3.2 or later.
    • Optional: If you don't have access to the tool, the generated artifacts are provided for you.
    • Required: The FEK.SFEKLOAD data set for Rational Developer for System z must be added to the STEPLIB in the IMS Connect startup procedure for the XML converter function to work.
  • Apache Ant for compiling your client application from http://ant.apache.org/bindownload.cgi.
    Note: This sample is tested with V1.8.2.

Contents of the sample ZIP file

Detailed instructions for this sample is provided in the attached PDF file. All sample files you need are included in the attached compressed file. The compressed file includes:

  • The COBOL copybook for the Phonebook sample application that will be enabled as a web service
  • The generated files from Rational Developer for System z V8.0.3.2 for your reference in case you do not have access to the required version of Rational Developer for System z Version
  • The sample JCL for compiling and linking the XML converter
  • Sample client application
  • Sample files for enabling SAML signed assertion
File name
Description
Phonebook copybook and files that are generated by Rational Developer for System z
With WS-Security enabled (with SAML 2.0 Signed Assertion security token) scenario
IMSPHBK.cpyIMS Phonebook application copybook
IMSPHBK.wsdlWSDL file (generated by RDz V8.0.3.2)
IMSPHBK.xmlCorrelator XML file (generated by RDz V8.0.3.2)
IMSPHBKD.cblXML converters file (generated by RDz V8.0.3.2)
IMSPHBK_migrated.xmlMigrated correlator file for the new correlator scheme.
Sample JCL for compiling and linking the XML converter
IMSPHBKD.jclSample JCL for compiling and linking the IMSPHBKD.cbl XML converter
Sample Java application
IMSPHBK_Security.javaSample Java client application
The SAMLSignedAssertion/ folder
saml-provider.jceksA sample keystore file
client/bindings.xml and policy.xmlClient binding and policy files (different SAML token types will have their own corresponding binding and policy files)
SAML/saml-creation/SAMLIssuerConfig.propertiesFile containing configuration properties to control how the SAML token is configured
The files1347061119810/ folder
Target/xxxxxx.javaGenerated Phonebook service stub files
Important: The IMSPHBKServiceStub.java file included here is a customized version to demonstrate the customization required.
z/OS shell script files
wsdl2java_xmlbean.shGenerate the client proxy code in xmlbean data bindings
antCompile.sh and ant.shCompile the source file
setpath.sh and setclasspath.shSet the Java PATH and CLASSPATH

[{"Product":{"code":"SSGMWY","label":"IBM IMS Enterprise Suite for z\/OS"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"SOAP Gateway","Platform":[{"code":"PF035","label":"z\/OS"}],"Version":"2.2","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
01 June 2022

UID

swg27036958