Help Center/
Cloud Certificate Manager/
Best Practices/
Best Practices for Private Certificate Management/
Best Practices of PCA Code Examples/
Example Code for Managing Private CAs/
Exporting a CA
Updated on 2024-12-17 GMT+08:00
Exporting a CA
You can export a private CA certificate, including the certificate body and certificate chain.
A root certificate is self-signed, and the certificate chain is null.
For details, see Parameters for Exporting a CA.
import com.huaweicloud.sdk.ccm.v1.CcmClient; import com.huaweicloud.sdk.ccm.v1.model.ExportCertificateAuthorityCertificateRequest; import com.huaweicloud.sdk.ccm.v1.model.ExportCertificateAuthorityCertificateResponse; import com.huaweicloud.sdk.core.auth.GlobalCredentials; /** * Export a CA certificate, including the certificate body and certificate chain. A root CA certificate is self-signed, so the certificate chain is null. */ public class ExportCertificateAuthorityExample { /** * Basic authentication information: * - ACCESS_KEY: access key of the Huawei Cloud account * - SECRET_ACCESS_KEY: secret access key of the Huawei Cloud account * - DOMAIN_ID: Huawei Cloud account ID. * - CCM_ENDPOINT: Endpoint address for accessing Huawei Cloud CCM (PCA is included in CCM). ......*Hard-coded or plaintext AK and SK are risky. For security, encrypt your AK and SK and store them in the configuration file or environment variables. * In this example, the AK and SK are stored in environment variables for identity authentication. Before running this example, configure environment variables HUAWEICLOUD_SDK_AK and HUAWEICLOUD_SDK_SK. */ private static final String ACCESS_KEY = System.getenv("HUAWEICLOUD_SDK_AK"); private static final String SECRET_ACCESS_KEY = System.getenv("HUAWEICLOUD_SDK_SK"); private static final String DOMAIN_ID = "<DomainID>"; private static final String CCM_ENDPOINT = "<CcmEndpoint>"; public static void main(String[] args) { // 1. Prepare the credentials for accessing Huawei Cloud. PCA is a global service. final GlobalCredentials auth = new GlobalCredentials() .withAk(ACCESS_KEY) .withSk(SECRET_ACCESS_KEY) .withDomainId(DOMAIN_ID); // 2. Initialize the SDK and transfer the credentials and endpoint address of CCM. final CcmClient ccmClient = CcmClient.newBuilder() .withCredential(auth) .withEndpoint(CCM_ENDPOINT).build(); // 3. Make request parameters. //ID of the CA certificate you want to export. String caId = "3a02c7f6-d8f5-497e-9f60-18dfd3eeb4e6"; // 4. Construct a request body. ExportCertificateAuthorityCertificateRequest request = new ExportCertificateAuthorityCertificateRequest() .withCaId(caId); // 5. Start to send the request. ExportCertificateAuthorityCertificateResponse response; try { response = ccmClient.exportCertificateAuthorityCertificate(request); } catch (Exception e) { throw new RuntimeException(e.getMessage()); } // 6. Obtain the response message. // (1) Obtain the certificate body in PEM format. String caCertificate = response.getCertificate(); // (2) Obtain the certificate chain in PEM format. String caCertificateChain = response.getCertificateChain(); System.out.println(response); } }
Parent topic: Example Code for Managing Private CAs
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
The system is busy. Please try again later.
For any further questions, feel free to contact us through the chatbot.
Chatbot