Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Current »

Related: 

1 Introduction

HSI-DataSync-TCS, is a Spring Boot application that is responsible for providing one way synchronization of data from CSIS to Salesforce.

Despite being a Spring Boot application, the build is configured to produce a .ear file: hsi-datasync-tcs.ear

2 Configuration

2.1 Data Source

In WebSphere console, set up the following WebSphere variable:

  • ORACLE_JDBC_DRIVER_PATH, in most case it should use /opt/IBM/JDBC
  • Upload the ojdbc8.jar to folder

Create a JDBC Provider for Oracle.

  • Create a new JDBC Provider: Oracle JDBC Provider 8, to distinguish the older version of ojdbc6

Add data source using the new Oracle JDBC Provider 8
Current Oracle Database applied secure connecting, the port 1521 is disabled, details setup please check: HSI WebSphere ssl Connect to Oracle (TCS)

NameCSIS(Expired)
JNDI Namejdbc/csis
Hostname

dbdev.csd.toronto.ca  (DEV)

dbqa.csd.toronto.ca (QA)

csis2.csd.toronto.ca (Prod)


Userhsiusrcsisweb
Password

DEV: csisontheweb

QA: csisontheweb

PROD: Check with database administrator


Database

CSISDV  (dev)

TCSLINKEXT(qa)

? (Prod)

CSISDV  (dev)

CSISQA (qa)

V9PROD (Prod)

URLDEV: jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST= dbdev.csd.toronto.ca)(PORT=1528))(CONNECT_DATA=(SERVICE_NAME=CSISDV)))Dev:    jdbc:oracle:thin:@//dbdev.csd.toronto.ca:1521/CSISDV

QA: jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST= dbqa.csd.toronto.ca)(PORT=1528))(CONNECT_DATA=(SERVICE_NAME= TCSLINKEXT)))QA:    jdbc:oracle:thin:@//dbqa.csd.toronto.ca:1521/CSISQA


PROD: jdbc:oracle:thin:@//csis2.csd.toronto.ca:1521/V9PROD


2.2   Enable Java Assertion Capability

In WAS admin console, navigate the page: Servers -> Server Types -> WebSphere Application Servers -> click the server of HSI-Intranet -> on Configuration tab -> Java and Process Management -> Process definition -> Java Virtual Machine -> Generic JVM arguments, add an entry as  -ea.


2.3 WAS App Server System Properties

In WAS admin console, navigate to: Servers -> Server Types -> WebSphere Application Servers -> click the server of RGI -> on Configuration tab -> Java and Process Management -> Process definition -> Java Virtual Machine -> Custom properties. Define following properties.


Name
DEV/(new sandbox )
QA
PROD
app.log.home/inet/webas/logs/Children-Internet

app.log.levelDEBUG

env.id

DEV 

QAPROD

hsi.datasync.auth.base-url

https://was-intra-qa.toronto.ca

https://was-intra-qa.toronto.ca

https://insideto-secure.toronto.ca

hsi.salesforce.oauth.base-url

https://test.salesforce.com

https://test.salesforce.com

https://login.salesforce.com

hsi.salesforce.oauth.client-id /Consumer key

3MVG98im9TK34CUU_AvwaugYPyNTgDM7Z0_nEWBEbmp0rZ8NTo8MET2qszEja4IabBoEAy9cHQovTYwxPB8TE

/3MVG9oZtFCVWuSwOvwwAVjUooDZss_SlAK3joZPCVjPz1JGDL5FHkmdBqWMsuT7yZItmvs_rPPCjix6pxZluH
/3MVG9XmM8CUVepGZDLbd5VPlTkzMHG.vpqCB4kL7Rsjrc4aI_6NkUKnry6R0V2ij3ALGNAoTuvaE2oSSGxuaw

/3MVG9Z8h6Bxz0zc4NWhTFhzYWdsDqjL2hAjXCDnNHK6GYDbRTX2gIh2NuZHT4kwD148ERF04EYuGa0IzssvGn

3MVG9_I_oWkIqLrl7h.HM0nqegTxG0ne42d3TL10BuZ8mH5RUgrrJKpIVgI9nRbqTWa_oRhONh0rbSyxjD5XA
/3MVG9oZtFCVWuSwOvwwAVjUooDR7FeVXwPQTuWVwiKcLDMsH1wd.v6h6e3U58yE65LCUc3Vds35Pu5Lbl9BUZ

/3MVG9Xjf0O2Peyd4c9yGxm_oM6gkZ2dPO.o.NuyR1yiC8NxCCfPERUdY.MNXgsoLR_s2DPQMzeh_TsP_upjGO

3MVG9CEn_O3jvv0y4aRSakzzOvRbhrZJpUQkvh_C3FQu13fcwOIzwLKeDKY9E3YH_SA_EH8sLf0aFu7st_UUO

hsi.salesforce.oauth.user-id

hsi.integration@toronto.ca.dev06
hsi.integration@toronto.ca.hsidev03

/hsi.integration@toronto.ca.hsidev07

hsi.integration@toronto.ca.qa01

hsi.integration@toronto.ca
hsi.salesforce.record-type.parent0121h0000004kgaAAA
/0126A000000yrPjQAI
0126A000000yrPjQAI0126A000000yrPjQAI
hsi.salesforce.record-type.child012W000000016sEIAQ
/0123s000000aJkPAAU

0123s000000aJkPAAU
/0124F0000002v9MQAQ

0123s000000aJkPAAU

2.4 Proxy configuration for outbound API calls

In order to make outbound API calls to salesforce, we must define a proxy.

-Dhttp.proxyHost=proxy.toronto.ca

-Dhttp.proxyPort=8080

-Dhttps.proxyHost=proxy.toronto.ca

-Dhttps.proxyPort=8080

-Dhttp.nonProxyHosts=insideto-secure.toronto.ca (Use the value defined for: datasync.auth.base-url for the corresponding env, host name only)


2.5 JVM Heap Size

Initial: 512MB

Max: 2048MB

3 KeyStore and Certificates

3.1 Setup Trust Store in WebSphere Admin Console

Please import these certificates into WebSphere DefaultCellTrustStore

3.2  Create a new key store through WAS console

  • Security > SSL certificate and key management > Key stores and certificates > New
  • Name: DatasyncKeyStore
  • Management scope: Choose the cluster where the app is deployed, PLEASE REPLACE THE ${CONFIG_ROOT}  AND ${CELL}  WITH THE REAL VALUE FOR CONTAINER FOLDER OR CREATE VARIABLES FOR THEM
    • Prod: ${CONFIG_ROOT}/cells/${CELL}/DatasyncKeyStore.p12
    • WSQA: ${CONFIG_ROOT}/cells/wsQACell01/DatasyncKeyStore.p12
    • WSDEV: ${CONFIG_ROOT}/cells/wsDVCell01/DatasyncKeyStore.p12
    • QA: ${CONFIG_ROOT}/cells/${CELL}/DatasyncKeyStore.p12
    • DEV: ${CONFIG_ROOT}/cells/${CELL}/DatasyncKeyStore.p12
    • Local: depends on naming of cell. E.g. ${CONFIG_ROOT}/cells/M4XD0143252Node01Cell/DatasyncKeyStore.p12

  • Password: WebAS in DEV and QA, <a secure password> in production
  • Type: PKCS12



3.3 Create new Key Set in WAS Console

  • Security > SSL certificate and key management > Key sets > New
  • Key set name: SalesforceAuthKeySet
  • Key alias prefix name: salesforceauthkey
  • Key Password: WebAS in DEV and QA, <a secure password> in production
  • Key store: DatasyncKeyStore


3.4 Create a Key Alias

  • SSL certificate and key management > Key sets > SalesforceAuthKeySet > Active key history > Add key alias reference
  • Alias reference: salesforceauthkey
  • Key password: WebAS in DEV and QA, <a secure password> in production (same password as step 1 and 2)

3.5 Create a Self-Signed Certificate

  • SSL certificate and key management > Key stores and certificates > DatasyncKeyStore > Personal certificates > Create > Self Signed Certificate
  • Alias: salesforceauthkey
  • Signature algorithm: SHA256withRSA
  • Key size: 2048 bits
  • Common name: SalesforceAuth
  • Validity: 760 days
  • Org: City of Toronto
  • Org Unit: Children Services
  • Toronto
  • Ontario
  • CA

3.5 Extract Certificate

  • SSL certificate and key management > Key stores and certificates > DatasyncKeyStore > Personal certificates
  • Check off salesforceauthkey
  • Extract...
  • Choose
    • /tmp/salesforceauth.cer or c:/temp/salesforceauth.cer
    • Base64-encoded ASCII data

*** The extracted .cer file will need to be uploaded to the Salesforce App configuration page. Please forward this file to Snehal Surti (Unlicensed)

  • No labels