Skip to main content

6) AIP 레이블 설정

일반 문서를 AIP 문서로 변환

API

MethodURL
POST/api/internal/protect

Request Header

NameRequiredDescription
Authorizationrequired사용자 인증 수단, JWT값
Authorization: Bearer {JWT}
참고 : JWT값은 인증/인가 서비스를 통해 발급 받는다.

Request Body

NameRequiredTypeDescription
compnayIdrequiredstring대상 문서서를 사용하는 회사ID(회사 별 키 데이터 조회 시 사용)
labelIdrequired/optionalstring적용할 레이블 id
labelNamerequired/optionalstring적용할 레이블 name
- labelId 없는 경우 labelName 사용하여 적용
srcFilePathrequiredstring원본 일반 문서 경로
dstFilePathrequiredstring변환된 AIP 문서 경로
extraInfooptionalstringJSON 형식의 추가 정보 입력(아래의 extraInfo 데이터 설명표 및 샘플 데이터 참고)
extraInfo 데이터 설명표
KeyRequiredTypeDescription
sourcerequiredjson
namerequiredstring호출 시스템 이름
fromrequiredstring호출 시스템 URL
userjson
idstring사용자 아이디
namestring사용자 이름
departstring사용자 전체 부서 (상위그룹/중위그룹/하위그룹)
dutystring사용자 직책 이름
  • 샘플 데이터
{
"source": {
"name": "EKMS",
"from": "https://devekms.softcamp.co.kr"
},
"user": {
"id": "ekmsTest@softcamp.co.kr",
"name": "ekmsTest",
"depart": "임직원/연구소/개발실/개발1팀",
"duty": "과장"
}
}

Response

NameTypeDescription
codeint0 : 성공
0 이외의 값 : 에러
messagestring"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"
}