Skip to content
This repository has been archived by the owner on May 12, 2021. It is now read-only.

3 day Hackathon

Matthew Hall edited this page Mar 28, 2018 · 21 revisions

Hypothesis

If we get a team together that has expert knowledge on the topic of WebADE and the ISSS Document Management System, and come together in the same room, working on the problem for three solid days, we should be able to achieve the following objectives

Objectives

  1. Answer the questions,

    "is it possible for us to connect to the ISSS services from an application deployed in Openshift", and
    "is it recommended?"

  2. Identified documentation gaps will be addressed to improve the experience for future teams
  3. If the ISSS to OpenShift connection is possible and recommended, then make a plan to build out a DMOD microservice that can be reused by future development teams who have the requirements for document management
  4. If we are not successful we need to identify what is blocking the solution and take steps to remove any barriers
  5. If required, prepare recommendations for interim solutions to achieve document management requirements for applications running in OpenShift

Results

On Day 1 we spent from 9am to 2pm discussing what we were trying to accomplish from a technical perspective. We took the list of identified backlog items, e.g. "control the permissions for who can upload a document", and broke down exactly what WebADE requires, and what our OpenShift application would have to do to interact with WebADE. We all came to a common understanding that we needed to

  1. setup the DMOD application in WebADE with a Client ID for the front end and the back end of the application
  2. identify the necessary roles and permissions users would need to be granted in DMS
  3. create the NRS/DMOD/ folder in WCC and configure it with the roles that can be assigned to users
  4. do an siteminder login and get a message back from WebADE containing the permissions that the user has
  5. take that message and send it from the application running in the browser (on a user's computer), back to the server side application
  6. have the server side application, when sending a request to the Document Management system, use that message (the User Token) packaged into an Authorisation Bearer Token which tells the DMS that the DMOD application is allowed to send a user token and make a request to perform an action (execute an API call to an API Endpoint)
  7. embed the Authorisation Bearer Token in the calls to the DMS API
  8. call on DMS to open the Authorisation Bear Token and confirm that DMOD has permission to make the request, then looks at the User Token and confirms that the user has the appropriate role for the request (or action) that was made, and that they have permission to access the document folder that they are requesting a file from
  9. configure the user interface to use the siteminder login method and retrieve the User Token

From 2pm onward on Day 1 we began development of the top three priorities, and by the end of day three we had completed the majority of the work and started on the rest.

Overview

In our 3 day hackathon we have proven that Openshift applications can successfully connect to WebADE and retrieve a users' roles and permissions. We have also successfully completed requests to the Document Management System and seen the scope of actions that should be allowed. The microservice supports IDIR and BCEID users who have been granted the appropriate role.

Next steps are to produce a re-useable template for other projects to utilize and further improve the documentation.

Other ISSS components should also be possible.

Clone this wiki locally