6) AIP 레이블 설정
일반 문서를 AIP 문서로 변환
API
Method | URL |
---|---|
POST | /api/internal/protect |
Request Header
Name | Required | Description |
---|---|---|
Authorization | required | 사용자 인증 수단, JWT값 Authorization: Bearer {JWT} 참고 : JWT값은 인증/인가 서비스를 통해 발급 받는다. |
Request Body
Name | Required | Type | Description |
---|---|---|---|
compnayId | required | string | 대상 문서서를 사용하는 회사ID(회사 별 키 데이터 조회 시 사용) |
labelId | required/optional | string | 적용할 레이블 id |
labelName | required/optional | string | 적용할 레이블 name - labelId 없는 경우 labelName 사용하여 적용 |
srcFilePath | required | string | 원본 일반 문서 경로 |
dstFilePath | required | string | 변환된 AIP 문서 경로 |
extraInfo | optional | string | JSON 형식의 추가 정보 입력(아래의 extraInfo 데이터 설명표 및 샘플 데이터 참고) |
extraInfo 데이터 설명표
Key Required Type Description source required json name required string 호출 시스템 이름 from required string 호출 시스템 URL user json id string 사 용자 아이디 name string 사용자 이름 depart string 사용자 전체 부서 (상위그룹/중위그룹/하위그룹) duty string 사용자 직책 이름
- 샘플 데이터
{
"source": {
"name": "EKMS",
"from": "https://devekms.softcamp.co.kr"
},
"user": {
"id": "ekmsTest@softcamp.co.kr",
"name": "ekmsTest",
"depart": "임직원/연구소/개발실/개발1팀",
"duty": "과장"
}
}
Response
Name | Type | Description |
---|---|---|
code | int | 0 : 성공 0 이외의 값 : 에러 |
message | string | "OK" : 성공 이외의 값 에러 메시지 |
Examples
Request
- Body
[labelId 사용]
{
"companyId": "gNzvLhk8-cVXfQ41A-FSfFVW0m-w4yc4M00",
"labelId": "070b7e3a-bb66-47e0-8196-7d030d54190d",
"srcFilePath" : "/opt/shieldrm/data/test.xlsx",
"dstFilePath" : "/opt/shieldrm/dataout_test.xlsx" ,
"extraInfo" : "{\"source\":{\"name\":\"EKMS\",\"from\":\"https://devekms.softcamp.co.kr\"},\"user\":{\"id\":\"ekmsTest@softcamp.co.kr\",\"name\":\"ekmsTest\",\"depart\":\"임직원/연구소/개발실/개발1팀\",\"duty\":\"과장\"}}"
}
[labelName 사용]
{
"companyId": "gNzvLhk8-cVXfQ41A-FSfFVW0m-w4yc4M00",
"labelName": "Protected by SHIELDRM(DEV)",
"srcFilePath" : "/opt/shieldrm/data/test.xlsx",
"dstFilePath" : "/opt/shieldrm/dataout_test.xlsx" ,
"extraInfo" : "{\"source\":{\"name\":\"EKMS\",\"from\":\"https://devekms.softcamp.co.kr\"},\"user\":{\"id\":\"ekmsTest@softcamp.co.kr\",\"name\":\"ekmsTest\",\"depart\":\"임직원/연구소/개발실/개발1팀\",\"duty\":\"과장\"}}"
}
Response
- 성공
{
"code": 0,
"message" : "OK"
}
- 실패
- Status code : 400 Bad Request
{
"code": 40001,
"message": "Missing required input values",
}
- Status code : 401 UNAUTHORIZED
{
"code": 40001,
"message": "Invalid token",
}
- Status code : 500 INTERNAL_SERVER_ERROR
{
"code": 50001,
"message": "400 : \"{\"code\":40011,\"message\":\"Unable to AzureInfo\",\"detail\":\"OpenidTenant is Empty\"}\""
}
{
"code": 50001,
"message": "No matching labelId found"
}