--- title: "Create CA" slug: "security-privateca-createca" tags: ["Private CA"] updated: 2026-10-08T07:22:01Z published: 2026-10-08T07:22:01Z canonical: "api.ncloud-docs.com/security-privateca-createca" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Create CA Classic/VPC環境で利用できます。 証明書を発行できるようにプライベート CA(ルート CA、中間 CA)を作成します。 ## リクエスト リクエスト形式を説明します。リクエスト形式は次の通りです。 | メソッド | URI | | --- | --- | | POST | /api/v1/ca | ### リクエストヘッダ Private CA APIで共通して使用されるヘッダの詳細は、[Private CAのリクエストヘッダ](/docs/ja/security-privateca#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)をご参照ください。 ### リクエストクエリパラメータ リクエストクエリパラメータの説明は次の通りです。 | フィールド | タイプ | 必須の有無 | 説明 | | --- | --- | --- | --- | | `issuerTag` | String | Optional | 上位 CAタグ | | `caType` | String | Required | 作成する CAタイプ - `PRIVATE_ROOT` \| `PRIVATE_SUB` - `PRIVATE_ROOT`: ルート CA - `PRIVATE_SUB`: 中間 CA | ### リクエストボディ リクエストボディの説明は次の通りです。 | フィールド | タイプ | 必須の有無 | 説明 | | --- | --- | --- | --- | | `alias` | String | Required | CA名 - 英数字、記号の「-」、「_」、を組み合わせて3~15文字以内で入力 - 先頭文字は英字のみ使用 | | `memo` | String | Optional | CAメモ | | `keyType` | String | Required | キータイプ - `RSA2048` \| `RSA4096` \| `EC256` \| `EC521` | | `period` | String | Required | 有効期限(日) - 1~3650 - 最大有効期限に設定するには、`MAX`と入力 | | `x509Parameters` | Object | Required | 高度な設定情報 | | `x509Parameters.commonName` | String | Required | 一般名 - 1~64文字 | | `x509Parameters.altName` | String | Optional | DNS/Email SANs - ドメイン/ホスト名またはメール形式で入力 | | `x509Parameters.ip` | String | Optional | IP SANs - IPアドレス形式で入力 | | `x509Parameters.country` | String | Optional | 標準国コード - [ISO 3166-1 alpha-2](https://ko.wikipedia.org/wiki/ISO_3166-1_alpha-2)を参照 | | `x509Parameters.locality` | String | Optional | 都市名 - 0~128文字 - 例) `Seoul` | | `x509Parameters.stateProvince` | String | Optional | 州/道または地域名 - 0~128文字 - 例) `Gyeonggi-do` | | `x509Parameters.organization` | String | Optional | 組織名 - 0~64文字 | | `x509Parameters.organizationUnit` | String | Optional | 部署名 - 0~128文字 | ### リクエスト例 リクエストのサンプルコードは次の通りです。 ``` curl --location --request POST 'https://pca.apigw.ntruss.com/api/v1/ca?caType=PRIVATE_ROOT' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \ --header 'Content-Type: application/json' \ --data '{ "alias": "CA002", "keyType": "RSA2048", "period": "MAX", "x509Parameters": { "commonName": "name000", "country": "KOR", "organization": "org000", "organizationUnit": "org001", "locality": "Pangyo", "stateProvince": "Seongnam-si" } }' ``` ## レスポンス レスポンス形式を説明します。 ### レスポンスボディ レスポンスボディの説明は次の通りです。 | フィールド | タイプ | 必須の有無 | 説明 | | --- | --- | --- | --- | | `code` | String | - | レスポンスコード | | `msg` | String | - | レスポンスメッセージ | | `data` | Object | - | レスポンス結果 | | `data.caInfo` | Object | - | CA情報 | | `data.caInfo.signingCount` | Number | - | CAで署名した証明書の数 | | `data.caInfo.caType` | String | - | CAタイプ - `PRIVATE_ROOT` \| `PRIVATE_SUB` | | `data.caInfo.caId` | Number | - | CA識別子 | | `data.caInfo.statusUpdateDate` | String | - | 最終状態更新日時 - Timestamp形式 | | `data.destroyDate` | String | - | 削除日時 - Timestamp形式 | | `data.caInfo.alias` | String | - | CA名 | | `data.caInfo.memo` | String | - | CAメモ | | `data.caInfo.urlInfo` | Object | - | URL情報 | | `data.caInfo.urlInfo.ocsp` | Array | - | OCSP(オンライン証明書状態プロトコル) URL | | `data.caInfo.urlInfo.crl` | Array | - | CRL(証明書失効リスト) URL | | `data.caInfo.urlInfo.ca` | Array | - | CA URL | | `data.caTag` | String | - | CAのタグ | | `data.rgstDate` | Number | - | 登録日時 - Timestamp形式 | | `data.status` | String | - | CAの状態 - `ACTIVE` \| `DEACTIVATED` \| `DESTROYING` - `ACTIVE`: 有効化 - `DEACTIVATED`: 無効化 - `DESTROYING`: 削除予定 | | `data.caCertInfo` | Object | - | CA証明書情報 | | `data.caCertInfo.commonName` | String | - | 一般名 | | `data.caCertInfo.country` | String | - | 標準国コード - [ISO 3166-1 alpha-2](https://ko.wikipedia.org/wiki/ISO_3166-1_alpha-2)を参照 | | `data.caCertInfo.issueName` | String | - | 発行 CA名 | | `data.caCertInfo.notAfterDate` | Long | - | 証明書の期限切れ日時 - Timestamp形式 | | `data.caCertInfo.publicKeyAlgorithm` | String | - | 暗号化アルゴリズム | | `data.caCertInfo.notBeforeDate` | Long | - | 証明書の有効開始日時 - Timestamp形式 | | `data.caCertInfo.locality` | String | - | 都市名 | | `data.caCertInfo.stateProvince` | String | - | 州/道または地域名 | | `data.caCertInfo.organizationUnit` | String | - | 部署名 | | `data.caCertInfo.certPem` | String | - | CA証明書(PEM) | | `data.caCertInfo.chainPem` | String | - | 証明書チェーン(PEM) | | `data.caCertInfo.signatureAlgorithm` | String | - | 署名アルゴリズム | | `data.caCertInfo.serialNo` | String | - | 証明書のシリアル番号 | | `data.caCertInfo.caCertId` | Long | - | 証明書の識別子 | | `data.caCertInfo.organization` | String | - | 組織名 | ### レスポンスステータスコード Private CA APIで共通して使用されるレスポンスステータスコードの詳細は、[Private CAのレスポンスステータスコード](/docs/ja/security-privateca#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)をご参照ください。 ### レスポンス例 レスポンスのサンプルコードは次の通りです。 ``` { "code": "SUCCESS", "msg": "Success", "data": { "caInfo": { "signingCount": 0, "caType": "PRIVATE_ROOT", "caId": 17***, "statusUpdateDate": null, "destroyDate": null, "alias": "CA002", "memo": "", "urlInfo": { "ocsp": [], "crl": [ "https://pca.apigw.ntruss.com/ext/********-********/crl" ], "ca": [ "https://pca.apigw.ntruss.com/ext/********-********/ca" ] }, "caTag": "********-********", "rgstDate": 1721175807574, "status": "ACTIVE" }, "caCertInfo": { "commonName": "name000", "country": "KOR", "issuerName": "name000", "notAfterDate": 2036535807000, "publicKeyAlgorithm": "RSA", "notBeforeDate": 1721175777000, "locality": "Pangyo", "stateProvince": "Seongnam-si", "organizationUnit": "org001", "certPem": "-----BEGIN CERTIFICATE-----\n{Certificate}\n-----END CERTIFICATE-----", "chainPem": "-----BEGIN CERTIFICATE-----\n{CA Chain}\n-----END CERTIFICATE-----", "signatureAlgorithm": "SHA256withRSA", "serialNo": "**:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**", "caCertId": 17***, "organization": "org000" } } } ```