This document describes the technical installation for N2N’s integration of the Coursedog project for Integration with PeopleSoft Campus Solutions APIs. These web service APIs facilitate read-only access on the academic catalog and schedule of classes.
Note: This document and the PeopleSoft App Designer projects will be updated in the near future to include additional POST operations for course and class components. This current version only includes the "GET" operation that N2N will use to extract data from the PeopleSoft system.
If you have any questions the following people can be contacted
Bhaskar Darbha - N2N Project Manager - firstname.lastname@example.org
High-Level Technical Approach
N2N uses HTTPS PeopleSoft Service Operations (aka Web Services) via Integration Broker to read data. All data is exchanged over HTTPS. No other connection methods are required.
During this installation process, N2N delivers several “bolt-on” PeopleSoft service operations and their associated PeopleSoft objects. There is a listing of objects included in this document. This does NOT involve customizing delivered PeopleSoft objects. These are all new objects that are stand-alone. These objects will be maintained by N2N. There should be no impact on your standard production patching and upgrades. These APIs are coupled to the Illuminate Platform. We ask that the client not modify any of these web services as it will have negative impacts on the integration.
Installation and Testing Overview
Choose a non-production database that will be used for testing
Import the PeopleSoft Application project into the target database.
Configure required security
Whitelist N2N servers to connect to the integration gateway web server
Provide URL to N2N to connect to the gateway
N2N and Coursedog will test the integrations
You will be delivered 2 seperate projects that MUST be installed in this order.
This project contains an integration broker node. We don't add this to the main project as importing this in subsequent updates can override the password or change the OPRID attached that may get modified by the client.
This is the main code project.
The zipped Application Designer projects can be downloaded from this temporary share: https://www.icloud.com/iclouddrive/0izVhadx6JLE8Awu5ZqmtNCxg#N2N_COURSEDOG_CUNY_2020-02-20
Import the PeopleSoft Application designer project into the target database.
Application Designer Project Name: N2N_COURSEDOG_NODE
Review the Application Designer Output window to ensure there were no warnings or errors. If there are any messages please take a screenshot and email it to the "contacts" at the top of this document.
Application Designer Project Name: N2N_COURSEDOG_GET_V1
Please build tables & views
Please "compile all project PeopleCode" (Application Designer: Tools → Compile all Project PeopleCode).
Please ensure there are no compile errors or warnings
If there are any errors please take a screenshot and send them to the "contacts" at the top of this document.
Run the provided DMS script which will load a default "whitelist" of tables that we are allowed to read. (Record:N_DE_WHITELIST)
Please run the following SQL Script which will default some values into the "whitelist" table that was imported with this project.
insert into PS_N_DE_WHITELIST VALUES ('ACAD_GROUP_TBL');
insert into PS_N_DE_WHITELIST VALUES ('BLDG_TBL');
insert into PS_N_DE_WHITELIST VALUES ('CAMPUS_TBL');
insert into PS_N_DE_WHITELIST VALUES ('CLASS_ASSOC');
insert into PS_N_DE_WHITELIST VALUES ('CLASS_CHRSTC');
insert into PS_N_DE_WHITELIST VALUES ('CLASS_INSTR');
insert into PS_N_DE_WHITELIST VALUES ('CLASS_MTG_PAT');
insert into PS_N_DE_WHITELIST VALUES ('CLASS_NOTES');
insert into PS_N_DE_WHITELIST VALUES ('CLASS_PRMSN');
insert into PS_N_DE_WHITELIST VALUES ('CLASS_TBL');
insert into PS_N_DE_WHITELIST VALUES ('CMPNT_CHRSTC');
insert into PS_N_DE_WHITELIST VALUES ('CRSE_ATTENDANCE');
insert into PS_N_DE_WHITELIST VALUES ('CRSE_ATTR_TBL');
insert into PS_N_DE_WHITELIST VALUES ('CRSE_ATTR_VALUE');
insert into PS_N_DE_WHITELIST VALUES ('CRSE_ATTRIBUTES');
insert into PS_N_DE_WHITELIST VALUES ('CRSE_CATALOG');
insert into PS_N_DE_WHITELIST VALUES ('CRSE_COMPONENT');
insert into PS_N_DE_WHITELIST VALUES ('CRSE_OFFER');
insert into PS_N_DE_WHITELIST VALUES ('CRSE_TOPICS');
insert into PS_N_DE_WHITELIST VALUES ('FACILITY_TBL');
insert into PS_N_DE_WHITELIST VALUES ('GRADE_TBL');
insert into PS_N_DE_WHITELIST VALUES ('GRADESCHEME_TBL');
insert into PS_N_DE_WHITELIST VALUES ('GRD_BASE_CHOICE');
insert into PS_N_DE_WHITELIST VALUES ('INSTITUTION_TBL');
insert into PS_N_DE_WHITELIST VALUES ('INSTRUCT_MODE');
insert into PS_N_DE_WHITELIST VALUES ('LOCATION_TBL');
insert into PS_N_DE_WHITELIST VALUES ('MILESTONE_TBL');
insert into PS_N_DE_WHITELIST VALUES ('PSXLATITEM');
insert into PS_N_DE_WHITELIST VALUES ('ROOM_CHRSTC_TBL');
insert into PS_N_DE_WHITELIST VALUES ('RQ_GRP_TBL');
insert into PS_N_DE_WHITELIST VALUES ('SESSION_TBL');
insert into PS_N_DE_WHITELIST VALUES ('SSR_CRS_MILESTN');
insert into PS_N_DE_WHITELIST VALUES ('STND_MTGPAT_TBL');
insert into PS_N_DE_WHITELIST VALUES ('SUBJECT_TBL');
Setup security in steps below.
The security defined in this section can be configured differently based on your institution's security naming standards. We provide the following security setup as a recommendation. These instructions assume you are following the N2N security. If you are following a different path then any questions can be directed at the "contacts" listed in this document. As a general rule, we ask that you follow these instructions during the initial installation in a development instance. Then work out your client security during testing.
Security Setup for Integration Layer
The following section contains manual configuration steps needed to configure PeopleSoft security and the final node configuration.
A new permission list is installed in this project called N_N2N_COURSEDOG_NODE The permission list only has access to the service operations we are delivering.
There will be some component interfaces and additional web services added in the near future.
Create a new role called: N_ILLUMINATE_NODE - (We have this role referenced in the application designer project but roles do not export to a file in application designer.)
Description: N2N Illuminate Node User
Grant this permission list: N_N2N_COURSEDOG_NODE.
This role should have no other permission list.
Create a PeopleSoft OPRID that will be attached to the integration broker node that N2N delivers. The node name included in the project is N_ILLUMINATE. No one should ever be logging in as this OPRID. This is the OPRID that all code will run under. It should not have a password and should not have any weblibs which would grant PIA access.
Create OPRID: N_ILLUMINATE_NODE
Primary Permission List: For this phase, this value does not matter. It can be left blank.
Row Security Permission List: For the Finish Faster phase, this value does not matter. It can be left blank.
Process profile Permission List: For this phase, this value does not matter. It can be left blank.
Add role N_ILLUMINATE_NODE
Password: None - do NOT enter Password. Authentication is performed using a node password.
ID Type = "none"
As part of the project imported, an Integration Broker Node called N_ILLUMINATE was included. The node should have been imported with a password that is already known to N2N as the OPRID: N_ILLUMINATE_NODE is already configured on it. It can be changed by your security team if you have some secure method of transmitting long complex passwords.
Security Setup For Super User
In the project, we are delivering a permission list called: N_DATA_EXPORT_SETUP. This is intended for an end user who will be a "super user" for the project. It grants access to a custom page that allows "whitelisting" of records that can be queried.
This permission list can be deleted if you want to incorporate those permissions into your existing security setup.
The N2N Servers will connect to the PeopleSoft "Integration Gateway" for communication with the PeopleSoft integration broker. You will need to expose the integration gateway host to a whitelist IP range representing the N2N network. This exact process may vary between institutions.
N2N Network IP Range to Whitelist:
N2N will need to be provided with the Integration Broker external URLs
External URL to address the Test Campus Solution Integration broker.
External URL to address the Production Campus Solution Integration broker.
Information CUNY must Provide to N2N
Please provide a screenshots of the node configuration
PeopleTools → Integration Broker → Integration Setup → Nodes
Pages "Node Definition" and "Routings"
The name of the "default local node" in the target database. Oracle delivers "PSFT_CS" as the default but this can be configured differently at each college.
URL of the Integration broker. This should be an "external" URL that will resolve to your integration broker. The illuminate platform is cloud hosted. So the URL needs to resolve in your internet facing DNS.
PeopleSoft Objects Included
Below is a listing of objects that will be imported with this project.
Message Node: N_ILLUMINATE
Field: N_ROW_LIMIT DEFAULT
Component: N_DE_WHITELIST GBL
SQL Object: N_LOG_DETAIL 2
SQL Object: N_LOG_HDR 2
Message Definition: N_GENERIC_REQUEST
Permission List: N_DATA_EXPORT_SETUP
Permission List: N_N2N_COURSEDOG_NODE
Portal Registry Structure: EMPLOYEE C N_DE_WHITELIST
Portal Registry Structure: EMPLOYEE F N_SETUP_FOLDER
Application Package: N_DATA_EXPORTER N_DATA_EXPORTER .
Application Package: N_UTILITIES N_UTILITIES .
Application Package: V2 N_UTILITIES :
Application Package: dataExport N_DATA_EXPORTER :
Application Package PeopleCode: N_DATA_EXPORTER dataExport constants
Application Package PeopleCode: N_DATA_EXPORTER dataExport dataExportHandler
Application Package PeopleCode: N_UTILITIES Field
Application Package PeopleCode: N_UTILITIES IBUtilities
Application Package PeopleCode: N_UTILITIES Record
Application Package PeopleCode: N_UTILITIES V2 psoftToXML
Application Package PeopleCode: N_UTILITIES XMLParseHelper
Application Package PeopleCode: N_UTILITIES psoftToXML
Service Operation: N_DATA_QUERY
Service Operation Handler: N_DATA_QUERY REQUESTHDLR
Service Operation Version : N_DATA_QUERY v1
Service Operation Routing: N_DATA_QUERY 1900-01-01