Configuring WebSEAL for cryptographic hardware
About this task
1. Install the cryptographic card and device driver
About this task
2. Create a token device label and password to store WebSEAL keys
About this task
In the context of cryptographic hardware and the associated device drivers, a token is a logical device that acts as a "container" for storing key, data, and certificate objects. Key objects can include public keys and private keys. When you configure a cryptographic card to perform key storage (using the PKCS#11 interface), you must define one or more tokens (or "containers") that store keys for different situations.
When you configure a cryptographic card to perform key storage tasks for WebSEAL (GSKit), you must specify a token label (and password) that represents the token device that stores the WebSEAL public/private key pair. WebSEAL sends the public key in the server-side certificate that it uses to authenticate itself to any client.
Use the instructions provided with the installed cryptographic hardware to create a label for the token device that stores the WebSEAL key.
For example:
token = websealtoken
password = secret3. Configure iKeyman to use the PKCS#11 module
About this task
- The WebSEAL token label for the hardware device.
- The password or PIN for the token.
- The key label of any WebSEAL key stored on the device.
Procedure
Results
4. Use iKeyman to open the WebSEAL token device
Procedure
- Start the iKeyman utility that is packaged with the Java Runtime Environment version 6.0 or later.
- Select Key Database File, then Open.A separate Open dialog box displays.
- In the Open dialog window, select Cryptographic Tokens from the Key database type menu.
- If you have the cryptographic token specified in the
java.securityfile, the dialog box contains both the path and the library. If you do not see the library, you can use the Browse menu option. Click OK when this step is complete. - Additionally, if you want to open an existing secondary key database (for key data not stored on the cryptographic hardware-such as CA root certificates), check Open Existing Key Database.
- Browse for and select the default WebSEAL key database:UNIX™ or Linux
/var/pdweb/www-instance/certs/pdsrv.kdbWindowsC:\Program Files\Tivoli\pdweb\www-instance\certs\pdsrv.kdb - Click OK.The Token Password dialogue box displays.
- Enter the default password pdsrv. Click OK.
Results
5. Request and store the WebSEAL server certificate
Procedure
- Follow instructions in the IBM® Global Security Kit: Secure Sockets Layer Introduction and iKeyman User's Guide to request a secure, signed digital certificate for WebSEAL from a Certificate Authority (CA).
- Follow instructions in the IBM Global Security Kit: Secure Sockets Layer Introduction and iKeyman User's Guide to receive the WebSEAL certificate from the CA and store it in a key database. When performing this procedure, select the token device representing the cryptographic hardware as the storage location for the certificate.
Results
websealtoken:websealThe
WebSEAL key is stored on the cryptographic hardware and assigned to
the token device labeled "websealtoken".6. Configure WebSEAL and GSKit to use the PKCS#11 shared library
Procedure
7. Modify the WebSEAL server certificate label
About this task
Configure WebSEAL to use this new hardware-based key rather than the default key in its communications with browser clients. Modify the webseal-cert-keyfile-label stanza entry in the [ssl] stanza of the WebSEAL configuration file to designate the new key label.
[ssl]
webseal-cert-keyfile-label = <token-name>:<key-label>For this example:
[ssl]
webseal-cert-keyfile-label = websealtoken:webseal8. Configure WebSEAL for PKCS#11 symmetric algorithms
About this task
You can configure WebSEAL to support the GSKit option for using PKCS#11 for symmetric algorithms.
To enable PKCS#11 for symmetric algorithms, uncomment the pkcs11-symmetric-cipher-support stanza entry in the [ssl] stanza of the WebSEAL configuration file and set the value to "yes". For example:
[ssl]
pkcs11-symmetric-cipher-support = yesTo disable support for symmetric algorithms, uncomment the pkcs11-symmetric-cipher-support stanza entry in the [ssl] stanza of the WebSEAL configuration file and set the value to "no". For example:
[ssl]
pkcs11-symmetric-cipher-support = noThe PKCS#11 symmetric cipher support does not include removable devices. If a removable device is encountered, it is ignored even if the support has been requested. Additionally, not all devices support symmetric ciphers. Refer to the appropriate vendor documentation for the device you are using.
9. Restart WebSEAL
Procedure
- Restart WebSEAL for all cryptographic hardware configuration to take effect.
- Verify that WebSEAL is using the cryptographic hardware
by examining entries contained in the
msg_webseald.logfile.