Salesforce
Salesforce connections to the CipherTrust Manager can be configured using the following:
Managing Salesforce Connections using GUI
Username - username to access the Salesforce server.
Client ID - application ID of the Salesforce application. It can be used either with Client Secret or Certificate to authenticate the application.
Note
The Salesforce Connection Manager does not allow using one client id for multiple connections for certificate based authentication. This limitation exists because the Salesforce server allows only one certificate for a client id at any given time.
However, if client credential based authentication is used, multiple connections are allowed with one client id.Cloud Name - the name of the Salesforce cloud to connect to. Currently, only the following options are available:
Salesforce Sandbox Cloud
Salesforce Cloud
Authentication - you can use either Client Secret or Certificate for authentication purpose.
Client Secret – this authentication method uses the account password and the Client Secret for the given Client ID to enable the communication between Salesforce and the CipherTrust Manager.
Certificate - this authentication method is used to enable password-less communication between Salesforce and the CipherTrust Manager. To do so:
Specify the Certificate Duration in Days ( 1 day to 10 years).
Note
The default certificate duration is 10 years.
Select the Certificate radio button and click the Generate and Download button.
Upload the downloaded certificate on Salesforce for the provided Client ID.
Once the upload is done, verify the Certificate Subject on the CipherTrust Manager and Salesforce, and both the Certificate Subjects must match.
Click Next to move to the next step.
Note
Currently, the only product supported for Salesforce connection is Cloud Key Manager.
Managing Salesforce Connections using ksctl
The following operations can be performed:
Create/Get/Update/Delete an Salesforce connection
List all Salesforce connections
Test an existing Salesforce connection
Test parameters for a Salesforce connection
Creating a Salesforce Connection
To create a Salesforce connection, run:
Syntax
ksctl connectionmgmt salesforce create --name <Connection-Name> --products <Products-Names> --clientid <Salesforce-Key-ID> --username <Salesforce-Client-Secret> --cloudname <Salesforce-Cloud-Name> --use-certificate <yes/y>
Example Request
ksctl connectionmgmt salesforce create --name "salesforce-1" --products "cckm" --cloudname "Salesforce Sandbox Cloud" --clientid 123456 --username "xyz@gmail.com" --use-certificate yes
Example Response
{
"id": "24e3172a-f413-4440-851d-41dda4be3866",
"uri": "kyloconnectionmgmt:connections:salesforce-1-24e3172a-f413-4440-851d-41dda4be3866",
"account": "kyloadmin:accounts:kylo",
"createdAt": "2021-08-12T11:41:25.621130969Z",
"updatedAt": "2021-08-12T11:41:25.620184543Z",
"service": "salesforce",
"category": "cloud",
"last_connection_ok": null,
"last_connection_at": "0001-01-01T00:00:00Z",
"name": "salesforce-1",
"products": [
"cckm"
],
"cloud_name": "Salesforce Sandbox Cloud",
"client_id": "123456",
"username": "xyz@gmail.com",
"certificate": "-----BEGIN CERTIFICATE-----\nMIIFvjCCA6agAwIBAgIRAPO1rJFvIa2vMxg8/kBv+bIwDQYJKoZIhvcNAQELBQAw\nfzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExETAPBgNVBAcTCFNh\nbiBKb3NlMQ8wDQYDVQQKEwZUaGFsZXMxFDASBgNVBAsTC0NpcGhlclRydXN0MSEw\nHwYDVQQDExhjY2ttLnRoYWxlc2VzZWN1cml0eS5jb20wHhcNMjEwODEyMTE0MTI1\nWhcNMzEwODEwMTE0MTI1WjB/MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZv\ncm5pYTERMA8GA1UEBxMIU2FuIEpvc2UxDzANBgNVBAoTBlRoYWxlczEUMBIGA1UE\nCxMLQ2lwaGVyVHJ1c3QxITAfBgNVBAMTGGNja20udGhhbGVzZXNlY3VyaXR5LmNv\nbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMmUZCVDih5P6tR/8pNV\nhn30kYyJl0aRRejeNZ1pOPqthqOyAbxvwBs5SPS40fjOrby2KpJ89LajCG9lWAPd\ngZyUnB6Wm0DVlefmH92moASlcYteRytGEkWJLFOaNkzswclDzuWGY4V25+6gBDV7\np6CbfcxDqHQVfPoiaplU/R019iL52eg8o002+xr6neSMTa517CPUp/ynAexRQrq/\n/q5t/d4LQ74g0sbq7OZpv4n1W7SIS8F8X5JebXRVjLQYnsn2Skblv5iwaPPdjBb+\nPtBCdIqooAO1rNBektW7jOsK/UB0/6SmDFavD3+xYIJBjpYBvx37Phx24AMwUYId\nlh8Jp94OXOEC2/6ypgBvZSIobHUZ2Pq8FvXvO7KNH3Zo1r7JQkb1vjEctr5v2X19\n1fp0mIW0vKrHQPzSMAHThRsNYkFGhMTficZsjhMIjeOtefuz0fzzmho58FxbL3JP\nH6GqY7daZcpUFwOTgPO8ginoZKNtfFrNoxuwl3dJlc5e9C4gWR+hirU66oYxbJsH\nFfyv135GkgY0Sqrffld7JTLBkPovRS9YYD9idIPBwuAI4c7A4BvTL38m4nd6AbFY\nOLIdVvnnS4vtURffb131ZsUdYAlkpJn5OCBhCTxCEl1F1usidI8TjUZsxVGUZ6Re\nWFU9edK5DlJcXUh9d6Ok7AfHAgMBAAGjNTAzMA4GA1UdDwEB/wQEAwIDiDATBgNV\nHSUEDDAKBggrBgEFBQcDAjAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4IC\nAQBkJt/jnVITmxNJ+StxZF3iza8GH4DF2pk1/gJo5Q8A1tyk+EDWkNpyFaYXG7gK\n0IG6u79Nz5YhDGKTRdLgVi8+ApnvgBoYLOxdx89TvRJzbvIwC1SfKF9w4JID5rmB\nv28o6sP9bk6PRcE2kbaiX1IYjGJw4xeLBUaoB2WEG24PfYPqdxr/pa0cfbBFc10s\nZ+5+Xe0XBmYUMiu25YcdHI97u5n7U6+6gBE+lyzVptlXNTJPDwf/fcOqzp6jJlFu\nzRsPbts9O8DbTdGfuzBJfxbObDEWPDa+TX0Be70AiP9gLKSLMeX4xQypGE2umkPG\nj7sWcJuC8T1SXsbxIVNyBQu6cSZvkLJmlnQGbo3W71oRkMc4r1n0BSHYbFKa/h2/\nVGm0zhyGmXFazkWWXExXno1Z11gO6kODVDgvkbeuRAJANJuN3wOLEqLCMJFYORIN\ndFjY/RAJU38oEkGvwq3s9tFIKUk4OaOG45+eIywKC/7bQSq/v3VAP07an4VrDdS6\nTxeHQzVLMar9lHiyBf7D2FsLj0lhLCAVAUd8sRjw3Trcr8k1NTzJNstWNkxTAaKN\nIwZf9lMFR/HU9tH8LMDV1PCsxLLM85zwbj/0wmlMzqF7/P8NwQoatlADmaAo3S/q\nx+3xUo+zZVfaYq1UQhNgjRB0Jq1QAqxJAzRDlBud2d25Cw==\n-----END CERTIFICATE-----\n",
"certificate_subject": "CN=cckm.thalesesecurity.com,OU=CipherTrust,O=Thales,L=San Jose,ST=California,C=US"
}
Getting Details of a Salesforce Connection
To get details of a Salesforce connection, run:
Syntax
ksctl connectionmgmt salesforce get --id <Connection-Name/ID>
Example Request
ksctl connectionmgmt salesforce get --id 5818ec3d-c5e9-4039-b911-efd45cb08f88
Example Response
{
"id": "5818ec3d-c5e9-4039-b911-efd45cb08f88",
"uri": "kylo:kylo:connectionmgmt:connections:salesforce-1-5818ec3d-c5e9-4039-b911-efd45cb08f88",
"account": "kylo:kylo:admin:accounts:kylo",
"createdAt": "2021-08-10T10:21:29.967822Z",
"updatedAt": "2021-08-10T10:21:29.966606Z",
"service": "salesforce",
"category": "cloud",
"last_connection_ok": null,
"last_connection_at": "0001-01-01T00:00:00Z",
"name": "salesforce-1",
"products": [
"cckm"
],
"cloud_name": "Salesforce Sandbox Cloud",
"client_id": "3bf0dbe6-a2c7-431d-9a6f-4843b74c7e12",
"username": "xyz@gmail.com"
}
Updating a Salesforce Connection
To update a Salesforce connection, run:
Syntax
ksctl connectionmgmt salesforce modify --id <Connection-Name/ID> --products <Products-Names> --clientid <Salesforce-Key-ID> --secret <Salesforce-Client-Secret> --meta <Key:Values>
Example Request
ksctl connectionmgmt salesforce modify --id 5818ec3d-c5e9-4039-b911-efd45cb08f88 --username abcd@gmail.com
Example Response
{
"id": "5818ec3d-c5e9-4039-b911-efd45cb08f88",
"uri": "kylo:kylo:connectionmgmt:connections:salesforce-1-5818ec3d-c5e9-4039-b911-efd45cb08f88",
"account": "kylo:kylo:admin:accounts:kylo",
"createdAt": "2021-08-10T10:21:29.967822Z",
"updatedAt": "2021-08-10T10:25:06.228123698Z",
"service": "salesforce",
"category": "cloud",
"last_connection_ok": null,
"last_connection_at": "0001-01-01T00:00:00Z",
"name": "salesforce-1",
"products": [
"cckm"
],
"cloud_name": "Salesforce Sandbox Cloud",
"client_id": "3bf0dbe6-a2c7-431d-9a6f-4843b74c7e12",
"username": "abcd@gmail.com"
}
Deleting a Salesforce Connection
To delete a Salesforce connection, run:
Syntax
ksctl connectionmgmt salesforce delete --id <Connection-Name/ID>
Example Request
ksctl connectionmgmt salesforce delete --id c4a11fc1-d226-4f19-8d03-5911198e89e5
Example Response
There will be no response if Salesforce connection is deleted successfully.
Getting List of Salesforce Connections
To list all the Salesforce connections, run:
Syntax
ksctl connectionmgmt salesforce list
Example Request
ksctl connectionmgmt salesforce list
Example Response
{
"skip": 0,
"limit": 10,
"total": 1,
"resources": [
{
"id": "5818ec3d-c5e9-4039-b911-efd45cb08f88",
"uri": "kylo:kylo:connectionmgmt:connections:salesforce-1-5818ec3d-c5e9-4039-b911-efd45cb08f88",
"account": "kylo:kylo:admin:accounts:kylo",
"createdAt": "2021-08-10T10:21:29.967822Z",
"updatedAt": "2021-08-10T10:21:29.966606Z",
"service": "salesforce",
"category": "cloud",
"last_connection_ok": null,
"last_connection_at": "0001-01-01T00:00:00Z",
"name": "salesforce-1",
"products": [
"cckm"
],
"cloud_name": "Salesforce Sandbox Cloud"
}
]
}
Testing an Existing Salesforce Connection
To test an existing Salesforce connection, run:
Syntax
ksctl connectionmgmt salesforce test --id <Connection-Name/ID>
Example Request
ksctl connectionmgmt salesforce test --id 5087c384-43aa-4750-951e-3a0f2b60d43b
Example Response
{
"connection_ok": true,
}
Testing Parameters for a Salesforce Connection
To test parameters for a Salesforce connection, run:
Syntax
ksctl connectionmgmt salesforce test --id <Connection-Name/ID> --clientid <Salesforce-Key-ID> --secret <Salesforce-Client-Secret>
Example Request
ksctl connectionmgmt salesforce test --clientid 3bf0dbe6-a2c7-431d-9a6f-4843b74c7e12 --secret BC0556E7A0B4C96E218EF91370C5B --username salesforce-1 --conn-password 123456 --cloudname "Salesforce Sandbox Cloud"
Example Response
{
"connection_ok": true,
}