The Sun OpenSSO Enterprise Client SDK is a smaller version of the OpenSSO Enterprise SDK that includes only the client-side Java classes and configuration properties. You can use the Client SDK to write remote standalone or web applications that access an OpenSSO Enterprise server to use services such as authentication, SSO, authorization, auditing, logging, and the Security Assertion Markup Language (SAML).
The Client SDK also includes sample applications that you can deploy to help you write your own custom applications.
The requirements to use the Client SDK include:
OpenSSO Enterprise server must be running on a remote server. You will need the following information about this remote installation:
Protocol (http or https) used by web container instance on which the OpenSSO Enterprise server is deployed.
Fully qualified domain name (FQDN) of the host on which the OpenSSO Enterprise server is deployed.
Port on which the OpenSSO Enterprise server is running.
Deployment URI for the OpenSSO Enterprise server (default is opensso).
Default Agent user (UrlAccessAgent) password that you entered when you ran the OpenSSO Enterprise Configurator.
If you are writing a web application, you need a web container supported by OpenSSO Enterprise. For the list of supported web containers, see the OpenSSO Enterprise 8.0 Requirements.
If you have not already done so, download and unzip the opensso_enterprise_80.zip file, as described in Downloading OpenSSO Enterprise.
The Client SDK and samples are then available in the zip-root/opensso/samples/opensso-client.zip file, where zip-root is the directory where you unzipped opensso.war.
If you plan to install the Client SDK in a web container, the web container must be installed on the server where you plan to deploy the Client SDK.
On the server where you plan to deploy the Client SDK, copy the opensso-client.zip to a staging directory.
In the directory from Step 1, unzip the opensso-client.zip file.
The following table describes the layout after you unzip the opensso-client.zip file. The directory where you unzip the file is represented by opensso-client-zip-root.
Client SDK CLI-based samples, which you can run in a standalone JVM outside of a web container:
Client SDK WAR files, which include the web-based client samples:
Deploy these files using the web container administration console or command-line utility.
If you have not already do so, unzip the opensso-client.zip file, as described in Installing the OpenSSO Enterprise Client SDK.
The Client SDK samples are then available in the opensso-client-zip-root/sdk/source directory, where opensso-client-zip-root is the directory where you unzipped opensso-client-zip-root.
Set your JAVA_HOME environment variable to JDK 1.5 or 1.4, depending on the version of the samples your are using.
Also set your PATH correctly so that the appropriate JDK is used to compile the client SDK samples.
On Solaris and Linux systems, make all shell scripts in the opensso-client-zip-root/sdk/scripts directory executable. For example:
# cd opensso-client-zip-root/sdk/scripts # chmod 755 *.sh
Compile the samples by executing the scripts/compile-samples.sh script.
Note: You can invoke the sample scripts only from the /sdk parent directory and not directly from the /scripts directory.
Run the appropriate setup script for the samples: scripts/setup.sh on Solaris and Linux systems or scripts/setup.bat on Windows systems.
Run the setup script only once for of the all Client SDK samples. The script will setup the AMConfig.properties file to point to the OpenSSO Enterprise server.
Run individual Client SDK samples by executing the shell or bat scripts in the /scripts directory. For example:
Note: At run time, a sample might require additional property files to be setup in the /resources directory. Check the comments included in each individual script for more information.
For information about writing custom applications after you install the Client SDK, see Chapter 1, Enhancing Remote Applications Using the Client Software Development Kit, in the Sun OpenSSO Enterprise 8.0 Developer’s Guide.