Issue Certificate
The RA Profile serves as a single point of the particular certificate management service. The RA Profile is used to perform operations on top of the certificates.
This page covers immediate issuance — the Request now request type. The Add Certificate form also offers Pre-register, which registers a certificate to be issued later using a challenge secret. See Register Certificate for that flow.
Issue new certificate using the API
New Certificate can be issued using the Client Operations API. There may be some Attributes associated with the issuance of the Certificate. These Attributes represent requirements of some certification authority technology. We can get the list of Attributes for issuing of the Certificate using the following request:
curl -X GET \
--cacert [ca-cert] \
--cert [client-cert] \
--cert-type [type] \
-H "Accept: application/json" \
https://[domain]:[port]/api/v2/operations/authorities/e045a12a-e114-45ed-90b8-bac7e750e803/raProfiles/166b5cf5-63f2-11ec-90d6-0242ac120003/attributes/issue
#https://[domain]:[port]/api/v2/operations/authorities/{authorityUuid}/raProfiles/{raProfileUuid}/attributes/issue
This returns the list of applicable attributes to issue Certificate using the RA Profile service, such as:
[] // empty array of Attributes
Knowing the attributes, we can issue Certificate. The endpoint accepts two shapes of the request body:
- Uploaded CSR — provide the CSR as
request. The CSR is validated against the resolved request-attribute set of theRA Profile, in strict or lenient mode — see External CSR validation. - Platform-built request — provide the request-attribute values as
csrAttributestogether withtokenProfileUuidandkeyUuid. The platform builds and signs the CSR from the selected platform key.
The following request issues a Certificate with an uploaded CSR:
curl -X POST \
--cacert [ca-cert] \
--cert [client-cert] \
--cert-type [type] \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
--data '
{
"request": "MIICzTCCAbcCAQAwWjFYMAgGA1UEAwwBeDANBgkqhkiG9w0BCQETADAHBgNVBAsTADAHBgNVBAoTADAHBgNVBAkTADAHBgNVBAcTADAHBgNVBAgTADAHBgNVBBETADAHBgNVBAYTADCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANJ2sKsyNhQWrF3QTgJnL9GO8g4WEiJjlY6Cp6Q5dhUrjv6i2m0pL9uFovopbXkPCW8UuDda5ws79PRhRHEPhuPwdTy/UMXLYoiTnjAYP5jalp4UQ/di7tT5BBUxPPzGAMNWVw0IEKlgJnw67xqYP3nbY9u3LEcbBxfAadLR7RVQNJebyRVXLIWstWGMtuVoDcT+I8pdoLEuSlJE2RXiyPXZSvlm8m2qs5912zNbrA3Mi8b/jU/H+lbS5RZ/sphIhrgWpBH4nq8g95VYwcBNhhmcpyUDeeLDHhWpJwlx8p+g+At6u/PMnEvPfnlQ9MZaFTc6PWTKtGAE+lv0803TZjUCAwEAAaAwMC4GCSqGSIb3DQEJDjEhMB8wHQYDVR0OBBYEFEWyex+1M1ZaTYBL0ERQAnBSnld2MAsGCSqGSIb3DQEBCwOCAQEAWO1hjH5f0BPOnR0zmmmf8riNQGwTs+/ySCn5oMQjzoyNDHOB95ZdhYih7UM5u5LKJxEvrX2AJxeAttYsCZhjwkmUutzg6cWqhmpKTHVeRWpqD00u/FBy6hpUdhRCi4FEYIXTkjFnMzrp+M7bQmjuDKgFVO4NMwophKCJoJifh8JE1Fz2jmO/mixLyUAgFIAuC1Odxakx6wyQnwfwX3Xi2zQtHC/bTH2u8XqpPD+epWUqKK5P02vk2kPq2y6e1BpNl6vdvS6Qy73/qX34vIfwf3guJhp99oESmW4TkR3ccT1Dbv9JJCZoyvJ6RSUi+skz4IGQ6YqVDoRp+qREpW+Dlw==",
"attributes": []
}' \
https://[domain]:[port]/api/v2/operations/authorities/e045a12a-e114-45ed-90b8-bac7e750e803/raProfiles/166b5cf5-63f2-11ec-90d6-0242ac120003/certificates
#https://[domain]:[port]/api/v2/operations/authorities/{authorityUuid}/raProfiles/{raProfileUuid}/certificates
The issuance request is accepted and queued; it runs asynchronously, so the response returns only the certificate's uuid — the certificateData field is left empty and the signed certificate is not returned here:
{
"certificateData": "",
"uuid": "1a90cc6c-76e0-48cb-a027-e52a84c071c2"
}
Poll the certificate detail for that uuid until its state becomes Issued, then read the signed certificate from the detail response.
Upload existing certificate
Upload the existing certificate to the platform.
- Click Certificates in the left menu
- Click Upload Certificate (upload symbol )
- Upload the certificate (CRT file)
- Click Submit to upload the certificate to the platform
Create new certificate
Select the correct RA Profile and issue a new Certificate:
- Click Certificates in the left menu
- Click Add Certificate (plus symbol )
- Keep the request type Request now — the certificate request is submitted to the authority immediately
- Select the
RA Profile:ADCS-WebServer - Choose the Key Source:
- External — upload your own certificate request (CSR file)
- Existing Key — the platform builds and signs the request from a platform key: select the Token Profile and the Key, and fill the Signature Attributes tab. For a hybrid certificate, switch on Include Alternative Key, select the Alternative Token Profile and Alternative Key, and fill the Alternative Signature Attributes tab.
- With Existing Key, fill the Request Attributes tab — its values define the content of the certificate request
- Fill the Connector Attributes and Custom Attributes tabs, if needed
- Click Create
The Certificate has been created.
The Request Attributes tab shows the resolved set for the selected RA Profile. The tab title carries a red * when any attribute is required. Mapped fields show a badge next to the label — such as → Subject CN — indicating where the value lands in the certificate. See Request Attribute for the concept.
With the External key source, the uploaded CSR is validated against the profile's resolved request-attribute set, in strict or lenient mode — see External CSR validation. Violations appear in the red Compliance errors panel on the form.