Import EKMF Web Key Pair REST Service

Use the Import EKMF Web Key Pair REST Service to import EKMF Web server key pair to the GKLM keystore for mTLS authentication.

Operation
POST
URL
https://host:port/SKLM/rest/v1/ckms/masterKey/EKMFWeb/cert/import

By default, Guardium® Key Lifecycle Manager server listens to the secure port 9443 (HTTPS) for communication. During IBM® Security Guardium Key Lifecycle Manager installation, you can modify this default port.

Request

Request Parameters
Parameter Description
host Specify the IP address or hostname of the IBM Security Guardium Key Lifecycle Manager server.
port Specify the port number on which the IBM Security Guardium Key Lifecycle Manager server listens for requests.
Request Headers
Header name Value
Content-Type application/json
Accept application/json
Authorization SKLMAuth userAuthId=<authIdValue>
Accept-Language Any valid locale that is supported by IBM Security Guardium Key Lifecycle Manager. For example, en or de.
Request body

JSON Object with the following specification.

JSON property name Description
fileName Specify the file name in P12 format. The file is uploaded to the SKLM_DATA folder.
password Specify the password for the P12 file if it exists.
sourceAlias Specify the source alias of the certificate and key in P12 file.
destAlias Specify the new alias of the key pair to be stored in IBM Security Guardium Key Lifecycle Manager keystore. By default, ekmfweb is used as the alias. If this is changed, make sure to update the ekmfweb.keyAlias configuration property with same name.

Response

Response Headers
Header name Value and description
Status Code
200 OK
The request was successful. The response body contains the requested representation.
400 Bad Request
The authentication information was not provided in the correct format.
401 Unauthorized
The authentication credentials were missing or incorrect.
404 Not Found Error
The processing of the request fails.
500 Internal Server Error
The processing of the request fails because of an unexpected condition on the server.
Content-Type application/json
Content-Language Locale for the response message.
Success response body

JSON object with the following specification.

JSON property name Description
code Returns the code that is specified by the status property.
status Returns the status message that indicates whether the backup was successful.
-1
State is unknown. The task is not run since the last time the IBM Security Guardium Key Lifecycle Manager server started.
0
The backup task succeeded.
1
The backup task failed.
2
Backup task succeeded with a warning.
Error Response Body

JSON object with the following specification.

JSON property name Description
code Returns the application error code.
message Returns a message that describes the error.

Examples

To import the EKMF Web key pair, send this HTTP request:
POST https://host:port/SKLM/rest/v1/ckms/masterKey/EKMFWeb/cert/import

{
  "fileName": "ekmfsupplied.p12",
  "password": "file_password",
  "sourceAlias": "ekmfcert",
  "destAlias": "ekmfweb"
}
Success response
{
 "message": "CTGKM3333I Successfully imported the key with alias : $ekmfweb."
}
Invalid request example where the key pair details are incorrect:
POST https://host:port/SKLM/rest/v1/ckms/masterKey/EKMFWeb/cert/import
{
  "fileName": "ekmf.p12",
  "password": "pass",
  "sourceAlias": "ekmf",
  "destAlias": "ekmfweb"
}'
Error response
{
  "code": "CTGKM3506E",
  "message": "CTGKM3506E Cannot import file ${SKLM_DATA}/string. Ensure that you specify the correct file name and path."
}