Enforcing security policies to distributed systems is difficult, in particular, when a system contains untrusted components. We designed AspectKE*, a distributed AOP language based on a tuple space, to tackle this issue. In AspectKE*, aspects can enforce access control policies that depend on future behavior of running processes. One of the key language features is the predicates and functions
that extract results of static program analysis, which are useful for defining security aspects that have to know about future behavior of a program. AspectKE* also provides a novel variable binding mechanism for pointcuts, so that pointcuts can uniformly specify join points based on both static and dynamic information about the program. Our implementation strategy performs fundamental static
analysis at load-time, so as to retain runtime overheads minimal. We implemented a compiler for AspectKE*, and demonstrate usefulness of AspectKE* through a security aspect for a distributed chat system.
|Conference||9th Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS '10)|
|Period||01/01/2010 → …|
|Series||Technische Berichte des Hasso-Plattner-Instituts für Softwaresystemtechnik an der Universität Potsdam|
- Aspect Oriented Programming, Program Analysis, Security Policies, Distributed Systems, Tuple Spaces