Create CA

Prev Next

Classic/VPC環境で利用できます。

証明書を発行できるようにプライベート CA(ルート CA、中間 CA)を作成します。

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
POST /api/v1/ca

リクエストヘッダ

Private CA APIで共通して使用されるヘッダの詳細は、Private CAのリクエストヘッダをご参照ください。

リクエストクエリパラメータ

リクエストクエリパラメータの説明は次の通りです。

フィールド タイプ 必須の有無 説明
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.contry String Optional 標準国コード
x509Parameters.locality String Optional 都市名
  • 0~128文字
  • <例> Seoul
x509Parameters.stateProvince String Optional 州/道または地域名
  • 0~128文字
  • <例> Gyeonggi-do
x509Parameters.organization String Optional 組織名
  • 0~64文字
x509Parameters.organicationUnit 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.contry String - 標準国コード
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.organicationUnit 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のレスポンスステータスコードをご参照ください。

レスポンス例

レスポンスのサンプルコードは次の通りです。

{
    "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"
        }
    }
}