Security Patterns and Secure Systems Design

  • Authors:
  • Eduardo B. Fernandez

  • Affiliations:
  • Dept. of Computer Science and Eng., Florida Atlantic University, Boca Raton, FL 33431, USA

  • Venue:
  • LADC '07 Proceedings of the 3rd Latin-American symposium on Dependable Computing
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Analysis and design patterns are well established to build high-quality object-oriented software. Patterns combine experience and good practices to develop basic models that can be used for new designs. Security patterns join the extensive knowledge accumulated about security with the structure provided by patterns to provide guidelines for secure system design and evaluation. They are being adopted by companies such as IBM, Sun, and Microsoft. We show the anatomy of a security pattern, a variety of them, and their use in the construction of secure systems. These patterns include Authentication, Authorization, Role-based Access Control, Firewalls, Web Services Security (SAML, XACML, XML Firewall), and others. We apply these patterns through a secure system development method based on a hierarchical architecture whose layers define the scope of each security mechanism. First, the possible attacks are considered from an analysis of use cases. Then the rights of the users are defined from the use cases using a Role-Based Access Control (RBAC) or other security model. The attacks are used to define the policies that could stop them. The rights are reflected in the conceptual class model. We then define additional security constraints that apply to distribution, interfaces, and components. The patterns are shown using UML models and some examples are taken from my book "Security Patterns" (Wiley 2006).