Create Secret

Prev Next

VPC環境で利用できます。

シークレットを作成します。

リクエスト

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

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

リクエストヘッダ

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

リクエストボディ

リクエストボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
secretName String Required シークレット名
  • 英数字、記号の「-」、「_」を使用して3~15文字以内で入力
  • 文字列の先頭は英字
memo String Optional シークレットの説明(Byte)
  • 0~1000
secretValue Object Required シークレット値オブジェクト
secretValue.value String Required シークレット値
secretValue.rotationTargets Array Required ローテーション対象のシークレット値リスト
secretType String Required シークレットタイプ
  • BASIC: 基本シークレットタイプ (有効値)
autoRotationYN String Required 自動ローテーションするか
  • Y | N (デフォルト)
    • Y: 自動ローテーション
    • N: 自動ローテーションしない
autoRotationPeriod Integer Conditional シークレット自動ローテーション周期(日)
  • 1~730 (デフォルト: 90)
  • autoRotationYNYの場合、必ず入力
triggerId String Conditional トリガー ID
protectionKeyType String Required 保護キータイプ
  • DEFAULT (デフォルト) | USER_MANAGED_KEY
    • DEFAULT: デフォルトのキー
    • USER_MANAGED_KEY: ユーザー管理キー
kmsKeyTag String Conditional KMSキータグ

リクエスト例

リクエストのサンプルコードは次の通りです。

curl --location --request POST 'https://secretmanager.apigw.ntruss.com/api/v1/secrets' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--data '{
    "secretName": "test-***",
    "memo": "Secret Manager Description",
    "secretValue": {
        "value": "{\"abc\":\"cba\"}",
        "rotationTargets": [
            "abc"
        ]
    },
    "secretType": "BASIC",
    "autoRotationYN": "Y",
    "autoRotationPeriod": 90,
    "triggerId": "*****",
    "protectionKeyType": "USER_MANAGED_KEY",
    "kmsKeyTag": "*****a8e99ef1ba49b9c190a0cb4f6fb20cff86dd3a3017fd6ee05aea8b*****"
}'

レスポンス

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

レスポンスボディ

レスポンスボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
code String - レスポンスコード
data Object - レスポンス結果
data.secretId String - シークレット ID
data.secretName String - シークレット名
data.secretStatus String - シークレットの状態
  • ENABLE | DISABLE | REVOKE | ROTATING | DESTROYED
    • ENABLE: 利用可能
    • DISABLE: 一時停止
    • REVOKE: 削除予定
    • ROTATING: ローテーション中
    • DESTROYED: 最終削除
data.secretType String - シークレットタイプ
  • BASIC (有効値)
data.memo String - シークレットの説明
data.region String - 地域コード
data.registerDate Integer - シークレット作成日時(ミリ秒)
  • Unix Timestamp形式
data.autoRotationYN String - 自動ローテーションするか
  • Y | N
    • Y: 自動ローテーション
    • N: 自動ローテーションしない
data.autoRotationPeriod Integer - シークレット自動ローテーション周期(日)
  • autoRotationYNYの場合、表示
data.nextRotationDate Integer - 次のローテーション予定日時(ミリ秒)
  • Unix Timestamp形式
  • autoRotationYNYの場合、表示
data.rotationPhase String - 現在のローテーション段階
  • NONE | ROTATING | ROTATION_FAILED
    • NONE: ローテーションの実行履歴なしまたはローテーション終了(正常)
    • ROTATING: ローテーション中
    • ROTATION_FAILED: ローテーション失敗
data.trigger Object - トリガー情報
data.trigger.id String - トリガー ID
data.trigger.name String - トリガー名
data.trigger.url String - トリガー URL
data.trigger.recentlyExecutedAction String - 最近実行されたアクション
  • 実際アクションを実行した履歴がある場合、表示
data.protectionKey Object - 保護キー情報
data.protectionKey.type String - 保護キータイプ
  • DEFAULT | USER_MANAGED_KEY
    • DEFAULT: デフォルトのキー
    • USER_MANAGED_KEY: ユーザー管理キー
data.protectionKey.kmsKeyTag String - KMSキータグ
data.protectionKey.kmsKeyName String - KMSキー名

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

Secret Manager APIで共通して使用されるレスポンスステータスコードの詳細は、Secret Managerのレスポンスステータスコードをご参照ください。

レスポンス例

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

{
    "code": "SUCCESS",
    "data": {
        "secretId": "*****687685109842348f7358629bca2a6b2491e8c2352718e7d312b183*****",
        "secretName": "test-***",
        "secretStatus": "ENABLE",
        "secretType": "BASIC",
        "memo": "Secret Manager Description",
        "region": "KR",
        "registerDate": 1753065580243,
        "autoRotationYN": "Y",
        "autoRotationPeriod": 90,
        "nextRotationDate": 1760842800000,
        "rotationPhase": "NONE",
        "trigger": {
            "id": "*****",
            "name": "test",
            "url": "https://console.ncloud.com/vpcCloudFunctions/trigger/detail/test"
        },
        "protectionKey": {
            "type": "USER_MANAGED_KEY",
            "kmsKeyTag": "*****a8e99ef1ba49b9c190a0cb4f6fb20cff86dd3a3017fd6ee05aea8b*****",
            "kmsKeyName": "test-***"
        }
    }
}