Configure Kerberos Authentication REST Service

Use the Configure Kerberos Authentication REST Service to configure IBM® Security Guardium® Key Lifecycle Manager to use Kerberos as the authentication mechanism with the Db2® database.

Operation
POST
URL
https://host:port/SKLM/rest/v1/ckms/kerberos/configure

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
dbServiceName Specify the name of the Db2 service principal that you registered in the Kerberos database. For example, db2instance/FQDN_gklmserver@REALMNAME.
userId Specify the user ID or client principal that you registered in the Kerberos database to access the Db2 service. For example, klmdb42.
password Specify the password of the client principal.
kdcServer Specify the host name of the system on which the Kerberos or KDC server is installed.
realmName Specify the realm of the Kerberos server.

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 to indicate if the operation was successful.
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.

Example

To configure Kerberos authentication
POST https://localhost:9443/SKLM/rest/v1/ckms/kerberos/configure
{"dbServiceName":"klmdb42/gklmServer@EXAMPLE.COM","userId":"klmdb42", "password":"dbpassword","kdcServer":"kdc.example.com","realmName":"EXAMPLE.COM"} 
Success response
{
  "code": "CTGKM3561I",
  "status": "CTGKM3561I The Guardium Key Lifecycle Manager server is configured to use Kerberos authentication with the database. The Guardium Key Lifecycle Manager server is restarted and will be unavailable for a few minutes."
}
Error response
{
  "code": "CTGKM3573E",
  "message": "CTGKM3573E Failed to configure Kerberos because the server cannot connect to the Db2 database. Ensure that the client and service principals are registered with correct credentials in the Kerberos database."
}