Learning Centre

Cybersecure REST API for Manufacturing Execution Systems

 |  Login

Show simple item record

dc.contributor Aalto-yliopisto fi
dc.contributor Aalto University en
dc.contributor.advisor Boyadzhiev, Dimitar
dc.contributor.author Lönnbäck, Otto
dc.date.accessioned 2023-01-29T18:06:34Z
dc.date.available 2023-01-29T18:06:34Z
dc.date.issued 2023-01-23
dc.identifier.uri https://aaltodoc.aalto.fi/handle/123456789/119381
dc.description.abstract Legacy systems are still in widespread use, especially in corporate settings and factories. They often use proprietary communication protocols, making it harder to integrate them with new software and third-party applications. Implementing REST APIs for such systems can improve their interoperability and ease of use. When implementing new APIs for legacy systems security is of particular concern. This thesis investigates the security considerations of building a REST API for a legacy system. It does this in the form of a case-study of the development of a secure REST API backend for a Manufacturing Execution System. The thesis investigates how the REST API can be implemented in a secure manner, and which security aspects have to be considered. It also investigates special security considerations for legacy systems. The legacy system in question relies heavily on logic running in the database, which led to a focus on an API that directly interfaces with the database. This choice in turn put a focus on proper validation and authorization procedures. For interoperability, some security relevant systems, such as authentication, were made compatible with the legacy system. For implementing the API a model-driven development approach is used, where the meta-model is based on the OpenAPI Specification (OAS). The meta-model is highly domain-specific in order to incorporate aspects such as authorization and validation. It is based around the concept of database tables and rows being modeled as REST resources. In addition to this, traditional non-model-driven solutions are also used for some security related functionality. The resulting implementation was found to be secure, but there were cases where more secure options than those implemented were available. Particularly, compatibility with the legacy systems required some compromises and special considerations. The use of model-driven development was found to improve the security of the API backend. en
dc.description.abstract Äldre system används fortfarande i stor utsträckning, speciellt inom företag och i fabriker. De använder ofta proprietära kommunikationsprotokoll, vilket gör det svårare att integrera dem med ny mjukvara och program från tredje parter. Att implementera ett REST API för sådana system kan förbättra deras interoperabilitet och lättanvändlighet. När man implementerar nya gränssnitt för befintliga system är speciellt säkerheten en viktig angelägenhet. Det här diplomarbetet undersöker de säkerhetsangelägenheter som bör tas i beaktande vid utvecklingen av ett REST API för ett befintligt system. Detta uppnås genom en fallanalys om utvecklingen av ett säkert REST API för ett produktionsstyrningssystem. Arbetet undersöker hur ett REST API kan implementeras på ett säkert sätt, samt vilka säkerhetsaspekter som behöver tas i beaktan. Det undersöker också vilka specialbeaktanden rörande säkerheten som behövs för ett befintligt system. Det befintliga systemet i fråga beror kraftigt på logik som körs i databasen, vilket ledde till ett fokus på ett gränssnitt som direkt kommunicerar med databasen. Det här valet ledde i förlängningen till ett fokus på korrekta validerings- och aktoriseringsprocedurer. För att bibehålla kompitabiliteten med det befintliga systemet var man tvungen att återanvända vissa existerande system, till exempel för autentikering. För att implementera API:t används modelldriven utveckling, där metamodellen är baserad på OpenAPI Specification (OAS). Metamodellen är väldigt domänspecifik för att inkorporera aspekter såsom validering och auktorisering. Den är baserad kring konceptet att databasens tabeller och rader modelleras som REST-resurser. Utöver detta används även traditionella ickemodelldrivna lösningar för att implementera viss säkerhetsrelaterad funktionalitet. Den resulterande implementeringen befanns i allmänhet vara säker, men det fanns vissa fall där mer säkra alternativ än de implementerade fanns tillgängliga. I synnerhet kompitabiliteten med det befintliga systemet krävde vissa kompromisser och speciallösningar. Användningen av modelldriven utveckling befanns förbättra systemets säkerhet. sv
dc.format.extent 56
dc.format.mimetype application/pdf en
dc.language.iso en en
dc.title Cybersecure REST API for Manufacturing Execution Systems en
dc.title Cybersäkert REST API för produktionsstyrningssystem sv
dc.type G2 Pro gradu, diplomityö fi
dc.contributor.school Perustieteiden korkeakoulu fi
dc.subject.keyword API security en
dc.subject.keyword REST API en
dc.subject.keyword model-driven development en
dc.subject.keyword model-driven security en
dc.subject.keyword OpenAPI en
dc.subject.keyword legacy systems en
dc.identifier.urn URN:NBN:fi:aalto-202301291731
dc.programme.major Computer Science fi
dc.programme.mcode SCI3042 fi
dc.type.ontasot Master's thesis en
dc.type.ontasot Diplomityö fi
dc.contributor.supervisor Lindqvist, Janne
dc.programme Master’s Programme in Computer, Communication and Information Sciences fi
local.aalto.electroniconly yes
local.aalto.openaccess yes


Files in this item

This item appears in the following Collection(s)

Show simple item record

Search archive


Advanced Search

article-iconSubmit a publication

Browse

Statistics