Secrets Manager
Overview
SCP에서 제공하는 IaaS/PaaS 상품을 프로그램적으로 이용할 수 있도록 지원하는 응용 프로그램 인터페이스(Application Programming Interface, API)를 제공합니다.
본 가이드는 Secrets Manager에 대한 간략한 설명 및 API를 호출하는 방법을 제공합니다.
API는 RESTful API 방식으로 제공되며, JSON 형식으로 응답합니다.
Version
| Version | Status | Supported Until |
|---|
| 1.0 | CURRENT | - |
OpenAPI URL
https://secretsmanager.{region}.{environment}.samsungsdscloud.com
Environment and Region List
| environment | region |
|---|
| s | kr-west1 |
| s | kr-east1 |
| g | kr-south1 |
| g | kr-south2 |
| g | kr-south3 |
| e | kr-west1 |
| e | kr-east1 |
1.1.1 - 1.0
post /v1/secrets
Description
Secret 을 생성합니다.
상태
ACTIVE (CURRENT)
Parameters
Responses
Example HTTP request
Request path
/v1/secrets
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"acl_cidr": "192.168.1.1/24, 10.0.0.1/16",
"description": "description",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"name": "name",
"secret_value": "{\"key1\":\"value1\",\"key2\":\"value2\"}",
"tags": []
}
Example HTTP response
Response 201
{
"secret": {
"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",
"deleted_at": "2025-02-25 03:07:17.000",
"description": "description",
"id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"kms_name": "kmsname",
"modified_at": "2024-05-17T00:23:17Z",
"modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
"name": "my-secret-name",
"recent_searched_at": "2025-02-25 03:07:17.000",
"state": "Active",
"type": "General"
}
}
1.2.1 - 1.0
delete /v1/secrets/{secret_id}
Description
Secret을 삭제한다.
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | secret_id required | Secret 아이디 Example : 3265ab469f0d406d83073da3e11e7a6c
| string | None |
| body | body required |
| SecretsManagerTerminatedRequest | |
Responses
| HTTP Code | Description | Schema |
|---|
| 204 | No Content | None |
| 400 | Bad Request | None |
| 403 | Forbidden | None |
| 404 | Not Found | None |
Example HTTP request
Request path
/v1/secrets/{secret_id}
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"waiting_time_ndays": 7
}
Example HTTP response
Response 204
1.3.1 - 1.0
post /v1/secrets/random-password
Description
임의 비밀번호 생성
상태
ACTIVE (CURRENT)
Parameters
Responses
Example HTTP request
Request path
/v1/secrets/random-password
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"exclude_characters": "abcdefg",
"exclude_lowercase": "false",
"exclude_numbers": "false",
"exclude_punctuation": "false",
"exclude_uppercase": "false",
"include_space": "false",
"password_length": 32,
"require_each_included_type": "true"
}
Example HTTP response
Response 200
{
"random_password": "random-value"
}
1.4.1 - 1.0
get /v1/secrets
Description
Secret 목록을 조회한다.
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| query | size optional | size Example : 20
| any of [integer, null] | 20 |
| query | page optional | page Example : 0
| any of [integer, null] | 0 |
| query | sort optional | sort Example : created_at:desc
| any of [string, null] | None |
| query | name optional | Secret 이름 Example : name
| any of [string, null] | None |
| query | state optional | Secret 상태 Example : Active
| any of [array[string], null] | None |
Responses
Example HTTP request
Request path
/v1/secrets
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Example HTTP response
Response 200
{
"count": 20,
"page": 0,
"secret": [
{
"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",
"deleted_at": "2025-02-25 03:07:17.000",
"description": "description",
"id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"kms_name": "kmsname",
"modified_at": "2024-05-17T00:23:17Z",
"modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
"name": "my-secret-name",
"recent_searched_at": "2025-02-25 03:07:17.000",
"state": "Active",
"type": "General"
}
],
"size": 20,
"sort": [
"created_at:asc"
]
}
1.5.1 - 1.0
get /v1/secrets/{secret_id}/versions
Description
Secrets 버전 리스트
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | secret_id required | Secret 아이디 Example : 3265ab469f0d406d83073da3e11e7a6c
| string | None |
Responses
Example HTTP request
Request path
/v1/secrets/{secret_id}/versions
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Example HTTP response
Response 200
{
"version_list": [
""
]
}
1.6.1 - 1.0
put /v1/secrets/{secret_id}/restore
Description
Secret 삭제 절차를 취소한다.
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | secret_id required | Secret 아이디 Example : 3265ab469f0d406d83073da3e11e7a6c
| string | None |
Responses
Example HTTP request
Request path
/v1/secrets/{secret_id}/restore
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Example HTTP response
Response 200
{
"secret": {
"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",
"deleted_at": "2025-02-25 03:07:17.000",
"description": "description",
"id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"kms_name": "kmsname",
"modified_at": "2024-05-17T00:23:17Z",
"modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
"name": "my-secret-name",
"recent_searched_at": "2025-02-25 03:07:17.000",
"state": "Active",
"type": "General"
}
}
1.7.1 - 1.0
put /v1/secrets/{secret_id}/acl-cidr
Description
Secret의 Value 조회 접근제어를 위한 IP CIDR 값을 수정한다.
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | secret_id required | Secret 아이디 Example : 3265ab469f0d406d83073da3e11e7a6c
| string | None |
| body | body required |
| SecretsManagerSetCidrRequest | |
Responses
Example HTTP request
Request path
/v1/secrets/{secret_id}/acl-cidr
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"acl_cidr": "192.168.1.1/24, 10.0.0.1/16"
}
Example HTTP response
Response 200
{
"secret": {
"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",
"deleted_at": "2025-02-25 03:07:17.000",
"description": "description",
"id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"kms_name": "kmsname",
"modified_at": "2024-05-17T00:23:17Z",
"modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
"name": "my-secret-name",
"recent_searched_at": "2025-02-25 03:07:17.000",
"state": "Active",
"type": "General"
}
}
1.8.1 - 1.0
put /v1/secrets/{secret_id}/description
Description
Secret의 설명값을 수정한다.
상태
ACTIVE (CURRENT)
Parameters
Responses
Example HTTP request
Request path
/v1/secrets/{secret_id}/description
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"description": "description"
}
Example HTTP response
Response 200
{
"secret": {
"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",
"deleted_at": "2025-02-25 03:07:17.000",
"description": "description",
"id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"kms_name": "kmsname",
"modified_at": "2024-05-17T00:23:17Z",
"modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
"name": "my-secret-name",
"recent_searched_at": "2025-02-25 03:07:17.000",
"state": "Active",
"type": "General"
}
}
1.9.1 - 1.0
put /v1/secrets/{secret_id}/kmsid
Description
Secret Value 암호화에 사용한 KMS ID 를 수정한다.
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | secret_id required | Secret 아이디 Example : 3265ab469f0d406d83073da3e11e7a6c
| string | None |
| body | body required |
| SecretsManagerSetKmsRequest | |
Responses
Example HTTP request
Request path
/v1/secrets/{secret_id}/kmsid
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"kms_id": "3265ab469f0d406d83073da3e11e7a6c"
}
Example HTTP response
Response 200
{
"secret": {
"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",
"deleted_at": "2025-02-25 03:07:17.000",
"description": "description",
"id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"kms_name": "kmsname",
"modified_at": "2024-05-17T00:23:17Z",
"modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
"name": "my-secret-name",
"recent_searched_at": "2025-02-25 03:07:17.000",
"state": "Active",
"type": "General"
}
}
1.10.1 - 1.0
put /v1/secrets/{secret_id}/label
Description
Version 에 라벨을 추가/이동/삭제합니다. move_to_version_id 값만 사용하는 경우 라벨이 추가되고, remove_from_version_id 값만 사용하는경우 라벨이 제거됩니다. 둘다 사용하는경우, remove_from_version_id 의 라벨값이 move_to_version_id로 이동합니다.
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | secret_id required | Secret 아이디 Example : 3265ab469f0d406d83073da3e11e7a6c
| string | None |
| body | body required |
| SecretsManagerUpdateLabelRequest | |
Responses
| HTTP Code | Description | Schema |
|---|
| 200 | OK | None |
| 400 | Bad Request | None |
| 403 | Forbidden | None |
| 404 | Not Found | None |
Example HTTP request
Request path
/v1/secrets/{secret_id}/label
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"label": "My Custom Label",
"move_to_version_id": "3265ab469f0d406d83073da3e11e7a6c",
"remove_from_version_id": "3265ab469f0d406d83073da3e11e7a6c"
}
Example HTTP response
Response 200
1.11.1 - 1.0
get /v1/secrets/{secret_id}
Description
Secret 상세정보 보기
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | secret_id required | Secret 아이디 Example : 3265ab469f0d406d83073da3e11e7a6c
| string | None |
Responses
Example HTTP request
Request path
/v1/secrets/{secret_id}
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Example HTTP response
Response 200
{
"secret": {
"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",
"deleted_at": "2025-02-25 03:07:17.000",
"description": "description",
"id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"kms_name": "kmsname",
"modified_at": "2024-05-17T00:23:17Z",
"modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
"name": "my-secret-name",
"recent_searched_at": "2025-02-25 03:07:17.000",
"state": "Active",
"type": "General"
}
}
1.12.1 - 1.0
post /v1/secrets/{secret_id}/values
Description
Secret value 보기
상태
ACTIVE (CURRENT)
Parameters
Responses
Example HTTP request
Request path
/v1/secrets/{secret_id}/values
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"label": "CURRENT",
"version_id": "e7b638507d9f4feeb6032a22b7640bf7"
}
Example HTTP response
Response 200
{
"secret_value": "{\"key1\":\"value1\",\"key2\":\"value2\"}"
}
1.13.1 - 1.0
put /v1/secrets/{secret_id}/values
Description
Secret value 업데이트
상태
ACTIVE (CURRENT)
Parameters
Responses
Example HTTP request
Request path
/v1/secrets/{secret_id}/values
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = secretsmanager 1.0"
Request body
{
"secret_value": "{\"key1\":\"value1\",\"key2\":\"value2\"}"
}
Example HTTP response
Response 200
{
"secret": {
"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",
"deleted_at": "2025-02-25 03:07:17.000",
"description": "description",
"id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
"kms_id": "3265ab469f0d406d83073da3e11e7a6c",
"kms_name": "kmsname",
"modified_at": "2024-05-17T00:23:17Z",
"modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
"name": "my-secret-name",
"recent_searched_at": "2025-02-25 03:07:17.000",
"state": "Active",
"type": "General"
}
}