Aspectizing java access control
Autor: | Éric Tanter, Angel Núñez, Rodolfo Toledo, Jacques Noyé |
---|---|
Přispěvatelé: | Departemento de Ciencias de la Computacion [Santiago] (DCC), Universidad de Chile = University of Chile [Santiago] (UCHILE), Laboratoire d'Informatique de Nantes Atlantique (LINA), Centre National de la Recherche Scientifique (CNRS)-Mines Nantes (Mines Nantes)-Université de Nantes (UN), Aspect and composition languages (ASCOLA), Inria Rennes – Bretagne Atlantique, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Département informatique - EMN, Mines Nantes (Mines Nantes)-Mines Nantes (Mines Nantes)-Laboratoire d'Informatique de Nantes Atlantique (LINA), Centre National de la Recherche Scientifique (CNRS)-Mines Nantes (Mines Nantes)-Université de Nantes (UN)-Centre National de la Recherche Scientifique (CNRS)-Université de Nantes (UN), Mines Nantes (Mines Nantes)-Université de Nantes (UN)-Centre National de la Recherche Scientifique (CNRS), Mines Nantes (Mines Nantes)-Université de Nantes (UN)-Centre National de la Recherche Scientifique (CNRS)-Mines Nantes (Mines Nantes)-Université de Nantes (UN)-Centre National de la Recherche Scientifique (CNRS)-Département informatique - EMN, Mines Nantes (Mines Nantes)-Inria Rennes – Bretagne Atlantique, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria) |
Jazyk: | angličtina |
Rok vydání: | 2012 |
Předmět: |
[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL]
Java business.industry Computer science Programming language Aspect-oriented programming ACM: D.: Software/D.3: PROGRAMMING LANGUAGES/D.3.3: Language Constructs and Features 020207 software engineering Access control AspectJ Context (language use) 02 engineering and technology [INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] computer.software_genre [INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] Software deployment 0202 electrical engineering electronic engineering information engineering 020201 artificial intelligence & image processing business Implementation computer Software Scope (computer science) computer.programming_language |
Zdroj: | IEEE TRANSACTIONS ON SOFTWARE ENGINEERING Artículos CONICYT CONICYT Chile instacron:CONICYT IEEE Transactions on Software Engineering IEEE Transactions on Software Engineering, Institute of Electrical and Electronics Engineers, 2011, 38 (1), pp.101-117. ⟨10.1109/TSE.2011.6⟩ IEEE Transactions on Software Engineering, 2011, 38 (1), pp.101-117. ⟨10.1109/TSE.2011.6⟩ |
ISSN: | 0098-5589 |
DOI: | 10.1109/TSE.2011.6⟩ |
Popis: | It is inevitable that some concerns crosscut a sizeable application, resulting in code scattering and tangling. This issue is particularly severe for security-related concerns: It is difficult to be confident about the security of an application when the implementation of its security-related concerns is scattered all over the code and tangled with other concerns, making global reasoning about security precarious. In this study, we consider the case of access control in Java, which turns out to be a crosscutting concern with a nonmodular implementation based on runtime stack inspection. We describe the process of modularizing access control in Java by means of Aspect-Oriented Programming (AOP). We first show a solution based on AspectJ, the most popular aspect-oriented extension to Java, that must rely on a separate automata infrastructure. We then put forward a novel solution via dynamic deployment of aspects and scoping strategies. Both solutions, apart from providing a modular specification of access control, make it possible to easily express other useful policies such as the Chinese wall policy. However, relying on expressive scope control results in a compact implementation, which, at the same time, permits the straightforward expression of even more interesting policies. These new modular implementations allowed by AOP alleviate maintenance and evolution issues produced by the crosscutting nature of access control. |
Databáze: | OpenAIRE |
Externí odkaz: |