Key Management Serviceの概要

Prev Next

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

Key Management Serviceは、暗号化の運用と具現化において必須要素の暗号キー管理機能を提供する NAVERクラウドプラットフォームのサービスです。Key Management Serviceは、暗号化と復号化をはじめとするいろいろなキー管理機能関連の APIを RESTful形式で提供します。

参考

2025年6月19日、リージョン隔離キー機能が API 2.0に追加されます。詳細は、Key Management Serviceの概念 > キー隔離をご参照ください。

  • 機能追加前に作成されて運用中のすべてのキーは自動的に全域(Global)キーに切り替わり、利用中の APIに変更はありません。
Key Management Service API 1.0 Key Management Service API 2.0
Base URL(ドメイン) https://kms.apigw.ntruss.com
  • 全域(GLOBAL): https://ocapi.ncloud.com
  • 隔離: 韓国(KR): https://ocapi-kr.ncloud.com
  • 隔離: 日本(JP): https://ocapi-jp.ncloud.com
APIの種類 暗号化、復号化 APIを6種類のみ提供
  • Encrypt、Decrypt、Create Custom Key、Re-encrypt、Sign、Verify
  • 暗号化、復号化 APIを6種類提供
    • Encrypt、Decrypt、Create Custom Key、Re-encrypt、Sign、Verify
  • コンソールから提供されるキー管理機能をすべて提供
認証方式 NAVERクラウドプラットフォームアカウント情報を利用したユーザー認証
  • アカウント認証 API: NAVERクラウドプラットフォームアカウント情報を利用したユーザー認証
  • トーク認証 API: キー認証トークン
リクエスト処理性能 Encrypt API (AES)基準でシステム最大200TPS
  • すべてのキーが200TPS処理性能を共有
Encrypt API (AES)基準でキー別に最大300TPS
  • すべてのキーに対しそれぞれ最大300TPSの処理性能を個別に保証
可用性を保証 リージョン限定高可用性(HA)
  • NAVERクラウドプラットフォームのリージョン障害時、暗号化、復号化、署名、検証などの APIに影響がある
リージョン限定またはクロスリージョン高可用性(HA)
  • 全域キー: クロスリージョン多重同期により、NAVERクラウドプラットフォームのリージョン障害により影響されず、暗号化、復号化、署名、検証などの APIの無停止動作を保証
  • リージョン隔離キー: 地域外への持ち出し制限のため、地域内の冗長性をサポート
リクエストアクセス制御 Sub Accountサービスが提供するサブアカウント単位の IP ACL機能を利用
  • Sub Accountサービスが提供するサブアカウント単位の IP ACL機能
  • トークン単位で設定可能な IP ACL

Key Management Service API 1.0の共通設定

Key Management Service API 1.0で共通して使用されるリクエスト形式とレスポンス形式を説明します。

リクエスト

共通リクエスト形式を説明します。

API URL

リクエスト API URLは次の通りです。

API Gateway request signature v1: https://kms.apigw.ntruss.com/keys/v1
API Gateway request signature v2: https://kms.apigw.ntruss.com/keys/v2

リクエストヘッダ

リクエストヘッダの説明は次の通りです。

  • API Gateway request signature v1方式のリクエスト

    フィールド 必須の有無 説明
    x-ncp-apigw-timestamp Required
    x-ncp-apigw-api-key Required
    x-ncp-iam-access-key Required
    x-ncp-apigw-signature-v1 Required
  • API Gateway request signature v2方式のリクエスト

    フィールド 必須の有無 説明
    x-ncp-apigw-timestamp Required
    x-ncp-iam-access-key Required
    x-ncp-apigw-signature-v2 Required

レスポンス

共通レスポンス形式を説明します。

レスポンスステータスコード

レスポンスステータスコードの説明は次の通りです。

HTTPステータスコード コード メッセージ 説明
200 - success 成功
参考

NAVERクラウドプラットフォームで共通して使用されるレスポンスステータスコードの詳細は、Ncloud APIのレスポンスステータスコードをご参照ください。

エラー構文

リクエスト処理結果エラー構文の説明は次の通りです。

フィールド タイプ 必須の有無 説明
error Object - エラー情報
error.errorCode String - エラーコード
error.message String - エラーメッセージ
error.details String - エラーの詳細情報
{
"error": {
"errorCode": "300",
"message": "Not Found Exception",
"details": "URL not found."
}
}

状態コードが200 OKの場合でも、結果として失敗したエラー構文の説明は次の通りです。

フィールド タイプ 必須の有無 説明
code String - エラーコード
msg String - エラーメッセージ
data Object - レスポンス結果
  • nullと表示
  • <例> 有効でないリクエストデータを入力

    {
    "code": "NOT_VALID_INPUT",
    "msg": "Fail: not valid input",
    "data": null
    }
    

Key Management Service API 2.0の共通設定

Key Management Service API 2.0で共通して使用されるリクエスト形式とレスポンス形式を説明します。

リクエスト

共通リクエスト形式を説明します。

API URL

リクエスト API URLは次の通りです。

https://ocapi.ncloud.com/kms/v1

リクエストヘッダ

リクエストヘッダの説明は次の通りです。

  • アカウント認証(Account Auth)方式のリクエスト

    フィールド 必須の有無 説明
    x-ncp-apigw-timestamp Required
    x-ncp-iam-access-key Required
    x-ncp-apigw-signature-v2 Required
  • トークン認証(Token Auth)方式のリクエスト

    フィールド 必須の有無 説明
    x-ncp-ocapi-token Required

レスポンス

共通レスポンス形式を説明します。

レスポンスステータスコード

レスポンスステータスコードの説明は次の通りです。

HTTPステータスコード コード メッセージ 説明
200 - - 正常
400 100 Bad Request リクエストエラー
401 - Authentication Failed 認証エラー
401 - Permission Denied 権限エラー
403 - Forbidden キーリソースにアクセス不可
404 300 Not Found キーリソースが存在しない
429 - Rate Limited リクエストの割り当て量超過
500 - Unexpected Error
  • FAIL_SERVER_INTERNAL: KMSシステムエラー
  • FAIL_IAM_REQUEST: アカウントまたは権限システムエラー
  • FAIL_CLA_REQUEST: CLAシステムエラー
  • FAIL_BLOC_REQUEST: 会員または契約照会システムエラー

エラー構文

リクエスト処理結果エラー構文の説明は次の通りです。

フィールド タイプ 必須の有無 説明
error Object - エラー情報
error.errorCode String - エラーコード
error.message String - エラーメッセージ
error.details String - エラーの詳細情報
{
"error": {
"errorCode": "300",
"message": "Not Found",
"details": "null"
}
}

Key Management Service API

Key Management Service APIサービスで提供する APIの説明は次の通りです。

Key Management Service API 1.0

Key Management Service API 1.0関連 APIの説明は次の通りです。

API 説明
Encrypt キーの現在のバージョンでデータを暗号化
Decrypt キーで暗号文を復号化
Create Custom Key 暗号キーとして使用する任意の生キー(raw key)を作成
Re-encrypt 暗号文を指定されたマスターキーの最新バージョンで再暗号化
Sign データの署名を作成
Verify データの署名と照合して検証結果を返す

Key Management Service API 2.0

Key Management Service API 2.0関連 APIの説明は次の通りです。

Account Auth API

Account Auth API関連 APIの説明は次の通りです。

API 説明
Create Key キーを作成
Get Key Info キーの詳細情報を照会
Get Key List キーリストを照会
Get Public Key 公開鍵を照会
Delete Key キーを削除
Enable Key キーを有効化
Disable Key キーを無効化
Enable Key Version キーのバージョンを有効化
Disable Key Version キーのバージョンを無効化
Rotate Key キーをローテーションして新しいバージョンを作成
Request Key Deletion キーの削除をリクエスト
Cancel Key Deletion キー削除リクエストをキャンセル
Enable IP ACL トークンリクエストを許可する IPアドレスを制御する IP ACL機能を有効化
Disable IP ACL トークンリクエストを許可する IPアドレスを制御する IP ACL機能を無効化
Get ACL Rule List キーの IP ACL設定情報を照会
Add ACL Rule トークンリクエスト許可対象の IPアドレスを ACLに追加
Delete ACL Rule トークンリクエストを許可した IPアドレスを ACLから削除
Create Token Generator トークンジェネレータを有効化
Get Token Generator トークンジェネレータを照会
Update Token Generator トークンジェネレータを交換
Delete Token Generator トークンジェネレータを削除(無効化時)
Create Token Set トークンセット(アクセストークンとリフレッシュトークン)を生成
Get Key Activity Logs キー使用履歴リストを照会
Get Latest Use Info 直近のキー使用履歴を照会
Get Key Version List キーのバージョンリストを照会
Update Memo キーに関するメモを更新
Update Rotation Period キーの自動ローテーション周期を更新
Enable Auto Rotation キーを自動ローテーションを有効化
Disable Auto Rotation キーを自動ローテーションを無効化
Encrypt キーの現在のバージョンでデータを暗号化
Decrypt キーで暗号文を復号化
Create Custom Key 暗号キーとして使用する任意の生キー(raw key)を作成
Re-encrypt 暗号文を指定されたマスターキーの最新バージョンで再暗号化
Sign データの署名を作成
Verify データの署名と照合して検証結果を返す

Token Auth API

Token Auth API関連 APIの説明は次の通りです。

API 説明
Encrypt キーの現在のバージョンでデータを暗号化
Decrypt キーで暗号文を復号化
Create Custom Key 暗号キーとして使用する任意の生キー(raw key)を作成
Re-encrypt 暗号文を指定されたマスターキーの最新バージョンで再暗号化
Sign データの署名を作成
Verify データの署名と照合して検証結果を返す
Get Public Key 公開鍵を照会
Create Access Token アクセストークンを生成
Renew Token Set トークンセット(アクセストークンとリフレッシュトークン)を再生成

Key Management Service関連リソース

Key Management Service APIについてユーザーの理解に役立つよう、さまざまな関連リソースを提供しています。