Publishing Batch Jobs as Web Services Business Objects Data

Document Sample
Publishing Batch Jobs as Web Services Business Objects Data Powered By Docstoc
					Background Screening



                   September 10, 2008

                   Publishing Batch Jobs
                   as Web Services
                   Business Objects Data Integrator

                   Chad Dowling, Information Services




                                                        www.kroll.com
Publishing Batch Jobs as Web Services
Topics of Discussion

 Business Case

 Solution

 Data Integrator Feature

 Configuration
     – SSL Encryption
     – User Setup
     – Publish Job as WS
     – Import WSDL into IDE
     – Code Web Page
     – Integrate Page into Enterprise Web Application

 Q&A




Kroll Background Screening                              1
Publishing Batch Jobs as Web Services




                             Business Case




Kroll Background Screening                   2
Publishing Batch Jobs as Web Services
Business Case


 The Finance department needs to integrate invoice information
   generated in the company’s transactional system into the enterprise
   accounting system.
 Also they would like to control when the integration files get generated.

 They also requested that the facility to generate the files be integrated
   into the company’s enterprise web application.
 In addition, the Finance department needed reports to show the
   contents of the integration files, invoice summary reports, and
   exception reports to help investigate common data anomalies.




Kroll Background Screening                                                    3
Publishing Batch Jobs as Web Services




                             Solution




Kroll Background Screening              4
Publishing Batch Jobs as Web Services
Solution – Existing Technology


 Microsoft Access Database on a shared folder

 Access reports created to show summary data and exceptions

 Access queries used to retrieve integration files

 Data Copy/Pasted into Excel and saved as text files




Kroll Background Screening                                     5
Publishing Batch Jobs as Web Services
Solution

 Suite of Web Intelligence reports used for
            Summary Reporting
            Exception Reporting
 Develop a Data Integrator Batch Job (11.7.1.3) to Create the
   Integration Files and send to the destination share on the Finance
   server
 Publish the DI batch job as a Web Service

 Develop a web page in company enterprise web application to initiate
   the batch job
 Trigger email notification within Data Integrator to notify the operator
   that files have been generated without error
 Comply with security standards including SSL encryption and storing
   encrypted service account passwords

Kroll Background Screening                                                   6
Publishing Batch Jobs as Web Services




                             Data Integrator Feature
                             publishing jobs as web services




Kroll Background Screening                                     7
Publishing Batch Jobs as Web Services
Data Integrator Feature

 Data Integrator Publishes a WSDL (Web Services Definition
   Language) that allows batch jobs to be launched
 Utility methods are available from the web services by default (such as
   Ping method)
 Each published batch job is represented as a method

 Optional Settings
     – Security – secure sessions
         Log In / Log Out
     – Job Attributes
         System Configurations
         Recovery Flag




Kroll Background Screening                                                  8
Publishing Batch Jobs as Web Services
Data Integrator – Web Services Architecture

                                              WSDL Snippet




        Architecture




Kroll Background Screening                                   9
Publishing Batch Jobs as Web Services




                             Configuration




Kroll Background Screening                   10
Publishing Batch Jobs as Web Services
Configuration

 SSL Encryption

 User Setup

 Publish Job as Web Service

 Import WSDL into IDE (Visual Studio)

 Code Web Page to Call the Batch Job

 Integrate Web Page into Enterprise Web Application




Kroll Background Screening                             11
Publishing Batch Jobs as Web Services
Configuration – SSL Encryption

 Data Integrator Web Service
     – Deployed on Tomcat 5.x by Default

 Kroll Security Standards require SSL encryption
     – Create Cert Request and keystore using java keytool utility




Kroll Background Screening                                           12
Publishing Batch Jobs as Web Services
Configuration – SSL Encryption
Sample Keytool Syntax – Create Certificate Request
E:\Program Files\Business Objects\j2sdk1.4.2_08\bin>keytool -genkey -alias tomcat -keyalg RSA -
   keystore e:\cert\keystore.key -validity 730
Enter keystore password: changeit
Answer questions…..
Is CN=integration-test.baionline.net, OU=Kroll, O=Kroll, L=Nashville, ST=TN, C=US correct? yes
Enter key password for <tomcat>
      (RETURN if same as keystore password): changeit



Sample Keytool Syntax – Install Certificate Request in the Keystore


E:\Program Files\Business Objects\j2sdk1.4.2_08\bin>keytool -certreq -keyalg RSA -alias tomcat -
   file e:\cert\cert.req -keystore e:\cert\keystore.key

Enter keystore password: changeit




Kroll Background Screening                                                                         13
Publishing Batch Jobs as Web Services
Configuration – SSL Encryption

 Security Standards require SSL encryption
     – Get the request signed, either internal CSA or 3rd Party, VeriSign,
       etc.
     – Combine base64 root certificate and signed certificate




Kroll Background Screening                                                   14
    Publishing Batch Jobs as Web Services
    Configuration – SSL Encryption

     Security Standards require SSL encryption
         – Install the combined signed certificate into the keystore




E:\Program Files\Business Objects\j2sdk1.4.2_08\bin>keytool -import -alias tomcat -keystore e:\cert\keystore.key -
trustcacerts -file e:\cert\dataintegration.cer
Enter keystore password: changeit
Trust this certificate? [no]: yes
Certificate was added to keystore




    Kroll Background Screening                                                                                       15
    Publishing Batch Jobs as Web Services
    Configuration – SSL Encryption

     Security Standards require SSL encryption
         – Modify server_di.xml file


Uncomment the following from the server-di.xml file located at E:\Program Files\Business Objects\Data Integrator
11.7\ext\webserver\conf and add the keystore parameter
  <!->
  <Connector port="8443"
         maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
         enableLookups="false" disableUploadTimeout="true"
         acceptCount="100" debug="0" scheme="https" secure="true"
         clientAuth="false" sslProtocol="TLS"
     keystoreFile="e:\cert\keystore.key" KeystorePass="changeit"/>




    Kroll Background Screening                                                                                     16
    Publishing Batch Jobs as Web Services
    Configuration – SSL Encryption

     Security Standards require SSL encryption
         – Modify server.xml file
         – Restart Data Integrator Web Service (Tomcat)

Uncomment the following from the server.xml file located at E:\Program Files\Business Objects\Data Integrator
11.7\ext\webserver\conf and add the keystore parameter
  <!>

<Connector port="8443"
       maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
       enableLookups="false" disableUploadTimeout="true"
       acceptCount="100" debug="0" scheme="https" secure="true"
       clientAuth="false" sslProtocol="TLS" keystoreFile="e:\cert\keystore.key" KeystorePass="changeit"/>


Comment Out the following from the server.xml file located at E:\Program Files\Business Objects\Data Integrator
11.7\ext\webserver\conf
<!>
<!-- <Connector
port="8085"         maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
         enableLookups="false" redirectPort="8443" acceptCount="100"
         debug="0" connectionTimeout="20000"
         disableUploadTimeout="true" />




    Kroll Background Screening                                                                                    17
Publishing Batch Jobs as Web Services
Configuration – User Setup

 From Data Integrator Administrator
   https://<server_name>:8443/diAdmin/launch/logon.do
 Under Management…Users..Add the user name with type
   Administrator to be used as a service account
 Note on Security Limitations: LDAP is not supported, and
   Administrators can execute all batch jobs
 Communicate the password to the software development resource or
   equivalent




Kroll Background Screening                                           18
Publishing Batch Jobs as Web Services
Configuration – Publish Batch Job as Web Service

 From the Administrator console choose Web Services

 Click the Web Services Configuration tab

 Click the Add Batch Job… button

 Select the check box next to the batch job and click the buttons for
   Enable Session Security and Enable Job Attributes




Kroll Background Screening                                               19
Publishing Batch Jobs as Web Services
Configuration – Import WSDL into IDE

 Launch IDE (in this example, Visual Studio 2005)

 Add a Web Reference with WSDL URL
   – https://<site_name>:8443/diAdmin/servlet/webservices?ver1.1&wsdlxml




Kroll Background Screening                                                 20
Publishing Batch Jobs as Web Services
Configuration – Code the Web Page
 Code example to call the batch job method




Kroll Background Screening                    21
Publishing Batch Jobs as Web Services
Configuration – Integrate the Web Page
 New Link and page added to Company Web Application




Kroll Background Screening                             22
Publishing Batch Jobs as Web Services




                             Q&A




Kroll Background Screening              23