DBSAFER 서비스 관리 API

DBSAFER 서비스 관리 API를 소개합니다.

1. 서비스 관리

1.1. 서비스 목록 조회

등록된 서비스 목록을 조회하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.1.1. HTTP request

GET /dbsafer/api/v1/services?name=sample-mysql-service&address=1.1.1.1&port=3306&type=MYSQL&comment=sample%20service&status=START HTTP/1.1
Accept: application/json
Host: localhost:3182

1.1.2. Request parameters

Parameter Description

name

(검색조건) 서비스명

address

(검색조건) 서버 주소

port

(검색조건) 서버 Port

type

(검색조건) 서버 Type

comment

(검색조건) 설명

status

(검색조건) 서비스 상태

1.1.3. HTTP response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 419

{
  "results" : [ {
    "no" : 1,
    "name" : "sample-mysql-service",
    "address" : "1.1.1.1",
    "port" : 3306,
    "core" : 4,
    "type" : "MYSQL",
    "listenPort" : 4000,
    "processCount" : 3,
    "sessionIdleTime" : 60,
    "sslSupportType" : "NOT_USE",
    "secureConnectType" : "NOT_USE",
    "useNatIdentity" : true,
    "comment" : "sample service",
    "status" : "START",
    "owner" : "admin"
  } ]
}

1.1.4. Response fields

Name Type Description Required

results.[].no

Number

서비스 번호

results.[].name

String

서비스 명

results.[].address

String

서버 주소

results.[].port

Number

서버 Port

results.[].core

Number

서버 CPU 코어 수

results.[].type

String

서버 Type

results.[].listenPort

Number

Listen Port

results.[].processCount

Number

프로세스 수

results.[].sessionIdleTime

Number

세션 대기 시간

results.[].useNatIdentity

Boolean

사용자 식별 기능 사용 여부

results.[].sslSupportType

String

SSL Support Type

results.[].secureConnectType

String

암호화 통신 방식

results.[].comment

String

설명

results.[].status

String

서비스 상태

results.[].owner

String

소유자

1.1.5. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services?name=sample-mysql-service&address=1.1.1.1&port=3306&type=MYSQL&comment=sample%20service&status=START' -i -X GET \
    -H 'Accept: application/json'

1.2. 서비스 조회

등록된 서비스를 조회하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.2.1. HTTP request

GET /dbsafer/api/v1/services/1 HTTP/1.1
Accept: application/json
Host: localhost:3182

1.2.2. Path parameters

Table 1. /dbsafer/api/v1/services/{no}
Parameter Description

no

서비스 번호

1.2.3. HTTP response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 365

{
  "no" : 1,
  "name" : "sample-mysql-service",
  "address" : "1.1.1.1",
  "port" : 3306,
  "core" : 4,
  "type" : "MYSQL",
  "listenPort" : 4000,
  "processCount" : 3,
  "sessionIdleTime" : 60,
  "sslSupportType" : "NOT_USE",
  "secureConnectType" : "NOT_USE",
  "useNatIdentity" : true,
  "comment" : "sample service",
  "status" : "START",
  "owner" : "admin"
}

1.2.4. Response fields

Name Type Description Required

no

Number

서비스 번호

name

String

서비스 명

address

String

서버 주소

port

Number

서버 Port

core

Number

서버 CPU 코어 수

type

String

서버 Type

listenPort

Number

Listen Port

processCount

Number

프로세스 수

sessionIdleTime

Number

세션 대기 시간

useNatIdentity

Boolean

사용자 식별 기능 사용 여부

sslSupportType

String

SSL Support Type

secureConnectType

String

암호화 통신 방식

comment

String

설명

status

String

서비스 상태

owner

String

소유자

1.2.5. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services/1' -i -X GET \
    -H 'Accept: application/json'

1.3. 서비스 추가

신규 서비스를 추가하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.3.1. HTTP request

POST /dbsafer/api/v1/services?useFixedPort=true HTTP/1.1
Content-Type: application/json;charset=UTF-8
Accept: application/json
Content-Length: 287
Host: localhost:3182

{
  "name" : "sample-mysql-service",
  "address" : "1.1.1.1",
  "port" : 3306,
  "core" : 4,
  "type" : "MYSQL",
  "processCount" : 3,
  "sessionIdleTime" : 60,
  "useNatIdentity" : true,
  "sslSupportType" : "NOT_USE",
  "secureConnectType" : "NOT_USE",
  "comment" : "sample service"
}

1.3.2. Request parameters

Parameter Description

useFixedPort

(옵션) 고정 포트 사용 여부

1.3.3. Request fields

Name Type Description Required

name

String

서비스 명

address

String

서버 주소

port

Number

서버 Port

core

Number

서버 CPU 코어 수

type

String

서버 Type

processCount

Number

프로세스 수

sessionIdleTime

Number

세션 대기 시간

useNatIdentity

Boolean

사용자 식별 기능 사용 여부

sslSupportType

String

SSL Support Type

secureConnectType

String

암호화 통신 방식

comment

String

설명

1.3.4. HTTP response

HTTP/1.1 201 Created
Location: http://localhost:8080/dbsafer/api/v1/services/1
Content-Type: application/json
Content-Length: 365

{
  "no" : 1,
  "name" : "sample-mysql-service",
  "address" : "1.1.1.1",
  "port" : 3306,
  "core" : 4,
  "type" : "MYSQL",
  "listenPort" : 4000,
  "processCount" : 3,
  "sessionIdleTime" : 60,
  "sslSupportType" : "NOT_USE",
  "secureConnectType" : "NOT_USE",
  "useNatIdentity" : true,
  "comment" : "sample service",
  "status" : "START",
  "owner" : "admin"
}

1.3.5. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services?useFixedPort=true' -i -X POST \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -H 'Accept: application/json' \
    -d '{
  "name" : "sample-mysql-service",
  "address" : "1.1.1.1",
  "port" : 3306,
  "core" : 4,
  "type" : "MYSQL",
  "processCount" : 3,
  "sessionIdleTime" : 60,
  "useNatIdentity" : true,
  "sslSupportType" : "NOT_USE",
  "secureConnectType" : "NOT_USE",
  "comment" : "sample service"
}'

1.4. 서비스 수정

등록된 서비스 정보를 수정하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.4.1. HTTP request

PUT /dbsafer/api/v1/services/1?useFixedPort=true HTTP/1.1
Content-Type: application/json;charset=UTF-8
Accept: application/json
Content-Length: 287
Host: localhost:3182

{
  "name" : "sample-mysql-service",
  "address" : "1.1.1.1",
  "port" : 3306,
  "core" : 4,
  "type" : "MYSQL",
  "processCount" : 3,
  "sessionIdleTime" : 60,
  "useNatIdentity" : true,
  "sslSupportType" : "NOT_USE",
  "secureConnectType" : "NOT_USE",
  "comment" : "sample service"
}

1.4.2. Path parameters

Table 1. /dbsafer/api/v1/services/{no}
Parameter Description

no

서비스 번호

1.4.3. Request parameters

Parameter Description

useFixedPort

(옵션) 고정 포트 사용 여부

1.4.4. Request fields

Name Type Description Required

name

String

서비스 명

address

String

서버 주소

port

Number

서버 Port

core

Number

서버 CPU 코어 수

type

String

서버 Type

processCount

Number

프로세스 수

sessionIdleTime

Number

세션 대기 시간

useNatIdentity

Boolean

사용자 식별 기능 사용 여부

sslSupportType

String

SSL Support Type

secureConnectType

String

암호화 통신 방식

comment

String

설명

1.4.5. HTTP response

HTTP/1.1 200 OK

1.4.6. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services/1?useFixedPort=true' -i -X PUT \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -H 'Accept: application/json' \
    -d '{
  "name" : "sample-mysql-service",
  "address" : "1.1.1.1",
  "port" : 3306,
  "core" : 4,
  "type" : "MYSQL",
  "processCount" : 3,
  "sessionIdleTime" : 60,
  "useNatIdentity" : true,
  "sslSupportType" : "NOT_USE",
  "secureConnectType" : "NOT_USE",
  "comment" : "sample service"
}'

1.5. 서비스 삭제

등록된 서비스를 삭제하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.5.1. HTTP request

DELETE /dbsafer/api/v1/services/1 HTTP/1.1
Host: localhost:3182

1.5.2. Path parameters

Table 1. /dbsafer/api/v1/services/{no}
Parameter Description

no

서비스 번호

1.5.3. HTTP response

HTTP/1.1 204 No Content

1.5.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services/1' -i -X DELETE

1.6. 서비스 시작

서비스를 시작하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.6.1. HTTP request

POST /dbsafer/api/v1/services/1/start HTTP/1.1
Host: localhost:3182

1.6.2. Path parameters

Table 1. /dbsafer/api/v1/services/{no}/start
Parameter Description

no

서비스 번호

1.6.3. HTTP response

HTTP/1.1 200 OK

1.6.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services/1/start' -i -X POST

1.7. 서비스 중지

서비스를 중지하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.7.1. HTTP request

POST /dbsafer/api/v1/services/1/stop HTTP/1.1
Host: localhost:3182

1.7.2. Path parameters

Table 1. /dbsafer/api/v1/services/{no}/stop
Parameter Description

no

서비스 번호

1.7.3. HTTP response

HTTP/1.1 200 OK

1.7.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services/1/stop' -i -X POST

1.8. 서비스의 그룹 추가

서비스의 그룹을 추가하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.8.1. HTTP request

POST /dbsafer/api/v1/services/1/groups/1 HTTP/1.1
Host: localhost:3182

1.8.2. Path parameters

Table 1. /dbsafer/api/v1/services/{serviceNo}/groups/{groupIndex}
Parameter Description

serviceNo

서비스 번호

groupIndex

그룹 Index

1.8.3. HTTP response

HTTP/1.1 200 OK

1.8.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services/1/groups/1' -i -X POST

1.9. 서비스의 그룹 제거

서비스의 그룹을 제거하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

1.9.1. HTTP request

DELETE /dbsafer/api/v1/services/1/groups/1 HTTP/1.1
Host: localhost:3182

1.9.2. Path parameters

Table 1. /dbsafer/api/v1/services/{serviceNo}/groups/{groupIndex}
Parameter Description

serviceNo

서비스 번호

groupIndex

그룹 Index

1.9.3. HTTP response

HTTP/1.1 200 OK

1.9.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/services/1/groups/1' -i -X DELETE

1.10. (참고) SSL Support 타입 정의

sslSupportType description

NOT_USE

미사용

USE_LOG_COLLECTION

사용 (로그 수집 방식)

USE_SESSION_DECRYPTION

사용 (세션 복호화 방식)

1.11. (참고) 암호화 통신 타입 정의

secureConnectType description

NOT_USE

미사용

USER_TO_DBSAFER

사용자 - DBSAFER 간 암호화

DBSAFER_TO_SERVER

DBSAFER - 대상 서버 간 암호화

USER_TO_SERVER

사용자 - DBSAFER - 대상 서버 간 암호화

1.12. (참고) 서비스 타입 정의

type

UNKNOWN

ORACLE

FTP

INFORMIX

TERMINAL

ALTIBASE

TERADATA

UDB

SSH

MYSQL

TIBERO

CUBRID

POSTGRESQL

CRIS

AS400

HANADB

TP

WAS

SYMFOWARE

GOLDILOCKS

DYNAMODB

AZURE

SFTP

VECTOR

MONGODB

BYPASS

SYBASE

SYBASE_IQ

MSSQL

2. 서비스 그룹 관리

2.1. 서비스 그룹 목록 조회

등록된 서비스 그룹 목록을 조회하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

2.1.1. HTTP request

GET /dbsafer/api/v1/service/groups?name=SampleServiceGroup001&kind=DBMS HTTP/1.1
Accept: application/json
Host: localhost:3182

2.1.2. HTTP response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 129

{
  "results" : [ {
    "index" : 1,
    "name" : "SampleServiceGroup001",
    "kind" : "DBMS",
    "comment" : "comment"
  } ]
}

2.1.3. Request parameters

Parameter Description

name

(필터링)그룹 명

kind

(필터링)그룹 구분

2.1.4. Response fields

Name Type Description Required

results.[].index

Number

그룹 Index

results.[].name

String

그룹 명

results.[].kind

String

그룹 구분 (DBMS,FTP,TERMINAL)

results.[].comment

String

설명

2.1.5. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/service/groups?name=SampleServiceGroup001&kind=DBMS' -i -X GET \
    -H 'Accept: application/json'

2.2. 서비스 그룹 조회

등록된 서비스 그룹을 조회하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

2.2.1. HTTP request

GET /dbsafer/api/v1/service/groups/1 HTTP/1.1
Accept: application/json
Host: localhost:3182

2.2.2. Path parameters

Table 1. /dbsafer/api/v1/service/groups/{index}
Parameter Description

index

그룹 Index

2.2.3. HTTP response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 97

{
  "index" : 1,
  "name" : "SampleServiceGroup001",
  "kind" : "DBMS",
  "comment" : "comment"
}

2.2.4. Response fields

Name Type Description Required

index

Number

그룹 Index

name

String

그룹 명

kind

String

그룹 구분 (DBMS,FTP,TERMINAL)

comment

String

설명

2.2.5. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/service/groups/1' -i -X GET \
    -H 'Accept: application/json'

2.3. 서비스 그룹 추가

신규 서비스 그룹을 추가하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

2.3.1. HTTP request

POST /dbsafer/api/v1/service/groups HTTP/1.1
Content-Type: application/json;charset=UTF-8
Accept: application/json
Content-Length: 82
Host: localhost:3182

{
  "name" : "SampleServiceGroup001",
  "kind" : "DBMS",
  "comment" : "comment"
}

2.3.2. Request fields

Name Type Description Required

name

String

그룹 명

kind

String

그룹 구분 (DBMS,FTP,TERMINAL)

comment

String

설명

2.3.3. HTTP response

HTTP/1.1 201 Created
Location: http://localhost:8080/dbsafer/api/v1/service/groups/1
Content-Type: application/json
Content-Length: 97

{
  "index" : 1,
  "name" : "SampleServiceGroup001",
  "kind" : "DBMS",
  "comment" : "comment"
}

2.3.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/service/groups' -i -X POST \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -H 'Accept: application/json' \
    -d '{
  "name" : "SampleServiceGroup001",
  "kind" : "DBMS",
  "comment" : "comment"
}'

2.4. 서비스 그룹 수정

등록된 서비스 그룹 정보를 수정하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

2.4.1. HTTP request

PUT /dbsafer/api/v1/service/groups/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Accept: application/json
Content-Length: 63
Host: localhost:3182

{
  "name" : "SampleServiceGroup001",
  "comment" : "comment"
}

2.4.2. Path parameters

Table 1. /dbsafer/api/v1/service/groups/{index}
Parameter Description

index

그룹 Index

2.4.3. Request fields

Name Type Description Required

name

String

그룹 명

comment

String

설명

2.4.4. HTTP response

HTTP/1.1 200 OK

2.4.5. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/service/groups/1' -i -X PUT \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -H 'Accept: application/json' \
    -d '{
  "name" : "SampleServiceGroup001",
  "comment" : "comment"
}'

2.5. 서비스 그룹 삭제

등록된 서비스 그룹을 삭제하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

2.5.1. HTTP request

DELETE /dbsafer/api/v1/service/groups/1 HTTP/1.1
Host: localhost:3182

2.5.2. Path parameters

Table 1. /dbsafer/api/v1/service/groups/{index}
Parameter Description

index

그룹 Index

2.5.3. HTTP response

HTTP/1.1 204 No Content

2.5.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/service/groups/1' -i -X DELETE

2.6. 서비스 그룹 내 서비스 추가

서비스 그룹 내 서비스를 추가하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

2.6.1. HTTP request

POST /dbsafer/api/v1/service/groups/1/services/1 HTTP/1.1
Host: localhost:3182

2.6.2. Path parameters

Table 1. /dbsafer/api/v1/service/groups/{groupIndex}/services/{serviceNo}
Parameter Description

groupIndex

그룹 Index

serviceNo

서비스 번호

2.6.3. HTTP response

HTTP/1.1 200 OK

2.6.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/service/groups/1/services/1' -i -X POST

2.7. 서비스 그룹 내 서비스 제거

서비스 그룹 내 서비스를 제거하는 API를 소개합니다. 상세 내용은 아래를 참고합니다.

2.7.1. HTTP request

DELETE /dbsafer/api/v1/service/groups/1/services/1 HTTP/1.1
Host: localhost:3182

2.7.2. Path parameters

Table 1. /dbsafer/api/v1/service/groups/{groupIndex}/services/{serviceNo}
Parameter Description

groupIndex

그룹 Index

serviceNo

서비스 번호

2.7.3. HTTP response

HTTP/1.1 200 OK

2.7.4. Curl request

$ curl 'https://localhost:3182/dbsafer/api/v1/service/groups/1/services/1' -i -X DELETE

(주)피앤피시큐어

대표이사   박천오

대표번호   1670-9295          영업문의   sales@pnpsecure.com

사업자등록번호   107-86-44093

서울특별시 강서구 마곡서로 182(마곡동, 피앤피스테이션)


Copyright ⓒ 2023 pnpsecure All rights reserved. |개인정보 처리방침