199 Lotus blogs updated hourly. Who will post next? Home | Blogs | Search | About 
 
Latest 7 Posts
MWLUG 2017 - Domino Application Development Roundtable
Thu, Jul 20th 2017 77
MWLUG 2017 Agenda and the Future
Thu, Jul 13th 2017 17
MWLUG 2017 Sessions and More
Thu, Jun 29th 2017 8
IBM Domino Application Transformation Jumpstart Workshop at MWLUG 2017 on Tuesday, August 8, 2017
Thu, Jun 8th 2017 7
Dave Navarre Welcomes you to MWLUG 2017 and Washington DC
Thu, Jun 8th 2017 6
New Presentation Track for MWLUG 2017, Watson Work
Fri, May 26th 2017 2
MWLUG 2017 Abstract Submission deadline extended to June 2, 2017, 6:00 pm CST
Fri, May 26th 2017 7
Top 10
MWLUG 2017 - Domino Application Development Roundtable
Thu, Jul 20th 2017 77
MWLUG 2017 Agenda and the Future
Thu, Jul 13th 2017 17
Announcing MWLUG 2016 Opening General Session Guest Speaker
Wed, Jun 8th 2016 9
Data Binding and React with Dojo
Mon, Apr 24th 2017 8
MWLUG 2017 Sessions and More
Thu, Jun 29th 2017 8
Announcing the MWLUG 2016 OGS IBM Speaker
Tue, Jul 19th 2016 7
Creating Beauty with UglifyJS
Thu, Jan 26th 2017 7
MWLUG 2017 Abstract Submission deadline extended to June 2, 2017, 6:00 pm CST
Fri, May 26th 2017 7
IBM Domino Application Transformation Jumpstart Workshop at MWLUG 2017 on Tuesday, August 8, 2017
Thu, Jun 8th 2017 7
Don't Get Disconnected with Connect
Mon, Mar 31st 2014 6


Our Adventures into Creating a Secure MVC Framework - Prologue
Twitter Google+ Facebook LinkedIn Addthis Email Gmail Flipboard Reddit Tumblr WhatsApp StumbleUpon Yammer Evernote Delicious
   

Now that MWLUG 2015 is history and MWLUG 2016 is in the planning stage, I can now start writing a series that I have wanted to do for awhile about creating a MVC framework.

This will a multi-part series on my adventure into creating my own MVC framework.  I will be talking about MVC in the generic sense and it will include MV* of all types.

Creating your own MVC framework? Am I out of my mind? Why in the world would you do that you may ask. There are so many popular and great MVC frameworks available including Angular, Backbone, Ember, React, and etc.

Well, SECURITY, SECURITY, SECURITY.

When we rolled out iPhora Touch v2 just before MWLUG 2014, the feedback for the interface was lukewarm at best, it was slow since the page had to be refreshed each time and it did not work well on tablets and other devices.  Though we were using Bootstrap the interface it just would not respond the way that we wanted.

So after MWLUG 2014, I set out to figure out a way to improve the design so that it would be faster, more responsive, and easier to maintain.  The previous UI framework was built using Dojo 1.53 which needed a significant amount of Javascript to be loaded before the page would initialize.  So moving forward we wanted a AMD JavaScript framework to reduce the loading time.

We want to provide a simple and usable user interface for our iPhora solutions that would work for both desktop and tablets.  In our iPhora technology, the UI is totally decoupled from the server and there is a total separation between the data and the form.  We have never been a big fan from having the server generate the HTML interface. That approach requires you to couple the data with the UI. By decoupling the data and UI, what technology is used to generates the data is irrelevant. Currently, it is Domino, but it could easily be a combination of other propriety or open source technologies.  All information is sent and received through a series of JSON RESTful APIs that is managed by the iPhora Gatekeeper. What information you have access to is based on user authentication, roles, ACLs, and permissions. Note for Domino developers, don't use DAS.

Our approach of using Restful APIs makes the use MVC framework ideal. We have long been intrigued by the different MVC frameworks including the popular ones like Angular and Backbone. So our goal was to replace our entire front end with one of these open source MVC frameworks. Even Dojo has a MVC framework, kind of.

However, the selected MVC framework had to meet a number of criterion including easy adaption to how our iPhora data security model worked. It had to handle our multi-level UI Bootstrap-based widget design that are part of the iPhora security model. It had to be lightweight, while being very structured allowing the use of design patterns to help maintainability. In addition, the goal was to have a multi-pane single page application (SPA) interface to help to reduce the constant loading of core libraries over and over again while allowing for constant changes to what appeared on the screen. Since iPhora is designed to handle sensitive information, we needed to control when and how information was to be cached or destroyed both in memory and visually.

From our research and experimentation, we decide the popular MVC frameworks were not going to meet our needs.  Stuff like bi-directional coupling did not work for us since it is assumed that at every RESTful API call your security level and access might have changed.  Not only that, the security level for each of the multi-panes within the single page application interface may be different.

So our adventure of creating our own MVC framework began.  We rolled up our sleeves, got many 6-pack of beer and started laying out want we needed.

Next time, Design Requirements.









---------------------
http://dominointerface.blogspot.com/2015/09/our-adventures-into-creating-secure-mvc.html
Sep 29, 2015
7 hits



Recent Blog Posts
77
MWLUG 2017 - Domino Application Development Roundtable
Thu, Jul 20th 2017 5:16p   Richard Moy
IBM Domino is nearing its 30th anniversary and yet it is still one of the most innovative software products on the market with features still not found in other solutions. Want to discuss with IBM your thoughts on how we can continue to make Domino one of the most relevant product for the next 30 years? We are please to announce that MWLUG 2017 will be hosting two Domino Application Development Roundtables on Wednesday August 9, 2017. Each roundtable session will be 45 minutes. There is one fo
17
MWLUG 2017 Agenda and the Future
Thu, Jul 13th 2017 8:33p   Richard Moy
The agenda for MWLUG 2017 is now available online, http://mwlug.com/mwlug/mwlug2017.nsf/schedule.xsp. MWLUG 2017 includes 59 technical and business sessions, workshops, and roundtable discussions presented by some of the best speakers in the ICS community including more than 20 IBM Champions. This is the most comprehensive conference we have ever had. MWLUG 2017 covers a variety of important topics including: Big Data and Graphic DatabasesConnections PinkData Management and SecurityIBM Colla
8
MWLUG 2017 Sessions and More
Thu, Jun 29th 2017 5:42p   Richard Moy
MWLUG 2017 sessions are now available on the MWLUG 2017 web site, http://mwlug.com/mwlug/mwlug2017.nsf/sessions.xsp This year we have a great line up of both new and previous speakers with sessions covering gambit of the IBM solutions including IBM Domino, IBM Notes, IBM Verse/VOP, IBM Connections, IBM Cloud, and Watson Workspace along with IBM Pink. In tuned with our theme, "Moving Collaboration Forward" we have many sessions covering some of the latest technologies and how to use those tec
7
IBM Domino Application Transformation Jumpstart Workshop at MWLUG 2017 on Tuesday, August 8, 2017
Thu, Jun 8th 2017 4:17p   Richard Moy
Announcing one of two workshops at MWLUG 2017. Our Platinum Sponsor, panagenda is having a workshop on Tuesday morning on August 8, 2017 from 9:30 AM to 1:30 PM, "IBM Domino Application Transformation Jumpstart". This free workshop covers a number of important topics including ApplicationInsights which is now shipped with Domino. To register for this workshop go to: https://www.panagenda.com/news-events/events/ibm-domino-application-transformation-jumpstart/ Domino Interface
6
Dave Navarre Welcomes you to MWLUG 2017 and Washington DC
Thu, Jun 8th 2017 3:41p   Richard Moy
We are starting process of reviewing all the abstract submissions for MWLUG 2017. We received close to 80 submissions. Thank you to all the submitters for taking the time to submit their abstracts. I would like to introduce Dave Navarre, our local representative from the Washington DC area. He would like to welcome you to his town. Domino Interface
2
New Presentation Track for MWLUG 2017, Watson Work
Fri, May 26th 2017 9:36p   Richard Moy
For MWLUG 2017 we have a new presentation track, Watson Work. This track will include presentations on Watson Workspace and Work Services. So stay tuned for more information on many new things coming to MWLUG 2017Domino Interface
7
MWLUG 2017 Abstract Submission deadline extended to June 2, 2017, 6:00 pm CST
Fri, May 26th 2017 9:05p   Richard Moy
Due to the holidays and request from a number of potential speakers, abstract submission for MWLUG 2017 has been extended to June 2, 2017, 6:00 PM CST. So if you are planning to submit an abstract for MWLUG 2017, you have another extra week. But don't wait to the last minute !!! To submit go to: http://mwlug.com/mwlug/mwlug2017.nsf/sessionabstract.xspDomino Interface
5
Abstract Submission for MWLUG 2017 closes this Friday, May 26, 2017
Mon, May 22nd 2017 4:22p   Richard Moy
Abstract Submission for MWLUG 2017 closes this Friday, May 26, 2017 at 5:00 PM CDT. So get your abstracts in as soon as you can. Are you new to speaking? Well here is your chance to speak at a conference on a topic that you know well. Every year we reserve a number of speaking slots for new speakers. So take this unique opportunity to speak at a MWLUG conference and submit an abstract. To submit your abstract go to: http://mwlug.com/mwlug/mwlug2017.nsf/sessionabstract.xsp We look forward to g
4
Engage 2017 and Presentation - Unleash the Power of REST APIs with Dojo
Sun, May 14th 2017 11:54p   Richard Moy
At the beginning of this week, I was fortunate enough to attend Engage 2017. This was the first time that I had not only presented at Engage, but also attended Engage. Theo does an amazing job in creating this premier event. The turnout for my session, "Unleash the Power of REST APIs with Dojo" was more than I expected. It has been awhile since I was in Europe. So I took a couple days off before Engage to visit Amsterdam which I have never been to and a couple days after Engage to visit B
4
MWLUG 2017, "Moving Collaboration Forward", The New is Old and the Old is New
Tue, May 2nd 2017 9:38p   Richard Moy
MWLUG 2017 mark the ninth annual ICS user group conference that we as a community are coming together to network and learn for each other. It will be held at the beautiful Hilton Mark Center in Alexandria, VA near Washington DC from August 8 - 10, 2017. Like always we are planning many activities at MWLUG. Unlike previous years, MWLUG 2017 will be held from Tuesday through Thursday rather than the previous years where the conference was held from Wednesday until Friday. This was one of the fe




Created and Maintained by Yancy Lent - About - Planet Lotus Blog - Advertising - Mobile Edition