Skip to main content
  • Book
  • © 2022

The Definitive Guide to Security in Jakarta EE

Securing Java-based Enterprise Applications with Jakarta Security, Authorization, Authentication and More

Apress
  • A definitive and authoritative book written by the head of Jakarta EE Security and related APIs
  • Provides unique insight details straight from the source
  • Includes practical examples

Buy it now

Buying options

eBook USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

This is a preview of subscription content, log in via an institution to check for access.

Table of contents (8 chapters)

  1. Front Matter

    Pages i-xvii
  2. Security History

    • Arjan Tijms, Teo Bais, Werner Keil
    Pages 1-40
  3. Jakarta EE Foundations

    • Arjan Tijms, Teo Bais, Werner Keil
    Pages 41-90
  4. Jakarta Authentication

    • Arjan Tijms, Teo Bais, Werner Keil
    Pages 91-178
  5. Jakarta Authorization

    • Arjan Tijms, Teo Bais, Werner Keil
    Pages 179-226
  6. Jakarta Security

    • Arjan Tijms, Teo Bais, Werner Keil
    Pages 227-318
  7. Java SE Underpinnings

    • Arjan Tijms, Teo Bais, Werner Keil
    Pages 319-411
  8. Jakarta EE Implementations

    • Arjan Tijms, Werner Keil, Teo Bais
    Pages 413-474
  9. MicroProfile JWT

    • Arjan Tijms, Teo Bais, Werner Keil
    Pages 475-519
  10. Back Matter

    Pages 521-638

About this book

Refer to this definitive and authoritative book to understand the Jakarta EE Security Spec, with Jakarta Authentication & Authorization as its underlying official foundation. Jakarta EE Security implementations are discussed, such as Soteria and Open Liberty, along with the build-in modules and Jakarta EE Security third-party modules, such as Payara Yubikey & OIDC, and OmniFaces JWT-Auth.


The book discusses Jakarta EE Security in relation to SE underpinnings and provides a detailed explanation of how client-cert authentication over HTTPS takes place, how certifications work,  and how LDAP-like names are mapped to caller/user names. General (web) security best practices are presented, such as not storing passwords in plaintext, using HTTPS, sanitizing inputs to DB queries, encoding output, and explanations of various (web) attacks and common vulnerabilities are included.


Practical examples of securing applications discuss common needs such as letting users explicitly log in, sign up, verify email safely, explicitly log in to access protected pages, and go direct to the log in page. Common issues are covered such as abandoning an authentication dialog halfway and later accessing protected pages again.





What You Will Learn
  • Know what Jakarta/Java EE security includes and how to get started learning and using this technology for today's and tomorrow's enterprise Java applications
  • Secure applications: traditional server-side web apps built with JSF (Faces) as well as applications based on client-side frameworks (such as Angular) and JAX-RS
  • Work with the daunting number of security APIs in Jakarta EE
  • Understand how EE security evolved



Who This Book Is For


Java developers using Jakarta EE and writing applications that need to be secured (every application). Basic knowledge of Servlets and CDI is assumed. Library writers and component providers who wish to provide additional authentication mechanisms for Jakarta EE also will find the book useful.

Authors and Affiliations

  • AMSTERDAM, The Netherlands

    Arjan Tijms

  • Utrecht, The Netherlands

    Teo Bais

  • Bad Homburg vdH, Germany

    Werner Keil

About the authors

Arjan Tijms was a JSF (JSR 372) and Security API (JSR 375) EG member, and is currently project lead for a number of Jakarta projects, including Jakarta- Security, Authentication, Authorization, and Faces and Expression Language. He is the co-creator of the popular OmniFaces library for JSF that was a 2015 Duke’s Choice Award winner, and is the author of two books: The Definitive Guide to JSF- and Pro CDI 2 in Java EE 8. Arjan holds an MSc degree in computer science from the University of Leiden, The Netherlands. He has been involved with Jakarta EE Security since 2010, has created a set of tests that most well-known vendors use (IBM, Oracle, Red Hat) to improve their offerings, was part of the JSR 375 (EE Security) EG, and has been the main architect of the security API and its initial RI implementation Soteria. Arjan has also written and certified the MicroProfile JWT implementation for Payara. He was mentored by Sun's (later Oracle's) security expert Ron Monzillo. He wrote a large series of blog posts about EE Security that have attracted a lot of views.

Werner Keil is a cloud architect, Eclipse RCP, and a microservice expert for a large bank. He helps Global 500 Enterprises across industries and leading IT vendors. He worked for over 30 years as an IT manager, PM, coach, and SW architect and consultant for the finance, mobile, media, transport, and public sectors. Werner develops enterprise systems using Java, Java/Jakarta EE, Oracle, IBM, Spring or Microsoft technologies, JavaScript, Node, Angular, and dynamic or functional languages. He is a Committer at Apache Foundation, and Eclipse Foundation, a Babel Language Champion, UOMo Project Lead, and active member of the Java Community Process in JSRs such as 321 (Trusted Java), 344 (JSF 2.2), 354 (Money, also Maintenance Lead), 358/364 (JCP.next), 362 (Portlet 3), 363 (Unit-API 1), 365 (CDI 2), 366 (Java EE 8), 375 (Java EE Security), 380 (Bean Validation 2), and 385 (Unit-API 2, also Spec Lead), and was the longest serving Individual Member of the Executive Committee for nine years in a row until 2017. Werner is currently the Community representative in the Jakarta EE Specification Committee. He was among the first five Jakarta EE Ambassadors when it was founded as Java EE Guardians, and is a member of its Leadership Council.


Teo Bais is a Software Development Manager, Scrum Master, and Programmer who contributes to the prosperity of the (software) community in several ways. He is the founder and leader of Utrecht Java User Group, which counts over 2600 members and has hosted over 45 events and amazing speakers (among others, James Gosling, Uncle Bob, and over 20 Java Champions), and is running 3 programs: Devoxx4kids, Speaker Incubator and uJCP. Teo served JSR-385 (JSR of the Year 2019) as an EG Member and was nominated as JCP Participant of the Year in 2019. Teo Bais enjoys sharing his knowledge as a public speaker to help others achieve their goals in career and life.


Bibliographic Information

  • Book Title: The Definitive Guide to Security in Jakarta EE

  • Book Subtitle: Securing Java-based Enterprise Applications with Jakarta Security, Authorization, Authentication and More

  • Authors: Arjan Tijms, Teo Bais, Werner Keil

  • DOI: https://doi.org/10.1007/978-1-4842-7945-8

  • Publisher: Apress Berkeley, CA

  • eBook Packages: Professional and Applied Computing, Apress Access Books, Professional and Applied Computing (R0)

  • Copyright Information: Arjan Tijms, Teo Bais, and Werner Keil 2022

  • Softcover ISBN: 978-1-4842-7944-1Published: 15 April 2022

  • eBook ISBN: 978-1-4842-7945-8Published: 14 April 2022

  • Edition Number: 1

  • Number of Pages: XVII, 638

  • Number of Illustrations: 82 b/w illustrations

  • Topics: Java, Professional Computing, Systems and Data Security

Buy it now

Buying options

eBook USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access