Abstract
This paper presents a static type system for JAVA Virtual Machine (JVM) code that enforces an access control mechanism similar to the one found, for example, in a JAVA implementation. In addition to verifying type consistency of a given JVM code, the type system statically verifies that the code accesses only those resources that are granted by the prescribed access policy. The type system is proved to be sound with respect to an operational semantics that enforces access control dynamically, similarly to JAVA stack inspection. This result ensures that "well typed code cannot violate access policy." The paper then develop a type inference algorithm and shows that it is sound with respect to the type system and that it always infers a minimal set of access privileges. These results allows us to develop a static system for JVM access control without resorting to costly runtime stack inspection.
Original language | English |
---|---|
Pages (from-to) | 227-237 |
Number of pages | 11 |
Journal | ACM SIGPLAN Notices |
Volume | 38 |
Issue number | 9 |
DOIs | |
Publication status | Published - 2003 Sept |
Externally published | Yes |
Event | Proceedings of the 2003 ACM SIGPLAN International Conference on Functional Programming - Uppsala, Sweden Duration: 2003 Aug 25 → 2003 Aug 29 |
Keywords
- Access control
- JVM
- Stack inspection
- Type inference
- Type system
ASJC Scopus subject areas
- Software
- Computer Graphics and Computer-Aided Design