This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Secret Vault

Overview

Provides an Application Programming Interface (API) that supports programmatic use of IaaS/PaaS products provided by SCP.

This guide provides a brief description of Secret Vault and how to call API. The API is provided as a RESTful API, and it responds in JSON format.

Version

VersionStatusSupported Until
1.0CURRENT-

OpenAPI URL

https://secretvault.{region}.{environment}.samsungsdscloud.com

Environment and Region List

environmentregion
skr-west1
skr-east1
gkr-south1
gkr-south2
gkr-south3
ekr-west1
ekr-east1

1 - APIs

1.1 - Create Secret Vault

1.1.1 - 1.0

post /v1/secretvault

Description

Create Secret Vault.

State ACTIVE (CURRENT)

VersionSupported Until
1.0-

Parameters

TypeNameDescriptionSchemaDefault
bodybody
required

SecretVaultCreateRequest

Responses

HTTP CodeDescriptionSchema
201CreatedSecretVaultCreateResponse
400Bad RequestNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/secretvault

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = en-US",
"Scp-Api-Version = secretvault 1.0"

Request body

{
    "access_key_id": "b754b12b39da4ce29a40c5e324650bd0",
    "acl_cidr": "192.168.1.1/24, 10.0.0.1/16",
    "description": "description",
    "name": "name",
    "tags": [],
    "temporary_key_ttl_nhours": "3",
    "vault_token_ttl_ndays": "720"
}

Example HTTP response

Response 201

{
    "secret_vault": {
        "access_key_id": "0e3dffc50eb247a1adf4f2e5c82c4f99",
        "access_key_type": "Temporary",
        "account_id": "3265ab469f0d406d83073da3e11e7a6c",
        "acl_cidr": "192.168.1.1/24, 10.0.0.1/16",
        "created_at": "2024-05-17T00:23:17Z",
        "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
        "delete_at": "2025-02-25 03:07:17.000",
        "description": "description",
        "id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
        "modified_at": "2024-05-17T00:23:17Z",
        "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
        "name": "vaultkey",
        "temporary_key_ttl_nhours": "36",
        "user_name": "username",
        "vault_token_expired_at": "2025-02-25 03:07:17.000",
        "vault_token_id": "aace85da-965e-d95a-b4ed-8d32b5d6079",
        "vault_token_secret_value": "6171392c-5fd9-43db-9e15-e14af0068f96",
        "vault_token_ttl_ndays": "10",
        "vaultkey_state": "Active",
        "vaultkey_type": "SCP Open API Key",
        "waiting_time_ndays": "10"
    }
}

1.2 - Delete Secret Vault

1.2.1 - 1.0

put /v1/secretvault/{secret_vault_id}/terminated

Description

Change Secret Vault state to ‘To be terminated’.

State ACTIVE (CURRENT)

VersionSupported Until
1.0-

Parameters

TypeNameDescriptionSchemaDefault
pathsecret_vault_id
required
Secret Vault Id
Example : 3265ab469f0d406d83073da3e11e7a6c
stringNone
bodybody
required

SecretVaultTerminatedRequest

Responses

HTTP CodeDescriptionSchema
200OKSecretVaultShowResponse
400Bad RequestNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/secretvault/{secret_vault_id}/terminated

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = en-US",
"Scp-Api-Version = secretvault 1.0"

Request body

{
    "waiting_time_ndays": 7
}

Example HTTP response

Response 200

{
    "secret_vault": {
        "access_key": [
            "0e3*****************************"
        ],
        "access_key_id": "0e3dffc50eb247a1adf4f2e5c82c4f99",
        "access_key_type": [
            "Temporary",
            "Permanent"
        ],
        "account_id": "3265ab469f0d406d83073da3e11e7a6c",
        "acl_cidr": "192.168.1.1/24, 10.0.0.1/16",
        "created_at": "2024-05-17T00:23:17Z",
        "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
        "delete_at": "2025-02-25 03:07:17.000",
        "description": "description",
        "id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
        "modified_at": "2024-05-17T00:23:17Z",
        "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
        "name": [
            "vaultkey"
        ],
        "temp_key_expired_at": "2025-02-25 03:07:17.000",
        "temporary_key_ttl_nhours": [
            "36"
        ],
        "vault_token_expired_at": "2025-02-25 03:07:17.000",
        "vault_token_id": "aace85da-965e-d95a-b4ed-8d32b5d6079",
        "vault_token_secret_value": "6171392c-5fd9-43db-9e15-e14af0068f96",
        "vault_token_ttl_ndays": [
            "10"
        ],
        "vaultkey_state": "Active",
        "vaultkey_type": [
            "SCP Open API Key"
        ],
        "waiting_time_ndays": "10"
    }
}

1.3 - Get Temporary Key

1.3.1 - 1.0

get /v1/temporarykey/{secret_vault_id}

Description

Get Temporary Key.

State ACTIVE (CURRENT)

VersionSupported Until
1.0-

Parameters

TypeNameDescriptionSchemaDefault
headerSvaccesskey
required
token id issued by Secret Vault
Example : 5dbd99e4-aad4-e822-9ab3-89b10cf7c9ef
stringNone
headerSvsignature
required
It generates a string to sign from the request, encrypts it with the HmacSHA256 algorithm with the Access Secret Key(token secret issued by Secret Vault), and encodes it into Base64.
Example : fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=
stringNone
headerSvtimestamp
required
defines the elapsed time from 00:00:00 Agreement World Time (UTC) on January 1, 1970, in milliseconds.
Example : 1605290625682
stringNone
headerSvclienttype
required
Client Type
Example : Openapi
stringNone
pathsecret_vault_id
required
Secret Vault Id
Example : 3265ab469f0d406d83073da3e11e7a6c
stringNone

Responses

HTTP CodeDescriptionSchema
200OKSecretVaultTemporaryKeyResponse
400Bad RequestNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/temporarykey/{secret_vault_id}

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = en-US",
"Scp-Api-Version = secretvault 1.0"

Example HTTP response

Response 200

{
    "access_key": "testname",
    "expired_at": "2025-02-25 03:07:17.000",
    "secret_key": "testname"
}

1.4 - List Secret Vaults

1.4.1 - 1.0

get /v1/secretvault

Description

List Secret Vaults.

State ACTIVE (CURRENT)

VersionSupported Until
1.0-

Responses

HTTP CodeDescriptionSchema
200OKSecretVaultKeyListResponse
400Bad RequestNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/secretvault

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = en-US",
"Scp-Api-Version = secretvault 1.0"

Example HTTP response

Response 200

{
    "count": 20,
    "page": 0,
    "secret_vaults": [
        {
            "access_key_id": "0e3dffc50eb247a1adf4f2e5c82c4f99",
            "access_key_type": "Temporary",
            "account_id": "3265ab469f0d406d83073da3e11e7a6c",
            "acl_cidr": "192.168.1.1/24, 10.0.0.1/16",
            "created_at": "2024-05-17T00:23:17Z",
            "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
            "delete_at": "2025-02-25 03:07:17.000",
            "description": "description",
            "id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
            "modified_at": "2024-05-17T00:23:17Z",
            "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
            "name": "vaultkey",
            "temporary_key_ttl_nhours": "36",
            "user_name": "username",
            "vault_token_expired_at": "2025-02-25 03:07:17.000",
            "vault_token_id": "[AES] SZtB6RasvLypCv4soJlQO3ZmYpUPjFblz7pstjBeTQJXcz/d5KB9TUR3gMY08mga4fxWaF6IfUzTMBh6j/CAaw==",
            "vault_token_secret_value": "[AES] 91/kdnK4NDfs2HGWgNH/EYNnqD7OcM1unXWs0ZAuaFttIqgP8xMUx0dOaRfD6kOD7uuujFxF2nzx35D9Gz9nwQ==",
            "vault_token_ttl_ndays": "10",
            "vaultkey_state": "Active",
            "vaultkey_type": "SCP Open API Key",
            "waiting_time_ndays": "10"
        }
    ],
    "size": 20,
    "sort": [
        "created_at:asc"
    ]
}

1.5 - Show Secret Vault

1.5.1 - 1.0

get /v1/secretvault/{secret_vault_id}

Description

Show Secret Vault.

State ACTIVE (CURRENT)

VersionSupported Until
1.0-

Parameters

TypeNameDescriptionSchemaDefault
pathsecret_vault_id
required
Secret Vault Id
Example : 3265ab469f0d406d83073da3e11e7a6c
stringNone

Responses

HTTP CodeDescriptionSchema
200OKSecretVaultShowResponse
400Bad RequestNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/secretvault/{secret_vault_id}

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = en-US",
"Scp-Api-Version = secretvault 1.0"

Example HTTP response

Response 200

{
    "secret_vault": {
        "access_key": [
            "0e3*****************************"
        ],
        "access_key_id": "0e3dffc50eb247a1adf4f2e5c82c4f99",
        "access_key_type": [
            "Temporary",
            "Permanent"
        ],
        "account_id": "3265ab469f0d406d83073da3e11e7a6c",
        "acl_cidr": "192.168.1.1/24, 10.0.0.1/16",
        "created_at": "2024-05-17T00:23:17Z",
        "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
        "delete_at": "2025-02-25 03:07:17.000",
        "description": "description",
        "id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
        "modified_at": "2024-05-17T00:23:17Z",
        "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
        "name": [
            "vaultkey"
        ],
        "temp_key_expired_at": "2025-02-25 03:07:17.000",
        "temporary_key_ttl_nhours": [
            "36"
        ],
        "vault_token_expired_at": "2025-02-25 03:07:17.000",
        "vault_token_id": "aace85da-965e-d95a-b4ed-8d32b5d6079",
        "vault_token_secret_value": "6171392c-5fd9-43db-9e15-e14af0068f96",
        "vault_token_ttl_ndays": [
            "10"
        ],
        "vaultkey_state": "Active",
        "vaultkey_type": [
            "SCP Open API Key"
        ],
        "waiting_time_ndays": "10"
    }
}

2 - Models

2.1 - SecretVaultCreateRequest

NameDescriptionSchemaDefault
access_key_id
required
Id of access key
Example : b754b12b39da4ce29a40c5e324650bd0
string
acl_cidr
required
Access control list in CIDR
Example : 192.168.1.1/24, 10.0.0.1/16
string
description
optional
Description
Example : description
any of [string, null]
name
required
Secret Vault Id
Example : name
Pattern : ^[a-z0-9]*$
Minimum length : 3
Maximum length : 63
string
tags
optional
Tag List’
any of [array[Tag], null]
temporary_key_ttl_nhours
required
Temporary key valid hours
Example : 3
Minimum : 1
Maximum : 36
integer
vault_token_ttl_ndays
required
TTL of vault token
Example : 720
Minimum : 30
Maximum : 7300
integer

2.2 - SecretVaultCreateResponse

NameDescriptionSchemaDefault
secret_vault
required

SecretVaultKey

2.3 - SecretVaultDetailKey

NameDescriptionSchemaDefault
access_key
optional
Access key
Example : ['0e3*****************************']
string
access_key_id
required
Id of access key
Example : 0e3dffc50eb247a1adf4f2e5c82c4f99
string
access_key_type
required
Type of access key
Example : ['Temporary', 'Permanent']
string
account_id
required
Account ID
Example : 3265ab469f0d406d83073da3e11e7a6c
string
acl_cidr
required
Access control list in CIDR
Example : 192.168.1.1/24, 10.0.0.1/16
string
created_at
required
Created At
Example : 2024-05-17T00:23:17Z
string (date-time)
created_by
required
Created By
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
delete_at
required
Date of deletion
Example : 2025-02-25 03:07:17.000
any of [string (date-time), null]
description
required
Description of Key
Example : description
any of [string, null]
id
required
ID
Example : 0fdd87aab8cb46f59b7c1f81ed03fb3e
string
modified_at
required
Modified At
Example : 2024-05-17T00:23:17Z
string (date-time)
modified_by
required
Modified By
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
name
required
Name of key
Example : ['vaultkey']
string
temp_key_expired_at
required
Temporary key expired date
Example : 2025-02-25 03:07:17.000
any of [string (date-time), null]
temporary_key_ttl_nhours
required
Temporary key valid hours
Example : ['36']
any of [integer, null]
vault_token_expired_at
required
Vault Token expired date
Example : 2025-02-25 03:07:17.000
any of [string (date-time), null]
vault_token_id
required
Id of vault token
Example : aace85da-965e-d95a-b4ed-8d32b5d6079
any of [string, null]
vault_token_secret_value
required
Secret of vault token
Example : 6171392c-5fd9-43db-9e15-e14af0068f96
any of [string, null]
vault_token_ttl_ndays
required
TTL of vault token
Example : ['10']
any of [integer, null]
vaultkey_state
required
State of key(Creating, Active, Error, Stop, To_Be_Terminated)
Example : Active
any of [string, null]
vaultkey_type
required
Type of vault key
Example : ['SCP Open API Key']
any of [string, null]
waiting_time_ndays
required
Days remaining until deletion
Example : 10
any of [integer, null]

2.4 - SecretVaultKey

NameDescriptionSchemaDefault
access_key_id
required
Id of access key
Example : 0e3dffc50eb247a1adf4f2e5c82c4f99
string
access_key_type
required
Type of access key
Example : Temporary
string
account_id
required
Account ID
Example : 3265ab469f0d406d83073da3e11e7a6c
string
acl_cidr
required
Access control list in CIDR
Example : 192.168.1.1/24, 10.0.0.1/16
any of [string, null]
created_at
required
Created At
Example : 2024-05-17T00:23:17Z
string (date-time)
created_by
required
Created By
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
delete_at
required
Date of deletion
Example : 2025-02-25 03:07:17.000
any of [string (date-time), null]
description
required
Description
Example : description
any of [string, null]
id
required
ID
Example : 0fdd87aab8cb46f59b7c1f81ed03fb3e
string
modified_at
required
Modified At
Example : 2024-05-17T00:23:17Z
string (date-time)
modified_by
required
Modified By
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
name
required
Name of key
Example : vaultkey
any of [string, null]
temporary_key_ttl_nhours
required
Temporary key valid hours
Example : 36
any of [integer, null]
user_name
required
User name
Example : username
any of [string, null]
vault_token_expired_at
required
Vault Token expired date
Example : 2025-02-25 03:07:17.000
any of [string (date-time), null]
vault_token_id
required
Id of vault token
Example : aace85da-965e-d95a-b4ed-8d32b5d6079
any of [string, null]
vault_token_secret_value
required
Secret of vault token
Example : 6171392c-5fd9-43db-9e15-e14af0068f96
any of [string, null]
vault_token_ttl_ndays
required
TTL of vault token
Example : 10
any of [integer, null]
vaultkey_state
required
State of key(Creating, Active, Error, Stop, To_Be_Terminated)
Example : Active
any of [string, null]
vaultkey_type
required
Type of vault key
Example : SCP Open API Key
any of [string, null]
waiting_time_ndays
required
Days remaining until deletion
Example : 10
any of [integer, null]

2.5 - SecretVaultKeyListResponse

NameDescriptionSchemaDefault
count
required
count
Example : 20
integer
page
required
page
Example : 0
integer
secret_vaults
required

array[SecretVaultListKey]
size
required
size
Example : 20
integer
sort
optional
sort
Example : ['created_at:asc']
any of [array[string], null]

2.6 - SecretVaultListKey

NameDescriptionSchemaDefault
access_key_id
required
Id of access key
Example : 0e3dffc50eb247a1adf4f2e5c82c4f99
string
access_key_type
required
Type of access key
Example : Temporary
string
account_id
required
Account ID
Example : 3265ab469f0d406d83073da3e11e7a6c
string
acl_cidr
required
Access control list in CIDR
Example : 192.168.1.1/24, 10.0.0.1/16
any of [string, null]
created_at
required
Created At
Example : 2024-05-17T00:23:17Z
string (date-time)
created_by
required
Created By
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
delete_at
required
Date of deletion
Example : 2025-02-25 03:07:17.000
any of [string (date-time), null]
description
required
Description
Example : description
any of [string, null]
id
required
ID
Example : 0fdd87aab8cb46f59b7c1f81ed03fb3e
string
modified_at
required
Modified At
Example : 2024-05-17T00:23:17Z
string (date-time)
modified_by
required
Modified By
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
name
required
Name of key
Example : vaultkey
any of [string, null]
temporary_key_ttl_nhours
required
Temporary key valid hours
Example : 36
any of [integer, null]
user_name
required
User name
Example : username
any of [string, null]
vault_token_expired_at
required
Vault Token expired date
Example : 2025-02-25 03:07:17.000
any of [string (date-time), null]
vault_token_id
required
Id of vault token
Example : [AES] SZtB6RasvLypCv4soJlQO3ZmYpUPjFblz7pstjBeTQJXcz/d5KB9TUR3gMY08mga4fxWaF6IfUzTMBh6j/CAaw==
any of [string, null]
vault_token_secret_value
required
Secret of vault token
Example : [AES] 91/kdnK4NDfs2HGWgNH/EYNnqD7OcM1unXWs0ZAuaFttIqgP8xMUx0dOaRfD6kOD7uuujFxF2nzx35D9Gz9nwQ==
any of [string, null]
vault_token_ttl_ndays
required
TTL of vault token
Example : 10
any of [integer, null]
vaultkey_state
required
State of key(Creating, Active, Error, Stop, To_Be_Terminated)
Example : Active
any of [string, null]
vaultkey_type
required
Type of vault key
Example : SCP Open API Key
any of [string, null]
waiting_time_ndays
required
Days remaining until deletion
Example : 10
any of [integer, null]

2.7 - SecretVaultShowResponse

NameDescriptionSchemaDefault
secret_vault
required

SecretVaultDetailKey

2.8 - SecretVaultTemporaryKeyResponse

NameDescriptionSchemaDefault
access_key
optional
Access key
Example : testname
any of [string, null]
expired_at
required
Expired date
Example : 2025-02-25 03:07:17.000
any of [string (date-time), null]
secret_key
optional
Secret key
Example : testname
any of [string, null]

2.9 - SecretVaultTerminatedRequest

NameDescriptionSchemaDefault
waiting_time_ndays
required
Days remaining until deletion
Example : 7
Minimum : 7
Maximum : 30
integer

2.10 - Tag

NameDescriptionSchemaDefault
key
required
tag key
Example :
string
value
required
tag value
Example :
string