Previous Topic: About the SDKNext Topic: Programming Guide for Perl


SDK Samples

The SiteMinder SDK contains a number of sample applications and plug-ins that can help you use the APIs.

The samples are installed in subdirectories of the following directory:

install_path/sdk/samples

For example:

C:/Program Files/CA/sdk/samples

Note: The Java samples use properties defined in the file smjsdksample.properties, located in /sdk/properties. Before you run the Java sample applications, modify this file with settings for your environment.

Sample Subdirectories

The sample subdirectories contain source files, project files, makefiles, and other related files for building the sample applications and plug-ins.

The following table lists the subdirectories where the sample files are installed:

Subdirectory Name

Sample Description

assertiongenerator
   plugin

Java sample of SAML assertion customization.

 

dmsworkflow

C-language Delegated Management Services workflow sample.

 

javaauthapi

Java custom authentication sample.

 

javaazapi

Java custom authorization samples.

 

javadmsapi

Java Delegated Management Services sample.

The directory includes examples of build and run
scripts. You can use the examples as models for your own scripts.

This sample uses the policy store created by the javapolicyapi sample.

 

javapolicyapi

Java policy management sample.

The directory includes examples of build and run scripts. You can use the examples as models for your own scripts.

smagentapi

C-language custom agent sample.

smauthapi

C-language custom authentication sample.

smazapi

C-language custom authorization sample.

 

smdirapi

C-language sample for accessing unsupported directories.

smeventproviderapi

C-language sample for creating custom event handlers.

This sample references the header file smeventproviderapi.h. This is a custom header file used exclusively with this sample. The header file required for the Event API (and referenced within smeventproviderapi.h) is SmEventApi.h.

 

smjavaagentapi

Java custom agent sample.

The directory includes examples of build and run scripts. You can use the examples as models for your own scripts.

This sample uses the policy store created by the javapolicyapi sample.

 

smpolicyapi

C-language policy management sample.

The sample shows how to protect a Web resource by creating a variety of SiteMinder Policy objects. The example includes:

  • Calls to initialize and uninitialize the API.
  • The calls that are required to create agents, domains (policy domains), user directories, realms, rules, responses, and policies.

 

smtunnelagent

C-language tunnel agent sample.

This sample is provided to communicate with the smtunnelservice sample shared library. The smtunnelagent sample uses the Agent API’s Sm_AgentApi_Tunnel() function.

 

smtunnelservice

C-language tunnel services sample.

 

SiteMinder Test Tool

The SiteMinder Test Tool is a Windows-based utility that you can use to verify your policy configurations. The Test Tool simulates the interaction between Agents and Policy Servers, allowing you to test the functionality of the Policy Server without having a Web Agent or Web server installed.

The Test Tool acts as an agent sending requests to the Policy Server. These requests enable you to perform functional tests, such as verifying whether a resource is protected. You can also use the Test Tool to perform regression tests, which helps determine how well the Policy Server handles simultaneous requests.

To run the SiteMinder Test Tool, run SmTest.exe in the following location:

install_path\sdk\bin\

Note: The Test Tool does not support multibyte characters.

SDK Documentation

The CA SiteMinder® bookshelf includes the following SDK documentation:

Other SiteMinder Documentation

SiteMinder documentation that you can possibly find helpful when using the SiteMinder SDK are listed following.

Support for Custom Code

CA supports the Software Development Kit (SDK) as part of the standard offerings. Code written by customers or partners, however, is not supported. You are responsible for the code you write. If you require assistance designing or implementing SDK-based code, contact your CA customer account team.