
Upload a trust store certificate - go
Import TLS certificate from a single self-contained PEM file to the truststore.
(mqcloud *MqcloudV1) CreateTrustStorePemCertificate(createTrustStorePemCertificateOptions *CreateTrustStorePemCertificateOptions) (result *TrustStoreCertificateDetails, response *core.DetailedResponse, err error)
(mqcloud *MqcloudV1) CreateTrustStorePemCertificateWithContext(ctx context.Context, createTrustStorePemCertificateOptions *CreateTrustStorePemCertificateOptions) (result *TrustStoreCertificateDetails, response *core.DetailedResponse, err error)
Request
Instantiate the CreateTrustStorePemCertificateOptions struct and set the fields
to provide parameter values for the CreateTrustStorePemCertificate method.
| parameter | WithContext method only |
|---|---|
ctxContext
|
A context.Context instance that you can use to specify a timeout for the operation or to cancel an in-flight request. |
| CreateTrustStorePemCertificateOptions | The CreateTrustStorePemCertificate options. |
|---|---|
ServiceInstanceGuidRequired*
string |
The GUID that uniquely identifies the IBM® MQ as a Service instance. Possible values: length = 36, Value must match regular expression
Example: |
QueueManagerIDRequired*
string |
The id of the queue manager to retrieve its full details. Possible values:
length = 32, Value must match regular expression
b8e1aeda078009cf3db74e90d5d42328 |
LabelRequired*
string |
The label to use for the certificate to be uploaded. Possible values: 1 ≤
length ≤ 64, Value must match regular expression
certlabel |
CertificateFileRequired*
io.ReadCloser |
The filename and path of the certificate to be uploaded. Possible values: 1500 ≤ length ≤ 65537 Examples:[B@36ab3814 |
Example request
createTrustStorePemCertificateOptions := mqcloudService.NewCreateTrustStorePemCertificateOptions(
"a2b4d4bc-dadb-4637-bcec-9b7d1e723af8",
"b8e1aeda078009cf3db74e90d5d42328",
"certlabel",
CreateMockReader("This is a mock file."),
)
trustStoreCertificateDetails, response, err := mqcloudService.CreateTrustStorePemCertificate(createTrustStorePemCertificateOptions)
if err != nil {
panic(err)
}
b, _ := json.MarshalIndent(trustStoreCertificateDetails, "", " ")
fmt.Println(string(b))
Response
| TrustStoreCertificateDetails | The details of a trust store certificate in a queue manager certificate trust stor |
|---|---|
IDAlways included*
string |
Id of the certificate. Possible values: 1 ≤ length ≤ 16, Value must match regular expression
|
LabelAlways included*
string |
Certificate label in queue manager store. Possible values: 1 ≤ length ≤ 64, Value must match regular expression
|
CertificateType
Always included*
string |
The type of certificate. Possible values: [ |
FingerprintSha256Always included*
string |
Fingerprint SHA256. Possible values: Value must match regular expression
|
SubjectDn
Always included*
string |
Subject's Distinguished Name. |
SubjectCn
Always included*
string |
Subject's Common Name. |
IssuerDnAlways included*
string |
Issuer's Distinguished Name. |
IssuedAlways included*
date-time |
The Date the certificate was issued. |
ExpiryAlways included*
date-time |
Expiry date for the certificate. |
TrustedAlways included*
boolean |
Indicates whether a certificate is trusted. |
HrefAlways included*
string |
The URL for this trust store certificate. |
| Status code | |
|---|---|
| 201 | An object containing details of the uploaded trust store certificate |
| 301 | URI has permanently Moved |
| 400 | Bad Request |
| 401 | Unauthorized |
| 405 | Method not allowed |
| 409 | Conflict |
| 429 | Service Is Overused |
| 500 | Internal Server Error |
| 503 | Service Unavailable Error |
Example response
Success example
{
"id": "693d09e6f00e89d",
"label": "qmgrcert",
"certificate_type": "trust_store",
"fingerprint_sha256": "BB:C2:09:2B:0C:68:EC:D2:1A:09:DA:F7:51:8D:29:F3:64:88:21:65:40:02:BD:20:1B:11:91:50:8D:90:8B:66",
"subject_dn": "CN=*.qm1.eu-de.mq.appdomain.cloud",
"subject_cn": "*.qm1.eu-de.mq.appdomain.cloud",
"issuer_dn": "CN=R3,O=Let's Encrypt,C=US",
"issuer_cn": "R3",
"issued": "2023-05-29T11:17:00Z",
"expiry": "2023-08-27T11:16:59Z",
"trusted": true,
"href": "https://api.private.eu-de.mq2.cloud.ibm.com/v1/a2b4d4bc-dadb-4637-bcec-9b7d1e723af8/queue_managers/b8e1aeda078009cf3db74e90d5d42328/certificates/trust_store/693d09e6f00e89d"
}