Sun OpenSSO Enterprise 8.0 Update 1 Release Notes

Chapter 2 Installing OpenSSO Enterprise 8.0 Update 1

OpenSSO Enterprise 8.0 Update 1 Installation Overview

OpenSSO Enterprise 8.0 Update 1 is available as patch 141655-01 on http://sunsolve.sun.com/.

Before you install OpenSSO Enterprise 8.0 Update 1 (or subsequent patches), check the information about new features, hardware and software requirements, and issues and workarounds in this document.

OpenSSO Enterprise 8.0 Update 1 includes an opensso.war file that you can install using these methods:


Note –

If you are running Access Manager 7.1 or Access Manager 7 2005Q4 and you want to upgrade to Update 1, follow these steps:

  1. Upgrade Access Manager 7.x to OpenSSO Enterprise 8.0, as described in Sun OpenSSO Enterprise 8.0 Upgrade Guide.

  2. Apply the Update 1 patch, as described in this chapter.


OpenSSO Enterprise 8.0 Update 1 Patches

Sun periodically releases patches for OpenSSO Enterprise 8.0 Update 1. For information about these patches, see OpenSSO Enterprise 8.0 Update 1 Patch Releases.

Planning Your Patch Operation

ProcedureTo Plan Your Patch Operation for OpenSSO Enterprise 8.0

  1. Read the Overview of the ssopatch Utility.

  2. Install the patch utility for your platform, as described in Installing the ssopatch Utility.

  3. Get information about your existing WAR file, to determine if your existing WAR file has been customized or modified, as described in Comparing an OpenSSO Enterprise WAR File to Its Internal Manifest.

  4. Compare your existing WAR file and the Update 1 WAR file, to return the files customized in the original WAR, files updated in the new WAR file, and files added or deleted between the two WAR versions, as described in Comparing Two OpenSSO Enterprise WAR Files.

  5. Backup and archive your existing Opensso WAR file, as described in Backing Up an OpenSSO Enterprise WAR File.

  6. Patch your OpenSSO Enterprise WAR File, as described in Patching an OpenSSO Enterprise WAR File.

  7. Run the updateschema script, as described in Running the updateschema Script.

    Note - If you are patching a specialized WAR file that you generated from an opensso.war, such as an OpenSSO server only, administration console only, Distributed Authentication UI server, or IDP Discovery Service WAR, see Patching a Specialized OpenSSO Enterprise WAR.

Overview of the ssopatch Utility

The ssopatch utility is a Java command-line utility that is available on Solaris and Linux systems as ssopatch and on Windows as ssopatch.bat.

Note - The syntax for ssopatch in OpenSSO Enterprise 8.0 Update 1 has changed considerably since the OpenSSO Enterprise 8.0 release. For the new syntax, see Running the updateschema Script.

The ssopatch patch utility performs these functions:

After you download and unzip the OpenSSO Enterprise 8.0 Update 1 ZIP file (opensso_enterprise_80U1.zip), the patch utilities and related files are available in the ssoPatchTools.zip file, in the zip-root/opensso/tools directory, where zip-root is where you unzipped opensso_enterprise_80U1.zip.

The ssopatch utility uses a manifest file to determine the contents of a specific OpenSSO Enterprise WAR file. A manifest file is an ASCII text file that contains:

The manifest file is usually named OpenSSO.manifest and is stored in the in the META-INF directory of the OpenSSO Enterprise WAR file.

The ssopatch utility sends its results to the standard output (stdout). If you prefer, you can capture the ssopatch output by redirecting the output to a file. If ssopatch finishes successfully, it returns a zero (0) exit code. If errors occur, ssopatch returns a non-zero exit code.

Installing the ssopatch Utility

Before you install the ssopatch utility:

To Install the ssopatch Utility

  1. Locate the ssoPatchTools.zip file in the zip-root/opensso/tools directory, where zip-root is where you unzipped opensso_enterprise_80U1.zip.

  2. Create a new directory to unzip the ssoPatchTools.zip file. For example: ssopatchtools

  3. Unzip the ssoPatchTools.zip file in the new directory.

  4. If you want to run the ssopatch utility from a directory other than its current directory without providing the full path, add the utility to your PATH variable.

The following table describes the files in ssoPatchTools.zip.

File or Directory 

Description 

README

Readme file that describes ssopatch

/lib

Required ssopatch JAR files

/patch

updateschema and updateschema.bat scripts and related XML files

/resources

Required properties files 

ssopatch and ssopatch.bat

Utilities for Solaris, Linux, and Windows systems 

Backing Up an OpenSSO Enterprise WAR File

Before you begin, backup your existing OpenSSO Enterprise WAR file and configuration data:

Running the ssopatch Utility

To run the ssopatch utility, follow this usage:


ssopatch
--help|-?
[--locale|-l]

ssopatch
--war-file|-o
[--manifest|-m]
[--locale|-l]

ssopatch
--war-file|-o
--war-file-compare|-c
[--staging|-s]
[--locale|-l]
[--override|-r]
[--overwrite|-w]

where the options are:

Comparing an OpenSSO Enterprise WAR File to Its Internal Manifest

Use this procedure to determine if an OpenSSO Enterprise WAR file has been customized or modified since it was downloaded.

The ssopatch utility generates a new internal manifest file and then compares this internal manifest against the manifest stored inside the original OpenSSO Enterprise WAR file in the META-INF directory.

To Compare an OpenSSO Enterprise WAR File to Its Internal Manifest

  1. Run ssopatch to compare the OpenSSO Enterprise WAR file to its internal manifest. For example:


    ./ssopatch -o /zip-root/opensso/deployable-war/opensso.war
    Generating Manifest for: /zip-root/opensso/deployable-war/opensso.war
    Comparing manifest of Internal (Enterprise 8.0 Build 6(200810311055))
    against /zip-root/opensso/deployable-war/opensso.war (generated-200905050855)
    File not in original war (images/login-origimage.jpg)
    File updated in new war (images/login-backimage.jpg)
    File updated in new war (WEB-INF/classes/amConfigurator.properties)
    Differences: 3

This example shows these changes to the original WAR file:

Comparing Two OpenSSO Enterprise WAR Files

Use this procedure to compare two WAR files, to show the files that have been:

To Compare Two OpenSSO Enterprise WAR Files

  1. Run ssopatch to compare the two WAR files. In the example, the -override option is used to override the revision checking between the two WAR files:


    ./ssopatch -o /zip-root/opensso/deployable-war/opensso.war
    -c /u1/opensso/deployable-war/opensso.war --override
    Generating Manifest for: /zip-root/opensso/deployable-war/opensso.war
    Original manifest: Enterprise 8.0 Build 6(200810311055)
    New manifest: Enterprise 8.0 Update 1 Build 6.1(200904300525)
    Versions are compatible
    Generating Manifest for: /u1/opensso/deployable-war/opensso.war
    Comparing manifest of /zip-root/opensso/deployable-war/opensso.war
    (generated-200905050919) against
        /u1/opensso/deployable-war/opensso.war (generated-200905050920)
    File updated in new war(WEB-INF/classes/amClientDetection_en.properties)
    File updated in new war(WEB-INF/classes/fmSAMLConfiguration_fr.properties)
    ...
    Differences: 1821
    Customizations: 3

This example shows the files that have been updated and customized in the new WAR file.

Patching an OpenSSO Enterprise WAR File

Use this procedure to create a new staging area, where an original WAR file is merged with a new WAR file.

This operation compares the manifests for each WAR file and then shows:

The ssopatch then copies the appropriate files to a staging directory, where you must add any customizations before you create and deploy the new patched WAR.

To Create a Staging Area to Patch an OpenSSO Enterprise WAR File

  1. Although the ssopatch does not modify your original opensso.war file, it is recommended that you back up this file, in case you need to back out the patched opensso.war file.

  2. Run ssopatch to create the staging area. For example:


    ./ssopatch -o /zip-root/opensso/deployable-war/opensso.war
      -c /u1/opensso/deployable-war/opensso.war --override -s /tmp/staging
    Generating Manifest for: /zip-root/opensso/deployable-war/opensso.war
    Original manifest: Enterprise 8.0 Build 6(200810311055)
    New manifest: Enterprise 8.0 Update 1 Build 6.1(200904300525)
    Versions are compatible
    Generating Manifest for: /u1/opensso/deployable-war/opensso.war
    Comparing manifest of /zip-root/opensso/deployable-war/opensso.war
        (generated-200905051031) against /u1/opensso/deployable-war/opensso.war
        (generated-200905051032)
    File was customized in original, but not found in new war.
    Staging area using original war version (samples/saml2/sae/header.jsp)
    File was customized in original, but not found in new war.
    Staging area using original war version
        (WEB-INF/template/opends/config/upgrade/config.ldif.4517)
    File was customized in original, but not found in new war.
    Staging area using original war version
        (WEB-INF/template/opends/config/upgrade/schema.ldif.4517)
    Differences: 1813
    Customizations: 0

In this example, /tmp/staging is the staging area where ssopatch copies the files.

Update the files as needed in the staging-area, using the results of the previous step.

Use the following table to determine the action you might need to take for each file before you generate a new patched WAR file.

ssopatch Results

Explanation and Action Required 

File not in original war filename

The indicated file does not exist in the original WAR file but is in the latest version of the WAR file. 

Action: None

File updated in new war filename

The indicated file exists in both the original and new WAR files and has been updated in the latest version of the WAR file. No customizations have been done in the original WAR file. 

Action: None

File customized filename

The indicated file exists in both WAR files, has been customized in the original version of the WAR file, but has not been updated in the latest version of the WAR file. 

Action: None

May require manual customization filename

The file exists in both WAR files, has been customized in the original version of the WAR file, and has been updated in the latest version of the WAR file. 

Action: If you want your customizations in the file, you must manually add them to the new updated file in the staging directory.

File was customized in original, but not found in new war

The file existed in the original WAR file, but is not in the new WAR. 

Action: None.

Next Steps

  1. Create a new OpenSSO Enterprise WAR file from the files in the staging area. For example:


    cd /tmp/staging
    jar cvf /patched/opensso.war *

    where /patched/opensso.war is the new patched OpenSSO Enterprise WAR file

  2. Redeploy the /patched/opensso.war file to the web container using the original deploy URI. For example, /opensso

OpenSSO configuration changes. A new OpenSSO Enterprise WAR file might have configuration changes that were not in your original WAR file. Any configuration changes, if any, will be documented separately for each patch. Check the patch documentation and the Sun OpenSSO Enterprise 8.0 Release Notes for more information about any configuration changes. (The version string in the OpenSSO manifest file will change, even if there are no configuration changes in the new WAR file.)

If you need to back out your patched version, undeploy the patched WAR file and then redeploy your original WAR file.

Creating an OpenSSO Enterprise WAR Manifest File

An OpenSSO manifest file is a text file that identifies all of the individual files in a WAR file for a specific release, with checksum information for each file.

Use this procedure to create a manifest file that you can include in a specialized OpenSSO Enterprise WAR, such as an OpenSSO Enterprise server only, administration console only, Distributed Authentication UI server, or IDP Discovery Service WAR

To Create an OpenSSO Enterprise WAR Manifest File

  1. Run ssopatch to create the OpenSSO manifest file. For example:


    ./ssopatch -o zip-root/opensso/deployable-war/opensso.war --manifest /tmp/manifest

    where opensso.war is an existing OpenSSO Enterprise WAR file.

    The ssopatch utility creates a new manifest file named manifest in the the /tmp directory.

  2. To allow the WAR file to be patched, copy this new manifest file to the META-INF directory inside the opensso.war file. For example:


    mkdir META-INF
    cp /tmp/manifest META-INF
    jar uf opensso.war META-INF/manifest

Patching a Specialized OpenSSO Enterprise WAR

If you have previously created a specialized OpenSSO Enterprise WAR, such as an OpenSSO Enterprise server only, administration console only, Distributed Authentication UI server, or IDP Discovery Service WAR, you can patch it by using the ssopatch utility.

To Patch a Specialized OpenSSO Enterprise WAR

  1. Create a manifest file for your specialized OpenSSO Enterprise WAR, as described in Creating an OpenSSO Enterprise WAR Manifest File.

    Note: Create the manifest file based on the original OpenSSO Enterprise 8.0 opensso.war, as delivered from Sun, prior to any customizations you might have done. If the manifest is created after customizations, ssopatch might use the files from Update 1, rather than your customizations, so you would need to re-do your customizations after patching.

  2. Generate the specialized OpenSSO Enterprise WAR from the OpenSSO Enterprise 8.0 Update 1 opensso.war file, as described in Chapter 4, Creating a Specialized OpenSSO Enterprise 8.0 Update 1 WAR File.

  3. Use the ssopatch utility to compare the your old and new WAR files.

  4. Generate a staging area for the new specialized WAR file, as described in To Create a Staging Area to Patch an OpenSSO Enterprise WAR File.

  5. Redeploy the new specialized WAR file.

Running the updateschema Script

After you run ssopatch, run the updateschema.sh on Solaris or Linux systems or updateschema.bat on Windows. The script updates the OpenSSO Enterprise server version, adds new default server properties, adds new attribute schemas required for bug fixes and enhancements in Update 1. You must run updateschema in order to update the server version.

Before You Begin

The updateschema.sh or updateschema.bat script requires the Update 1 version (or later) of the ssoadm command-line utility. Therefore, before you run this script, install the Update 1 admin tools, as described in Chapter 3, Installing the OpenSSO Enterprise 8.0 Update 1 Admin Tools.

To Run the updateschema Script

  1. Change to the patch-tools/patch directory, where patch-tools is where you unzipped ssoPatchTools.zip.

  2. Run updateschema.sh or updateschema.bat. For example, on Solaris systems:

    ./updateschema.sh

  3. When the scripts prompts you, provide the following information:

The updateschema.sh or updateschema.bat script writes any messages or errors to the standard output.

Backing Out a Patch Installation

If you need to back out your patch installation, simply redeploy the original opensso.war file (or specialized WAR file).