Minimizing resource access and management disparities between desktop and Web applications
Client applications, including both traditional desktop applications and modern Web applications, typically access and manage resources in order to perform their intended work. Unfortunately both approaches lack something the other has when it comes to resource access and management. Desktop applica...
Main Author: | |
---|---|
Language: | English |
Published: |
University of British Columbia
2011
|
Online Access: | http://hdl.handle.net/2429/31025 |
id |
ndltd-LACETR-oai-collectionscanada.gc.ca-BVAU.-31025 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-LACETR-oai-collectionscanada.gc.ca-BVAU.-310252013-06-05T04:19:24ZMinimizing resource access and management disparities between desktop and Web applicationsCannon, Brett AllenClient applications, including both traditional desktop applications and modern Web applications, typically access and manage resources in order to perform their intended work. Unfortunately both approaches lack something the other has when it comes to resource access and management. Desktop applications typically do not provide enough security for resources to prevent malicious abuse of them. While operating systems provide access-control lists, they do not help facilitate enforcing the Principle of Least Privilege to minimize insecure resource access. Web applications, while they operate in a sandboxed environment which provides the necessary resource access restrictions, do not have a rich API for data storage management. While HTML5 provides two primitive APIs for a developer to use to manage stored data, neither approach allows for storing data in an object-oriented manner that a developer is used to. This thesis addresses the question of ”can these two shortcomings in resource access and management be overcome in order to lessen the technological gap between desktop applications and Web applications?” For desktop applications an approach using aspect-oriented software design has been created which adds enforcement of the Principle of Least Privilege by using I/O to dynamically choose what resource permissions to grant the application. I show that this approach can tie into Java applications with rich user interaction and I/O to control resource access while providing a way for third-parties to provide the security code for auditing purposes. For Web applications, a library has been designed which introduces automatic object persistence to JavaScript without re- quiring any modifications of the browser. I show that my library is able to persist a thousand objects without a user-perceptible impact on application performance, all while having minimal requirements placed upon the developer to use the library.University of British Columbia2011-02-01T21:54:35Z2011-02-01T21:54:35Z20112011-02-01T21:54:35Z2011-05Electronic Thesis or Dissertationhttp://hdl.handle.net/2429/31025eng |
collection |
NDLTD |
language |
English |
sources |
NDLTD |
description |
Client applications, including both traditional desktop applications and modern Web applications, typically access and manage resources in order to perform their intended work. Unfortunately both approaches lack something the other has when it comes to resource access and management. Desktop applications typically do not provide enough security for resources to prevent malicious abuse of them. While operating systems provide access-control lists, they do not help facilitate enforcing the Principle of Least Privilege to minimize insecure resource access. Web applications, while they operate in a sandboxed environment which provides the necessary resource access restrictions, do not have a rich API for data storage management. While HTML5 provides two primitive APIs for a developer to use to manage stored data, neither approach allows for storing data in an object-oriented manner that a developer is used to. This thesis addresses the question of ”can these two shortcomings in resource access and management be overcome in order to lessen the technological gap between desktop applications and Web applications?” For desktop applications an approach using aspect-oriented software design has been created which adds enforcement of the Principle of Least Privilege by using I/O to dynamically choose what resource permissions to grant the application. I show that this approach can tie into Java applications with rich user interaction and I/O to control resource access while providing a way for third-parties to provide the security code for auditing purposes. For Web applications, a library has been designed which introduces automatic object persistence to JavaScript without re- quiring any modifications of the browser. I show that my library is able to persist a thousand objects without a user-perceptible impact on application performance, all while having minimal requirements placed upon the developer to use the library. |
author |
Cannon, Brett Allen |
spellingShingle |
Cannon, Brett Allen Minimizing resource access and management disparities between desktop and Web applications |
author_facet |
Cannon, Brett Allen |
author_sort |
Cannon, Brett Allen |
title |
Minimizing resource access and management disparities between desktop and Web applications |
title_short |
Minimizing resource access and management disparities between desktop and Web applications |
title_full |
Minimizing resource access and management disparities between desktop and Web applications |
title_fullStr |
Minimizing resource access and management disparities between desktop and Web applications |
title_full_unstemmed |
Minimizing resource access and management disparities between desktop and Web applications |
title_sort |
minimizing resource access and management disparities between desktop and web applications |
publisher |
University of British Columbia |
publishDate |
2011 |
url |
http://hdl.handle.net/2429/31025 |
work_keys_str_mv |
AT cannonbrettallen minimizingresourceaccessandmanagementdisparitiesbetweendesktopandwebapplications |
_version_ |
1716587721232744448 |