• Treffer 1 von 1
Zurück zur Trefferliste

Extending a dynamic programming language and runtime environment with access control

Verbesserung gehosteter Dienste für kontinuierliche Integration

  • Complexity in software systems is a major factor driving development and maintenance costs. To master this complexity, software is divided into modules that can be developed and tested separately. In order to support this separation of modules, each module should provide a clean and concise public interface. Therefore, the ability to selectively hide functionality using access control is an important feature in a programming language intended for complex software systems. Software systems are increasingly distributed, adding not only to their inherent complexity, but also presenting security challenges. The object-capability approach addresses these challenges by defining language properties providing only minimal capabilities to objects. One programming language that is based on the object-capability approach is Newspeak, a dynamic programming language designed for modularity and security. The Newspeak specification describes access control as one of Newspeak’s properties, because it is a requirement for the object-capabilityComplexity in software systems is a major factor driving development and maintenance costs. To master this complexity, software is divided into modules that can be developed and tested separately. In order to support this separation of modules, each module should provide a clean and concise public interface. Therefore, the ability to selectively hide functionality using access control is an important feature in a programming language intended for complex software systems. Software systems are increasingly distributed, adding not only to their inherent complexity, but also presenting security challenges. The object-capability approach addresses these challenges by defining language properties providing only minimal capabilities to objects. One programming language that is based on the object-capability approach is Newspeak, a dynamic programming language designed for modularity and security. The Newspeak specification describes access control as one of Newspeak’s properties, because it is a requirement for the object-capability approach. However, access control, as defined in the Newspeak specification, is currently not enforced in its implementation. This work introduces an access control implementation for Newspeak, enabling the security of object-capabilities and enhancing modularity. We describe our implementation of access control for Newspeak. We adapted the runtime environment, the reflective system, the compiler toolchain, and the virtual machine. Finally, we describe a migration strategy for the existing Newspeak code base, so that our access control implementation can be integrated with minimal effort.zeige mehrzeige weniger
  • Die Komplexität von Softwaresystemen hat einen hohen Einfluss auf Entwicklungs- und Wartungskosten. Um diese Komplexität zu beherschen, werden Softwaresysteme in Module unterteilt, da diese getrennt leichter zu entwickeln und zu testen sind. Zur Unterstützung einer sauberen Aufteilung von Modulen, sollten sie minimale und klar definierte Schnittstellen haben. Dafür ist die Fähigkeit, mit Hilfe der Berechtigungskontrolle selektiv die Sichtbarkeit von Funktionen eines Modules einzuschränken, von zentraler Bedeutung. Softwaresysteme sind immer stärker verteilt, was nicht nur zu ihrer Komplexität beiträgt, sondern auch Herausforderungen bezüglich der Sicherheit mit sich bringt. Der Object-Capability-Ansatz löst genau jene Sicherheitsprobleme, da dadurch Programmobjekten nur die minimal erforderlichen Fähigkeiten gegeben werden. Für diesen Ansatz ist es essentiell, dass die öffentliche Schnittstelle eines Objektes durch Berechtigungskontrolle eingeschränkt werden kann. Auf dem Object-Capability-Ansatz basiert Newspeak, eine moderne undDie Komplexität von Softwaresystemen hat einen hohen Einfluss auf Entwicklungs- und Wartungskosten. Um diese Komplexität zu beherschen, werden Softwaresysteme in Module unterteilt, da diese getrennt leichter zu entwickeln und zu testen sind. Zur Unterstützung einer sauberen Aufteilung von Modulen, sollten sie minimale und klar definierte Schnittstellen haben. Dafür ist die Fähigkeit, mit Hilfe der Berechtigungskontrolle selektiv die Sichtbarkeit von Funktionen eines Modules einzuschränken, von zentraler Bedeutung. Softwaresysteme sind immer stärker verteilt, was nicht nur zu ihrer Komplexität beiträgt, sondern auch Herausforderungen bezüglich der Sicherheit mit sich bringt. Der Object-Capability-Ansatz löst genau jene Sicherheitsprobleme, da dadurch Programmobjekten nur die minimal erforderlichen Fähigkeiten gegeben werden. Für diesen Ansatz ist es essentiell, dass die öffentliche Schnittstelle eines Objektes durch Berechtigungskontrolle eingeschränkt werden kann. Auf dem Object-Capability-Ansatz basiert Newspeak, eine moderne und dynamische Programmiersprache, die besonders auf Sicherheit sowie Modularität Wert legt. Die Berechtigungskontrolle ist eine zentrale Funktion, sowohl für die Modularität, als auch für die Sicherheit von Newspeak. Daher ist sie auch in der Spezifikation von Newspeak definiert. Bisher gibt es allerdings keine Implementierung, die die Berechtigungskontrolle durchsetzt. In dieser Arbeit stellen wir eine Implementierung der Berechtigungskontrolle für Newspeak vor. Damit wird sowohl die Modularität von Newspeak Programmen verbessert, als auch die Sicherheit durch den Object-Capability-Ansatz erst ermöglicht. Wir beschreiben eine Implementierung der Berechtigungskontrolle für Newspeak und passen dabei die Laufzeitumgebung, die Reflexions- und Introspektionsmodule, den Compiler sowie die virtuelle Maschine an. Große Teile des Newspeak-Programmcodes müssen für die Benutzung der Berechtigungskontrolle angepasst werden. Durch eine Migration des Newspeak-Programmcodes wird es möglich, unsere Implementierung mit existierenden Newspeak-Programmen zu benutzen.zeige mehrzeige weniger

Volltext Dateien herunterladen

  • tbhpi107.pdfeng
    (5182KB)

    SHA-1:44aaeb3aa8a40b2fb71497d2dfa497def5778533

Metadaten exportieren

Weitere Dienste

Suche bei Google Scholar Statistik - Anzahl der Zugriffe auf das Dokument
Metadaten
Verfasserangaben:Philipp Tessenow, Tim FelgentreffORCiDGND, Gilad Bracha, Robert HirschfeldORCiDGND
URN:urn:nbn:de:kobv:517-opus4-92560
ISBN:978-3-86956-373-2
ISSN:1613-5652
ISSN:2191-1665
Schriftenreihe (Bandnummer):Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam (107)
Verlag:Universitätsverlag Potsdam
Verlagsort:Potsdam
Publikationstyp:Monographie/Sammelband
Sprache:Englisch
Jahr der Erstveröffentlichung:2016
Erscheinungsjahr:2016
Veröffentlichende Institution:Universität Potsdam
Veröffentlichende Institution:Universitätsverlag Potsdam
Datum der Freischaltung:14.10.2016
Freies Schlagwort / Tag:Newspeak; Zugriffskontrolle; dynamische Programmiersprachen; virtuelle Maschinen
Newspeak; access control; dynamic programming languages; virtual machines
Ausgabe:107
Seitenanzahl:83
RVK - Regensburger Verbundklassifikation:ST 230
Organisationseinheiten:An-Institute / Hasso-Plattner-Institut für Digital Engineering gGmbH
DDC-Klassifikation:0 Informatik, Informationswissenschaft, allgemeine Werke / 00 Informatik, Wissen, Systeme / 004 Datenverarbeitung; Informatik
Publikationsweg:Universitätsverlag Potsdam
Lizenz (Deutsch):License LogoKeine öffentliche Lizenz: Unter Urheberrechtsschutz
Externe Anmerkung:
In Printform erschienen im Universitätsverlag Potsdam:

Extending a dynamic programming language and runtime environment with access control / Philipp Tessenow, Tim Felgentreff, Gilad Bracha, Robert Hirschfeld. – Potsdam: Universitätsverlag Potsdam, 2016. – 83 S. : graph. Darst.
(Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam ; 107)
ISSN (print) 1613-5652
ISSN (online) 2191-1665
ISBN 978-3-86956-373-2
--> bestellen
Verstanden ✔
Diese Webseite verwendet technisch erforderliche Session-Cookies. Durch die weitere Nutzung der Webseite stimmen Sie diesem zu. Unsere Datenschutzerklärung finden Sie hier.