Advanced Security Programming in Java SE Authentication, Secure Communication and Single Sign-On

Java SE offers a rich set of APIs and features for developing secure Java applications and services. The exercise sessions listed here can help you to use the Java SE GSS APIs to build applications that authenticate their users, to communicate securely with other applications and services, and help you to configure your applications in a Kerberos environment to achieve Single Sign-On. In addition, you will also learn how to use stronger encryption algorithms in a Kerberos environment, and how to use Java GSS mechanisms such as SPNEGO to secure the association.

Setting up your Development Environment

Set up your development environment as follows before proceeding to the first exercise:

  1. Install and set up a Solaris machine (required for Exercise 7: Configuring to Use Stronger Encryption Algorithms in a Kerberos Environment, to Secure the Communication).
  2. Configure a Kerberos server on a Solaris machine with accounts used by the exercises. See Appendix A: Setting up Kerberos Accounts.
  3. Set up the Key Distribution Center (KDC) on your Solaris machine and start the Kerberos server.
  4. Set up the Kerberos configuration on your client machine.
  5. Set up the JDK environment:
    • Set up the JAVA_HOME environment variable to point to the JDK installation directory

    • Place %JAVA_HOME%\bin (Windows) or $JAVA_HOME/bin (Solaris/Linux) in the PATH environment variable.