Sonnenglanz Consulting BV 28 September CPA Management Idea’s for large-scale deployments E.J. Van Nigtevecht Sonnenglanz Consulting BV
28 September Large scale deployments Principles (1) –Participants register (technical) information about their messaging capabilities. For instance: the URL of the ebMS endpoint, its public certificates or references to an LDAP containing that information, contact information, use of Intermediates, use of SSL-offloading, which ebMS version is supported, notification channels,... Let’s call this a participant profile. –Participants can have several channels by which the system (or other participants!) can notify that participant. Examples: SMTP, ebMS, Web-Application (via notification after a login), Web- Service. (The channels will have a predefined interface.) –Relationships between Business Processes, collaborating partners, and CPA’s (CPP, CPA-template as well) will be stored in the central registry to enable the (re-) creation of CPA’s at any time.
Sonnenglanz Consulting BV 28 September Large scale deployments Principles (2) –A Specification Authority is able to register business processes. –The Specification Authority defines how the business process can be used, such as: After Approval by the Specification Authority Between Collaborating Partners (for instance by signing the CPA; it’s the responsibility of the partner to validate the signature before engaging the collaboration!) –A system should generate the CPA, CPA-template or CPP, based on the information in the registry! –The creation of a CPA can be initiated by several events. Examples: “New Collaboration between participant A134 and B9082”, “CPA End-Data Reached for CPA ID ”, “New Certificate Participant XYZ” (due to an updated participant profile), etc...
Sonnenglanz Consulting BV 28 September Large scale deployments Principles (3) –Participants are identified by their partyId and partyIdType. –Participants have to be authenticated, allowing different methods depending on the access channel. Examples: ebMS messages: an organisation X.509 certificate web-access to the registry: an OpenID based on STORK level 2.STORK –Participants can ‘join’ and ‘leave’ collaborations based on predefined business processes. An approval phase should be possible, if required. –Participants can ‘initiate’ a collaboration by inviting others.
Sonnenglanz Consulting BV 28 September Determine Partner Information - Organisation - Name - Address - Phone numbers - - Party Id - Transport Capabilities (SMTP, HTTP) - Authentication & Transport Certificates (Public Keys) - Local Infrastructure (SSL-offloading, Intermediary,...) - Notification Channel Capabilities (SMTP, ebMS,...) Registry / Repository Partner Information Authenticate Partner Register Partner Profile Partner Registration Actor = Business Partner Partner Information Partner Information Partner Information
Sonnenglanz Consulting BV 28 September Define Business Process Provide an eBBP, containing - Business Process Identification - Services - Roles - Actions - Business Document Specifications -... Registry / Repository Business Process Authenticate Specifier Register Business Process Business Process Registration Actor = Specification Authority Business Process
Sonnenglanz Consulting BV 28 September Select Business Process - Search / Select Business Process - Provide Business Process Identification - Provide Selected Roles - Provide Selected Services (if needed) - Provide Selected Actions (if needed) -... Registry / Repository CPP Authenticate Partner Join Business Process Join Business Process Actor = Business Partner The relationship between - Business Partner - Business Process is registered to enable the automated update of CPA’s whenever needed. An approval phase by the Specification Authority could be included. Partner Information Business Process CPP += Partner Information Business Process CPP Selection
Sonnenglanz Consulting BV 28 September Select (Other) Partner(s) - Search / Select Business Process or CPP - Provide Business Process or CPP Identification - Provide Other Partner Identification 1 - Provide Other Partner Identification 2 - Provide Other Partner Identification 3 - Provide Selections (if needed)... Registry / Repository Authenticate Partner Initiate Collaboration Initiate Collaboration Actor = Business Partner or Specification Authority The relationship between the collaborating partners is registered to enable the automated update of CPA’s whenever needed. The other partners receive an invitation, which can be accepted by joining the Business Process or, in case they are already joined, by providing an explicit “Accept” response. Partner Information Business Process Partner Information Selection
Sonnenglanz Consulting BV 28 September Event “Initiate Collaboration” Registry / Repository Determine Partners Send Invitations Invite Partners Actor = Coordinator Partner Information Business Process Partner Information Selection On Event “Initiate Collaboration”: - Determine Business Process or CPP Identification - Determine Partners and corresponding Invitation Channels - Determine Selections (if needed) - Create Invitations - Set Timing Contraints - Send Invitations via Channels...
Sonnenglanz Consulting BV 28 September Event “Invitation” - Search / Select Collaboration Invitation (for instance: a link in an ....) - Provide Accept/Reject status - Provide Selected Roles (if needed) - Provide Selected Services (if needed) - Provide Selected Actions (if needed) - Create Invitation Response... Registry / Repository CPA Authenticate Partner Invitation Response Accept Collaboration Actor = Business Partner On acceptance, the Partner Information is used to create the CPP (or select, if already available). The CPA’s are derived and distributed to the partners (including the initiator) by the Coordinator. += CPP 1CPP 2CPA Selection
Sonnenglanz Consulting BV 28 September Accept CPA - Search / Select CPA’s - Specify Trusted Partners - Retrieve CPA’s - Configure ebMS Adapter... Registry / Repository CPA Authenticate Partner Retrieve and Validate CPA Accept CPA Actor = Business Partner CPA’s are retrieved and processed by the local partner to enable the ebMS adapter. CPA Configure ebMS Adapter
Sonnenglanz Consulting BV 28 September Create Updated Profile - Search / Select Partner Information Specify changes, for example - Provide Changed Certificate(s) and/or - Provide Changed URL and/or - Provide Change Party Id and/or... Registry / Repository CPA Authenticate Partner Update Partner Profile Initiate Update Actor = Business Partner On acceptance, new CPA’s are derived and distributed to the partners (including the initiator) whenever needed. An update could also be initiated by the Coordinator for instance when a CPA becomes invalid due to the “End Data” attribute. += CPP 1CPP 2CPA Selection Partner Information
Sonnenglanz Consulting BV 28 September Registry / Repository CPA Partner Information Business Process Partner Information CPA CPP Business Process Partner Information Partner Information Partner Information Partner Information Registry / Repository Selection
Sonnenglanz Consulting BV 28 September = CPP 1CPP 2CPA Partner Information Business Process += CPP Partner Information Business Process ++ CPA Partner Information = Selection CPA Creation Selection
Sonnenglanz Consulting BV 28 September Reg/Rep Partner Information Distibute CPA to... Publish GP Partner Information GP Partner Information GP Business Process GP Join Business Process GP Request CPA with... CPA Publish GP Join Business Process Create CPA
Sonnenglanz Consulting BV 28 September Registry / Repository Coordinator Partner B Specifier Partner A (5) Event “Initiate Collaboration” (3) Register Business Process (1) Register Partner (2) Register Partner (4) Initiate Collaboration (6) Inviate Collaboration (7) Invitation Response (8) Event “Finish Collaboration” (9) CPA Created (9) CPA Created (10) Accept CPA (11) Accept CPA
Sonnenglanz Consulting BV 28 September Registry / Repository Coordinator Partner B Specifier Partner A (1) Event “CPA End Date Reached” Or “Partner Information Changed” (2) Update Collaboration (5) Accept CPA (4) Accept CPA (3) Update Collaboration