Cover image for Security patterns in practice : designing secure architectures using software patterns
Title:
Security patterns in practice : designing secure architectures using software patterns
Personal Author:
Series:
Wiley series in software design patterns
Publication Information:
West Sussex : Wiley, 2013
Physical Description:
xxi, 558 p. : ill. ; 25 cm.
ISBN:
9781119998945

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010304290 TK5105.59 F47 2013 Open Access Book Book
Searching...

On Order

Summary

Summary

Learn to combine security theory and code to produce secure systems

Security is clearly a crucial issue to consider during the design and implementation of any distributed software architecture. Security patterns are increasingly being used by developers who take security into serious consideration from the creation of their work. Written by the authority on security patterns, this unique book examines the structure and purpose of security patterns, illustrating their use with the help of detailed implementation advice, numerous code samples, and descriptions in UML.

Provides an extensive, up-to-date catalog of security patterns Shares real-world case studies so you can see when and how to use security patterns in practice Details how to incorporate security from the conceptual stage Highlights tips on authentication, authorization, role-based access control, firewalls, wireless networks, middleware, VoIP, web services security, and more Author is well known and highly respected in the field of security and an expert on security patterns

Security Patterns in Practice shows you how to confidently develop a secure system step by step.


Author Notes

Eduardo B. Fernandez (FL, USA - www.cse.fau.edu/~ed) is a professor in the Department of Computer Science and Engineering at the Florida Atlantic University in Boca Raton, Florida. Ed has published numerous papers and four books on authorization models, object-oriented analysis & design, and security patterns. He has lectured all over the world at both academic and industrial meetings. His current interests include security patterns, web services, cloud computing security and fault tolerance. He holds a MS degree in Electrical Engineering from Purdue University and a Ph.D. in Computer Science from UCLA. Ed is an active consultant for industry, including assignments with IBM, Allied Signal, Motorola, Lucent, and others.


Table of Contents

Forewordp. xvii
Prefacep. xix
Part I Introduction
Chapter 1 Motivation and Objectivesp. 1
Why Do We Need Security Patterns?p. 1
Some Basic Definitionsp. 3
The History of Security Patternsp. 5
Industrial Use of Security Patternsp. 6
Other Approaches to Building Secure Systemsp. 6
Chapter 2 Patterns and Security Patternsp. 7
What is a Security Pattern?p. 7
The Nature of Security Patternsp. 8
Pattern Descriptions and Catalogsp. 10
The Anatomy of a Security Patternp. 11
Pattern Diagramsp. 17
How Can We Classify Security Patterns?p. 17
Pattern Miningp. 19
Uses for Security Patternsp. 20
How to Evaluate Security Patterns and their Effect on Securityp. 21
Threat Modeling and Misuse Patternsp. 22
Fault Tolerance Patternsp. 22
Chapter 3 A Secure Systems Development Methodologyp. 23
Adding Information to Patternsp. 23
A Lifecyle-Based Methodologyp. 24
Using Model-Driven Engineeringp. 27
Part II Patterns
Chapter 4 Patterns for Identity Managementp. 31
Introductionp. 32
Circle of Trustp. 34
Identity Providerp. 36
Identity Federationp. 38
Liberty Alliance Identity Federationp. 44
Chapter 5 Patterns for Authenticationp. 51
Introductionp. 51
Authenticatorp. 52
Remote Authenticator/Authorizerp. 56
Credentialp. 62
Chapter 6 Patterns for Access Controlp. 71
Introductionp. 71
Authorizationp. 74
Role-Based Access Controlp. 78
Multilevel Securityp. 81
Policy-Based Access Controlp. 84
Access Control Listp. 91
Capabilityp. 96
Reified Reference Monitorp. 100
Controlled Access Sessionp. 104
Session-Based Role-Based Access Controlp. 107
Security Logger and Auditorp. 111
Chapter 7 Patterns for Secure Process Managementp. 117
Introductionp. 117
Secure Process/Threadp. 120
Controlled-Process Creatorp. 126
Controlled-Object Factoryp. 129
Controlled-Object Monitorp. 132
Protected Entry Pointsp. 136
Protection Ringsp. 139
Chapter 8 Patterns for Secure Execution and File Managementp. 145
Introductionp. 145
Virtual Address Space Access Controlp. 146
Execution Domainp. 149
Controlled Execution Domainp. 151
Virtual Address Space Structure Selectionp. 156
Chapter 9 Patterns for Secure OS Architecture and Administrationp. 163
Introductionp. 163
Modular Operating System Architecturep. 165
Layered Operating System Architecturep. 169
Microkernel Operating System Architecturep. 174
Virtual Machine Operating System Architecturep. 179
Administrator Hierarchyp. 184
File Access Controlp. 187
Chapter 10 Security Patterns for Networksp. 193
Introductionp. 194
Abstract Virtual Private Networkp. 195
IP Sec VPNp. 200
TLS Virtual Private Networkp. 202
Transport Layer Securityp. 205
Abstract IDSp. 214
Signature-Based IDSp. 219
Behavior-Based IDSp. 224
Chapter 11 Patterns for Web Services Securityp. 231
Introductionp. 231
Application Firewallp. 234
XML Firewallp. 242
XACML Authorizationp. 248
XACML Access Control Evaluationp. 254
Web Services Policy Languagep. 260
WS-Policyp. 263
WS-Trustp. 272
SAML Assertionp. 279
Chapter 12 Patterns for Web Services Cryptographyp. 285
Introductionp. 286
Symmetric Encryptionp. 288
Asymmetric Encryptionp. 295
Digital Signature with Hashingp. 301
XML Encryptionp. 309
XML Signaturep. 317
WS-Securityp. 330
Chapter 13 Patterns for Secure Middlewarep. 337
Introductionp. 337
Secure Brokerp. 339
Secure Pipes and Filtersp. 347
Secure Blackboardp. 353
Secure Adapterp. 358
Secure Three-Tier Architecturep. 362
Secure Enterprise Service Busp. 366
Secure Distributed Publish/Subscribep. 372
Secure Model-View-Controllerp. 375
Chapter 14 Misuse Patternsp. 383
Introductionp. 383
Wormp. 390
Denial-of-Service in VoIPp. 397
Spoofing Web Servicesp. 403
Chapter 15 Patterns for Cloud Computing Architecturep. 411
Introductionp. 411
Infrastructure-as-a-Servicep. 413
Platform-as-a-Servicep. 423
Software-as-a-Servicep. 431
Part III Use of the Patterns
Chapter 16 Building Secure Architecturesp. 441
Enumerating Threatsp. 442
The Analysis Stagep. 445
The Design Stagep. 448
Secure Handling of Legal Casesp. 451
SCADA Systemsp. 459
Medical Applicationsp. 466
Conclusionsp. 478
Chapter 17 Summary and the Future of Security Patternsp. 479
Summary of Patternsp. 479
Future Research Directions for Security Patternsp. 494
Security Principlesp. 496
The Futurep. 497
Appendix A Pseudocode for XACML Access Control Evaluationp. 499
Glossaryp. 501
Referencesp. 509
Index of Patternsp. 543
Indexp. 547