Consuming Secure Services (PO/PA)
Secure Services were introduced in v3.1 of PO & PA
Purpose
To inform our clients (consumers) how to connect to and consume our secure services.
Prerequisites
- Install caGrid v1.3 locally, http://cagrid.org/display/downloads/caGrid+1.3+Installation+Quick+Start. If you intended to use the Demo or Integration tiers or a local deployment inside the NIH firewall you should use the Stage Grid; for local deployments outside the firewall, you should use the Training Grid.
- Obtain a grid credential (or Dorian User Account) for the grid trust fabric needed. See http://cagrid.org/display/cagrid13tutorials/Create+User+Account for instructions.
- Record your grid credential (aka Grid Identity) for later use. An example for the training grid is:
An example for the stage grid is:
/O=caBIG/OU=caGrid/OU=Training/OU=Dorian/CN=coppagridtest
/O=caBIG/OU=caGrid/OU=Stage LOA1/OU=Dorian/CN=coppagridtest
- Add your own Grid Identity to PO and/or PA to authenticate.
HOW-TO
Each day before you start using the services, you'll need to Login to Dorian using the GAARDS UI to extend your local grid identity certificates. They are valid for no more than 12 hours.
- Lauch GAARDS-UI and login using your CN (matyass) from your Grid Identity (e.g. /O=caBIG/OU=caGrid/OU=Training/OU=Dorian/CN=matyass)
Launch GAARDS-UI (ant security)
steve-matyass-macbook-pro-2:cagrid smatyas$ pwd /Users/smatyas/dev/cagrid/caGrid steve-matyass-macbook-pro-2:caGrid smatyas$ ant security ...
- Click Login button and specify the following:
Specify Login Credentials
Credential Provider: Training Organization: Training Username: matyass Password: *********
- Click Login button and specify the following:
- Proceed to consuming PO or PA services as normal now by invoking the APIs.
Consuming Unsecured Services (PO/PA)
Unsecure Services were available prior to v3.1 of PO & PA
If you just want to call the services, you can use a tool like SoapUI to generate XML from the WSDLs listed below (which is what QA does). To get more involved, you can use the sample java code in coppa/code/po-grid/src/gov/nih/nci/coppa/services/entities /ServiceName/client/ServiceNameClient.java. There are similar clients for PA under coppa/code/pa-grid.
The grid services are ISO 21090 compliant. To construct valid XML messages to send to the services, you should be familiar with the spec, available at https://wiki.nci.nih.gov/display/EAWiki/ISO+21090+Data+Types (ISO_21090_20080317.zip). Also read the PIMs (platform independent models) for 21090 and the PersonService available at https://gforge.nci.nih.gov/svnroot/coppa/trunk/documents/analysis_and_design/.
PO Services
The PO services on the Integration tier are only available from within the NIH firewall, while the services on the Demo tier are accessible outside the firewall.
Service Endpoints - 3.0
Integration tier base URL: http://ctms-services-po-3-0-integration.nci.nih.gov/
Demo tier base URL: http://ctms-services-po-3-0-demo.nci.nih.gov/
<Base URL>/wsrf/services/cagrid/Person
<Base URL>/wsrf/services/cagrid/Organization
<Base URL>/wsrf/services/cagrid/ClinicalResearchStaff
<Base URL>/wsrf/services/cagrid/HealthCareFacility
<Base URL>/wsrf/services/cagrid/HealthCareProvider
<Base URL>/wsrf/services/cagrid/IdentifiedOrganization
<Base URL>/wsrf/services/cagrid/IdentifiedPerson
<Base URL>/wsrf/services/cagrid/OrganizationalContact
<Base URL>/wsrf/services/cagrid/OversightCommittee
<Base URL>/wsrf/services/cagrid/ResearchOrganization
Service Endpoints - 3.1 (access requires grid credentials)
Integration tier base URL: https://ctms-services-po-3-1-integration.nci.nih.gov:19543/
Demo tier base URL: https://ctms-services-po-3-1-demo.nci.nih.gov:19543/
<Base URL>/wsrf/services/cagrid/Person
<Base URL>/wsrf/services/cagrid/Organization
<Base URL>/wsrf/services/cagrid/ClinicalResearchStaff
<Base URL>/wsrf/services/cagrid/HealthCareFacility
<Base URL>/wsrf/services/cagrid/HealthCareProvider
<Base URL>/wsrf/services/cagrid/IdentifiedOrganization
<Base URL>/wsrf/services/cagrid/IdentifiedPerson
<Base URL>/wsrf/services/cagrid/OrganizationalContact
<Base URL>/wsrf/services/cagrid/OversightCommittee
<Base URL>/wsrf/services/cagrid/ResearchOrganization
<Base URL>/wsrf/services/cagrid/Business
WSDLS
The WSDLs can be accessed by appending ?wsdl to the service endpoints
XSDs
The XSDs are available at <base URL>/wsrf/share/schema/CoreServices/CoppaPO.xsd for each tier and version.
All types not defined by that XSD are from the ISO 21090 spec.
Service Methods
A list of service methods on the integration tier can be seen at <base URL>/wsrf/services, broken down by service end point; the relevant service endpoints are prefixed by "cagrid/"
PA Services
The PA services are only available from within the NIH firewall.
Service Endpoints - 3.0
Integration tier base URL: http://ctms-services-pa-3-0-integration.nci.nih.gov/
Demo tier base URL: http://ctms-services-pa-3-0-demo.nci.nih.gov/
<Base URL>/wsrf/services/cagrid/ArmService
<Base URL>/wsrf/services/cagrid/DocumentService
<Base URL>/wsrf/services/cagrid/DocumentWorkflowStatusService
<Base URL>/wsrf/services/cagrid/PlannedActivityService
<Base URL>/wsrf/services/cagrid/StudyContactService
<Base URL>/wsrf/services/cagrid/StudyDiseaseService
<Base URL>/wsrf/services/cagrid/StudyIndldeService
<Base URL>/wsrf/services/cagrid/StudyOnholdService
<Base URL>/wsrf/services/cagrid/StudyOutcomeMeasureService
<Base URL>/wsrf/services/cagrid/StudyOverallStatusService
<Base URL>/wsrf/services/cagrid/StudyParticipationContactService
<Base URL>/wsrf/services/cagrid/StudyParticipationService
<Base URL>/wsrf/services/cagrid/StudyProtocolService
<Base URL>/wsrf/services/cagrid/StudyRecruitmentStatusService
<Base URL>/wsrf/services/cagrid/StudyRegulatoryAuthorityService
<Base URL>/wsrf/services/cagrid/StudyRelationshipService
<Base URL>/wsrf/services/cagrid/StudyResourcingService
<Base URL>/wsrf/services/cagrid/StudySiteAccrualStatusService
Service Endpoints - 3.1 (access requires grid credentials)
Integration tier base URL: http://ctms-services-pa-3-1-integration.nci.nih.gov:19343/
Demo tier base URL: http://ctms-services-pa-3-1-demo.nci.nih.gov:19343/
<Base URL>/wsrf/services/cagrid/ArmService
<Base URL>/wsrf/services/cagrid/DocumentService
<Base URL>/wsrf/services/cagrid/DocumentWorkflowStatusService
<Base URL>/wsrf/services/cagrid/PlannedActivityService
<Base URL>/wsrf/services/cagrid/StudyContactService
<Base URL>/wsrf/services/cagrid/StudyDiseaseService
<Base URL>/wsrf/services/cagrid/StudyIndldeService
<Base URL>/wsrf/services/cagrid/StudyOnholdService
<Base URL>/wsrf/services/cagrid/StudyOutcomeMeasureService
<Base URL>/wsrf/services/cagrid/StudyOverallStatusService
<Base URL>/wsrf/services/cagrid/StudyParticipationContactService
<Base URL>/wsrf/services/cagrid/StudyParticipationService
<Base URL>/wsrf/services/cagrid/StudyProtocolService
<Base URL>/wsrf/services/cagrid/StudyRecruitmentStatusService
<Base URL>/wsrf/services/cagrid/StudyRegulatoryAuthorityService
<Base URL>/wsrf/services/cagrid/StudyRelationshipService
<Base URL>/wsrf/services/cagrid/StudyResourcingService
<Base URL>/wsrf/services/cagrid/StudySiteAccrualStatusService
WSDLS
The WSDLs can be accessed by appending ?wsdl to the service endpoints
XSDs
<base URL>/wsrf/share/schema/PAServices/CoppaCommons.xsd
<base URL>/wsrf/share/schema/PAServices/CoppaCommonsFaults.xsd
<base URL>/wsrf/share/schema/PAServices/CoppaPA.xsd
<base URL>/wsrf/share/schema/PAServices/CoppaPAFaults.xsd
<base URL>/wsrf/share/schema/PAServices/ISO_datatypes_Narrative.xsd
<base URL>/wsrf/share/schema/PAServices/CoppaPAFaults.xsd
Service Methods
A list of service methods on the integration tier can be seen at <base URL>/wsrf/services, broken down by service end point; the relevant service endpoints are prefixed by "cagrid/"