SSLMigrationCommands (AdminTask)
We can use the Jython or Jacl scripting languages to migrate key store configurations. Use the commands in the SSLMigrationCommands group to convert self-signed certificates to chained personal certificates and to enable writable key rings.
The SSLMigrationCommands (AdminTask) includes the following commands:
- convertSelfSignedCertificatesToChained command
- enableWritableKeyrings command
- convertSSLConfig command
convertSelfSignedCertificatesToChained command
The convertSelfSignedCertificatesToChained command converts specific self-signed certificates to chained personal certificates.
Chained certificates are the default certificate type in Websphere Application Server Version 7.0. The convertSelfSignedCertificatesToChained command takes information from the self-signed certificate—such as issued-to DN, size, and life span—and creates a chained certificate with the same information. The new chained certificate replaces the self-signed certificate. Signer certificates from the self-signed certificate that are distributed across the security configuration are replaced with the signer certificates from the root certificate used to sign the chained certificate.
Syntax
The command has the following syntax:
wsadmin>$AdminTask convertSelfSignedCertificatesToChained [-certificateReplacementOption ALL_CERTIFICATES | DEFAULT_CERTIFICATES | KEYSTORE_CERTIFICATES] [-keyStoreName keystore_name] [-keyStoreScope keystore_scope] [-rootCertificateAlias alias_name]Required parameters
- certificateReplacementOption
- Convert self-signed certificates replacement options. (String, required)
Specify the value for the parameter as one of the following options:
- ALL_CERTIFICATES
This option looks for all self-signed certificates in all keystores with in the specified scope.
The scope can be provided in the -keyStoreScope parameter. If no scope is provided using the -keyStoreScope parameter, all scopes are visited.
- DEFAULT_CERTIFICATES
This option looks for self-signed certificates in the default CellDefaultKeyStore and NodeDefaultKeyStore keystores within the specified scope.
The scope can be provided with the -keyStoreScope parameter. If no scope is provided using the -keyStoreScope parameter, all scopes are visited.
- KEYSTORE_CERTIFICATES
This option replaces only those self-signed certificates in the keystore specified by the -keyStoreName parameter.
If no scope is provided using the -keyStoreScope parameter, the default scope is used.
Optional parameters
- keyStoreName
- Name of a keystore in which to look for self-signed certificates to convert. Use this parameter with the KEYSTORE_CERTIFICATES option on the certificateReplacementOption parameter. (String, optional)
- keyStoreScope
- Name of the scope in which to look for the self-signed certificates to convert. (String, optional)
- rootCertificateAlias
- Root certificate to use from the default root store used to sign the chained certificate. The default value is root. (String, optional)
Examples
Batch mode example:
Jacl:
$AdminTask convertSelfSignedCertificatesToChained {-certificateReplacementOption ALL_CERTIFICATES -keyStoreName testKS}
Jython string...
AdminTask.convertSelfSignedCertificatesToChained('[-certificateReplacementOption ALL_CERTIFICATES -keyStoreName testKS]')
Jython list:
AdminTask.convertSelfSignedCertificatesToChained(['-certificateReplacementOption', 'ALL_CERTIFICATES', '-keyStoreName', 'testKS'])
Avoid trouble: To ensure the migration is successful, go to security.xml and change the default of dynamicallyUpdateSSLConfig to false in the file. For more information, see the Dynamic configuration updates in SSL topic in the information center.gotcha
Interactive mode:
Jacl:
$AdminTask exchangeSigners {-interactive}
Jython:
AdminTask.exchangeSigners('-interactive')
enableWritableKeyrings command
The enableWritableKeyrings command modifies the keystore and enables writable SAF support. The system uses this command during migration. The command creates additional writable keystore objects for the control region and servant region key rings for SSL keystores.
Required parameters
- -keyStoreName
- Name that uniquely identifies the keystore to delete. (String, required)
Optional parameters
- -controlRegionUser
- Control region user to use to enable writable key rings. (String, optional)
- -servantRegionUser
- Servant region user to enable writable key rings. (String, optional)
- -scopeName
- Name that uniquely identifies the management scope, for example: (cell):localhostNode01Cell. (String, optional)
Examples
Batch mode example:
Jython string...
AdminTask.enableWritableKeyrings('[-keyStoreName testKS -controlRegionUser CRUser1 -servantRegionUser SRUser1]')
Jython list:
AdminTask.enableWritableKeyrings(['-keyStoreName', 'testKS', '-controlRegionUser', 'CRUser1', '-servantRegionUser', 'SRUser1'])
Interactive mode:
Jython:
AdminTask.enableWritablekeyrings('-interactive')
convertSSLConfig command
The convertSSLConfig command migrates existing SSL configurations to the new configuration object format for SSL configurations.
Required parameters
- -sslConversionOption
- How the system converts the SSL configuration. Specify the CONVERT_SSLCONFIGS value to convert the SSL configuration objects from the previous SSL configuration object to the new SSL configuration object. Specify the CONVERT_TO_DEFAULT value to convert the SSL configuration to a centralized SSL configuration, which also removes the SSL configuration direct referencing from the servers.
Optional parameters None.
Examples
Batch mode example:
Jython string...
AdminTask.convertSSLConfig('[-keyStoreName testKS -controlRegionUser CRUser1 -servantRegionUser SRUser1]')
Jython list:
AdminTask.convertSSLConfig(['-keyStoreName', 'testKS', '-controlRegionUser', 'CRUser1', '-servantRegionUser', 'SRUser1'])
Interactive mode:
Jython:
AdminTask.convertSSLConfig('-interactive')
Related concepts
Dynamic configuration updates in SSL Key management for cryptographic uses
Related tasks
Use the wsadmin scripting AdminTask object for scripted administration Automating SSL configurations Create an SSL configuration at the node scope
KeyStoreCommands (AdminTask)