Cams Programmer's Guide

Cams Programmer's Guide
Version 3.0

This document provides links to information you use to learn about programming Cams.

Table of Contents

Introduction

Webapp Programming

Accessing Cams HTTP Request Headers
Using Java
Using ASP Scripts
Using PERL
Custom Cams HTTP Request Headers
J2EE Servlet Security APIs

Cams JAAS Login Modules

Cams and JAAS
Conceptual Overview
Create a New Cams JAAS Login Module
Copy XmlLoginModule
Modify MyLoginModule
Setup state in the initialize method
Add authentication calls to the login method
Add Principals and Credentials to the Subject in the commit method
Conditional clean up in the abort method
Final clean up in logout method
Test MyLoginModule
Deploy MyLoginModule
Cams JAAS Callback Handlers
Conceptual Overview
Create a New Callback Handler
Copy the NamePasswordCallbackHandler
Modify MyCallbackHandler
Test MyCallbackHandler
Deploy MyCallbackHandler

Cams Access Control Rules

Overview of Cams Access Control Rules
Access Control Rules API Reference
Access Control Rules API Classes Overview
Access Control Rules Persistence
Access Control Rules Multithreading Considerations
Create New Access Control Rules
Step 1 - Create an AccessControlRule class
Step 2 - Create an AccessControlRulePersistenceManager class
Step 3 - Register the AccessControlRule XML element tree with Cams
a - Create/install an XML DTD
b - Register the new XML elements
c - Install the compiled classes
Step 4 - Declare your AccessControlRule type
Step 5 - Create an instance of your AccessControlRule
Step 6 - Test your new AccessControlRule
References

Programming Cams Sessions

Overview of the Cams Session API
Cams Session API Reference
Cams ManagedSession API Classes
Example Cams ManagedSessionEventHandler

Programming Cams Services

Overview of Cams Services
Cams Services API Reference
Overview of Cams Service API Classes
Programming with Cams Services
Step 1 - Writing the Cams service interface
Step 2 - Writing the Cams service implementation class
Step 3 - Compiling and deploying the classes to the Cams Policy Server classpath
Step 4 - Registering the service with a Cams security domain
Step 5 - Finding and using a Cams service from other components
Step 6 - Starting or restarting the Cams policy server to load the service
Enabling the Cams Text Notifier Service Example

Programming Cams Agents

Programming Languages and Network Protocol Support
Using the CamsClient
Creating a CamsClient
Creating a Config Object
Loading Configuration Properties from a File
Creating a Logger
Creating and Initializing a CamsClient
Connecting to the Cams Policy Server(s)
Configuring the Cams Policy Server URL(s)
Configuring the Cams Policy Server Cluster Name
Configuring the Number of Connections per Policy Server
Configuring the Number of Message Sockets per Connection
Configuring the Client Authentication Credentials
Configuring Secret Key Parameters
Handling ConnectionExceptions
Testing the CamsClient Connection State
Finding a Cams Service
Disconnecting from the Cams Policy Server
Destroying the CamsClient
Using the AuthenticationService
Exception Handling while Executing an Authentication Request
Handling the Authentication Response
Using the AccessControlService
Creating a ResourceRequestFactory
Executing an Access Control Check
Exception Handling while Executing an Access Control Check
Handling the AccessControlResponse
Handling AccessControlResponse Obligations
Using the SessionAccessService
Using the SessionControlService
Using the PingService
Appendix
Cams Authentication Pipeline
Glossary

Back | Next | Contents