Enterprise Java™ Security: Building Secure J2EE™ Applications provides application developers and programmers with the know-how they need to utilize the latest Java security technologies in building secure enterprise infrastructures. Written by the leading Java security experts at IBM, this comprehensive guide covers the current status of the Java™ 2 Platform, Enterprise Edition (J2EE), and Java™ 2 Platform, Standard Edition (J2SE™), security architectures and offers practical solutions and usage patterns to address the challenges of Java security.
To aid developers who need to build secure J2EE applications, Enterprise Java™ Security covers at length the J2EE security technologies, including the security aspects of servlets, JavaServer Pages(TM) (JSP™), and Enterprise JavaBeans™ (EJB™)—technologies that are at the core of the J2EE architecture. In addition, the book covers Web Services security.
Examples and sample code are provided throughout the book to give readers a solid understanding of the underlying technology.
The relationship between Java and cryptographic technologies is covered in great detail, including:
Download the Sample Chapters related to this title:
About the Authors.
I. ENTERPRISE SECURITY AND JAVA.1. An Overview of Java Technology and Security.
Why Java Technology for Enterprise Applications?
Enterprise Java Technology.
Java Technology as Part of Security.
An Overview of Enterprise Security Integration.
Time to Market.2. Enterprise Network Security and Java Technology.
Server-Side Java Technology.
Java and Firewalls.
II. ENTERPRISE JAVA COMPONENTS SECURITY.3. Enterprise Java Security Fundamentals.
Secure Interoperability between ORBs.
Simple E-Business Request Flow.
J2EE Platform Roles.
J2EE Security Roles.
Declarative Security Policies.
Secure Communication within a WAS Environment.
Secure E-Business Request Flow.4. Servlet and JSP Security.
Advantages of Servlets.
Servlet Life Cycle.
The Deployment Descriptor of a Web Module.
Runtime Restrictions for Web Components.
Partitioning Web Applications.5. EJB Security.
EJB Roles and Security.
Security Considerations.6. Enterprise Java Security Deployment Scenarios.
Planning a Secure-Component System.
Secure Communication Channel.
III. THE FOUNDATIONS OF JAVA 2 SECURITY.7. J2SE Security Fundamentals.
Access to Classes, Interfaces, Fields, and Methods.
The Class File Verifier.
The Security Manager.
Interdependence of the Three Java Security Legs.
Summary.8. The Java 2 Permission Model.
Overview of the Java 2 Access-Control Model.
Java Security Policy.
The Concept of CodeSource.
The Basic Java 2 Access-Control Model.
Privileged Java 2 Code.
Performance Issues in the Java 2 Access-Control Model.
Summary.9. Authentication and Authorization with JAAS.
Overview of JAAS and JAAS Terminology.
JAAS and J2EE.
Additional Support for Pluggable Authentication.
IV. ENTERPRISE JAVA AND CRYPTOGRAPHY.10. The Theory of Cryptography.
The Purpose of Cryptography.
Public-Key Cryptography.11. The Java 2 Platform and Cryptography.
The JCA and JCE Frameworks.
The JCA API.
The JCE API.
JCE in Practice.
Security Considerations.12. PKCS and S/MIME in J2EE.
Signing and Verifying Transactions with PKCS and S/MIME.
Encrypting Transactions with PKCS and S/MIME.
Future Directions.13. The SSL and TLS Protocols in a J2EE Environment.
The SSL and TLS Protocols.
Using the SSL Support Built into J2EE Products.
Using SSL from within J2EE Programs.
V. ADVANCED TOPICS.14. Enterprise Security for Web Services.
Security for Web Services: Motivations.
Web Services Security Model Principles.
Web Services Provider Security.
Futures.15. Security Considerations for Container Providers.
Understanding the Environment.
Access to System Resources.
Mapping Identities at Connector Boundaries.16. Epilogue.
VI. APPENDIXES.Appendix A. Security of Distributed Object Architectures.
Read the Foreword
for this book.
Download the Index
file related to this title.