Training Capstone Courseware

Training goals

code: CC-562 | version: v5.0

This advanced course introduces Java developers to key concepts and technology for developing secure web services and securing enterprise software architecture. Though consensus is forming, and standards have largely taken shape, this is still a broad and challenging field. We focus on a few well-defined approaches: XML cryptography, the WS-Security and WS-SecurityPolicy standards, and the Security Assertions Markup Language, or SAML. We also look XACML for authorization policies, and at trust and federation -- not only as envisioned by SAML but also through the WS-Trust and WS-Federation specifications.

These approaches do overlap, and through our primary case studies we present a single, coherent story of assuring confidentiality, integrity and non-repudiation, user authenticity, and proper request authorization with a blend of policy-driven WS-Security, SAML, and even some application-coded digital signature. We also investigate the web-application end of SAML, with an in-depth study of single sign-on and federated identity.

Although for practical purposes this course relies on a specific platform, which is Java EE, the great majority of the course content teaches interoperable specifications, and would be equally useful to developers working on other web-service-capable platforms such as .NET -- or to those who work with multiple platforms, and do need to understand the interoperable pieces in detail but perhaps don't need to delve into implementation strategies. In fact, customizations are available that essentially leave out the Java to stick more strictly to the XML.

Conspect Show list

  1. Chapter 1. Securing the Service-Oriented Enterprise
    • Security for Web Services
    • Threats
    • CIA Goals
    • Solution Levels: W3C, OASIS, Java EE
    • Scenario: Secure Multi-Party Conversation
    • Cryptography
    • WS-Security and WS-SecurityPolicy
    • Scenario: Sharing Security Information
    • SAML and XACML
    • Scenario: Multiple User Realms
    • Scenario: Single Sign-On
    • Technology Stacks: WS-Federation and Liberty Alliance
    • The WS-I Basic Security Profile
  2. Chapter 2. Transport Security
    • Use Case: Secure Transport
    • HTTP Authentication Schemes
    • HTTP BASIC
    • HTTP DIGEST
    • Securing Web-Service URLs
    • HTTPS
    • JAX-WS Support
    • Axis Support
  3. Chapter 3. XML Signature
    • Use Case: Non-Repudiation
    • XML Digital Signature
    • Cryptography Backgrounder
    • Canonical XML
    • Enveloped, Enveloping, and Detached Signatures
    • SignedInfo and References
    • The Java Cryptography Architecture
    • Keystores
    • Why Keys Aren't Enough
    • X.509 Certificates and Certificate Chains
    • The KeyStore API
    • Java XML Digital Signature API
    • Steps to Sign and Verify XML Content
    • JAX-WS Message Handlers
    • Foiling the Man in the Middle
  4. Chapter 4. XML Encryption
    • Use Case: Confidentiality
    • XML Encryption
    • EncryptedData
    • Element vs. Content Encryption
    • Key Wrapping
    • The Java Cryptography Extensions
    • Apache XML Security
    • Steps to Encrypt and Decrypt XML Content
    • Choosing Algorithms and Key Sizes
  5. Chapter 5. WS-Security
    • Use Case: Secure Message Exchange
    • Use Case: User Login
    • The WS-Security Specifications
    • Security Token Types
    • Timestamps
    • Username Tokens
    • Signature and Encryption
    • Tools for WS-Security
    • XWSS and JAAS
    • Foiling Replay Attacks
  6. Chapter 6. WS-SecurityPolicy
    • Use Case: Sharing Metadata
    • WS-Policy
    • Normalized vs. Compact Form
    • Policy Attachment
    • Policy Scopes
    • WS-SecurityPolicy
    • Protection Assertions
    • Token Assertions
    • Supporting and Endorsing Tokens
    • Bindings
    • Metro and WSIT
    • Implementing Callbacks
    • Integrating Security Frameworks
  7. Chapter 7. Introduction to SAML
    • History of SAML
    • Assertions
    • Protocol
    • Bindings
    • Profiles
    • Using OpenSAML
    • SAML and Web Services
  8. Chapter 8. SAML Assertions
    • Use Case: "Vouching for" a User
    • The Assertions Schema
    • Extensibility
    • Assertions and Subjects
    • NameID Types
    • Conditions
    • Subject Confirmation
    • Confirmation Methods
    • AuthntStatement
    • Authentication Contexts
    • AttributeStatement
    • Attribute Profiles
    • AuthzDecisionStatements
    • Actions and Evidence
    • WS-Security and SAML Tokens
    • OpenSAML Assertions Model
    • Creating XML Objects
    • Marshalling and Unmarshalling
  9. Chapter 9. SAML Protocol
    • Use Case: Back-Channel Queries
    • Requests, Queries, and Responses
    • Status and StatusCode
    • AuthnQuery
    • AttributeQuery
    • AuthzDecisionQuery
    • Other Request and Response Types
    • OpenSAML Protocol Model
    • SAML and XML Signature
    • SAML and XML Encryption
  10. Chapter 10. XACML
    • Use Case: Back-Channel Authorization
    • Use Case: Sharing Authorization Policies
    • Policies, Policy Sets, and Targets
    • Rules
    • Combining Algorithms
    • Policy Context
    • Request and Response Types
    • The SAML Profile of XACML
    • Authorization Decisions via XACML
  11. Chapter 11. Securing Federated Services
    • Publish, Find, Bind ... Execute!
    • UDDI
    • WS-BPEL
    • The Trust Problem
    • WS-Trust
    • The Security Token Service
    • Messaging Model: RST and RSTR
    • Derived Keys
    • WS-SecureConversation
    • Secure Conversation Metrics
    • WS-Federation
    • Value Proposition
  12. Chapter 12. SAML Bindings
    • Use Case: Speaking "Through" the Browser
    • The SOAP Binding
    • SAML Over HTTP
    • The Browser as Messenger
    • The Redirect, POST, and Artifact Bindings
    • The PAOS Binding
    • The URI Binding
  13. Chapter 13. Federated Identity
    • What is Federation?
    • Problems for Identity Federation
    • SAML 2.0 Federations
    • Single Sign-On
    • Account Linking and Persistent Pseudonyms
    • Transient Pseudonyms
    • Name ID Mapping
    • Federation Termination
    • OpenSSO
    • Fedlets

Appendix A. Learning Resources

Appendix B. Web-Service Security Prefixes and Namespaces

Download conspect training as PDF

Additional information

Prerequisites
  • Solid Java programming experience is essential - Course 103 provides excellent preparation.
  • Experience developing Java Web services is likewise a hard requirement: labs will assume understanding of both SAAJ and JAX-WS - Course 561 is strongly recommended.
  • Students are expected to be able to read and write XML fluently, and have some familiarity with XML Schema. Consider courses 501 and 517.
Difficulty level
Duration 5 days
Certificate

The participants will obtain certificates signed by Capstone Courseware.

Trainer

Authorized Capstone Courseware Trainer.

Other training Capstone Courseware | XML and Web Services

Training thematically related

Security

Java

Programming

Contact form

Please fill form below to obtain more info about this training.







* Fields marked with (*) are required !!!

Information on data processing by Compendium - Centrum Edukacyjne Spółka z o.o.

PRICE 1100 EUR

FORM OF TRAINING ?

 

TRAINING MATERIALS ?

 

SELECT TRAINING DATE

    • General information
    • Guaranteed dates
    • Last minute (-10%)
    • Language of the training
    • English
Book a training appointment
close

Traditional training

Sessions organised at Compendium CE are usually held in our locations in Kraków and Warsaw, but also in venues designated by the client. The group participating in training meets at a specific place and specific time with a coach and actively participates in laboratory sessions.

Dlearning training

You may participate from at any place in the world. It is sufficient to have a computer (or, actually a tablet, or smartphone) connected to the Internet. Compendium CE provides each Distance Learning training participant with adequate software enabling connection to the Data Center. For more information, please visit dlearning.eu site

close

Paper materials

Traditional materials: The price includes standard materials issued in the form of paper books, printed or other, depending on the arrangements with the manufacturer.

Electronic materials

Electronic materials: These are electronic training materials that are available to you based on your specific application: Skillpipe, eVantage, etc., or as PDF documents.

Ctab materials

Ctab materials: the price includes ctab tablet and electronic training materials or traditional training materials and supplies provided electronically according to manufacturer's specifications (in PDF or EPUB form). The materials provided are adapted for display on ctab tablets. For more information, check out the ctab website.

Upcoming Capstone Courseware training

Training schedule
Capstone Courseware