Application Service > ROLE > API v3 가이드
ROLE 서비스를 이용해 권한을 체크하기 위해서는
RESTful API를 호출하거나, 클라이언트 SDK를 이용하여야 합니다.
앱키 & 비밀 키
RESTful API와 클라이언트 SDK를 사용하려면 앱키와 비밀 키가 필요합니다.
[CONSOLE] 우측 상단의 URL & Appkey 버튼을 클릭하여 발급 키 정보를 확인 할 수 있습니다.
[그림 1] 앱키 & 비밀 키 확인
RESTful API 가이드
Common Response Body
모든 API 요청에 대해 HTTP 응답 코드는 200으로 응답합니다.
자세한 응답 결과는 Response Body의 Header 항목을 참고합니다.
{
"cache": {
"cacheFlushTime": "",
"size": 0,
"sizeTree": 1,
"ttl": 5,
"sizeByPath": 6
},
"header": {
"isSuccessful": true,
"resultCode": 5,
"resultMessage": "resultMessage"
}
}
Key |
Type |
Description |
header |
Object |
응답 헤더 |
header.isSuccessful |
boolean |
성공 여부 |
header.resultCode |
int |
응답 코드. 성공 시 0, 실패 시 오류 코드 반환 |
header.resultMessage |
String |
응답 메시지. 성공 시 "SUCCESS", 실패 시 오류 메시지 반환 |
cache |
Object |
캐시 |
cache.cacheFlushTime |
String |
캐시 삭제 시간 |
cache.size |
int |
리소스 ID 기반 인증 캐시 크기 |
cache.sizeByPath |
int |
리소스 Path 기반 인증 캐시 크기 |
cache.sizeTree |
int |
리소스 Hierarchy 조회 캐시 크기 |
cache.ttl |
int |
캐시 데이터 유지 시간(초 단위) |
사용자
사용자 생성
POST "/role/v3.0/appkeys/{appKey}/users"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
CreateUserRequest |
CreateUserRequest |
Yes |
|
CreateUserRequest
Name |
Type |
Required |
Description |
users |
List<CreateUserRequest.UserProtocol> |
Yes |
사용자 목록 |
CreateUserRequest.UserProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
사용자 설명 |
roleRelations |
List<UserRoleRelationProtocol> |
No |
사용자 연관 역할 |
userId |
String |
Yes |
사용자 ID |
UserRoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionProtocol> |
No |
역할 조건 속성 |
roleApplyPolicyCode |
String |
No |
ALLOW, DENY |
roleId |
String |
Yes |
역할 ID |
scopeId |
String |
Yes |
범위 ID |
ConditionProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
사용자 삭제
DELETE "/role/v3.0/appkeys/{appKey}/users/{userId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
userId |
String |
Yes |
사용자 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
사용자 다건 삭제
DELETE "/role/v3.0/appkeys/{appKey}/users"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
userIds |
List<String> |
Yes |
사용자 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
모든 사용자 ID 목록 조회
POST "/role/v3.0/appkeys/{appKey}/users/id"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.userId,ASC ) |
Request Body |
SearchUser.Request |
SearchUser.Request |
Yes |
|
SearchUser.Request
Name |
Type |
Required |
Description |
descriptionLike |
String |
No |
사용자 설명(부분 일치) |
needRoleRelations |
Boolean |
No |
응답 시 역할 연관 관계 포함 여부(기본값: true) |
needRoleTags |
Boolean |
No |
응답 시 역할 연관 관계 포함 시 역할 태그 포함 여부(기본값: false) |
needRoleCount |
Boolean |
No |
응답 시 사용자가 가진 역할 개수 포함 여부(기본값: false) |
roleIdPreLike |
String |
No |
역할 ID(전방 일치) |
roleIds |
List<String> |
No |
역할 ID 목록(완전 일치) |
scopeIdPreLike |
String |
No |
범위 ID(전방 일치) |
scopeIds |
List<String> |
No |
범위 ID 목록(완전 일치) |
searchRoleOptionCode |
String |
No |
DIRECT_ROLE, INDIRECT_ROLE |
userIdPreLike |
String |
No |
사용자 ID(전방 일치) |
userIds |
List<String> |
No |
사용자 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 0,
"userIds" : [ "userIds", "userIds" ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
SearchAllUser.Response
Name |
Type |
Required |
Description |
totalItems |
Long |
Yes |
전체 개수 |
userIds |
List<String> |
Yes |
사용자 목록 |
사용자 정보 조회
GET "/role/v3.0/appkeys/{appKey}/users/{userId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
userId |
String |
Yes |
사용자 ID |
Query |
searchRoleOptionCode |
String |
No |
접근 가능한 역할 목록 검색 방식 |
Query |
roleIds |
List<String> |
No |
연관 관계 역할 ID |
Query |
scopeIds |
List<String> |
No |
연관 관계 범위 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"user" : {
"roleRelations" : [ {
"scopeId" : "scopeId",
"exposureOrder" : 6,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
}, {
"scopeId" : "scopeId",
"exposureOrder" : 6,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
} ],
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"userId" : "userId"
}
}
GetUser.Response
Name |
Type |
Required |
Description |
user |
UserBundleProtocol |
Yes |
사용자 |
UserBundleProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
설명 |
regYmdt |
Date |
No |
사용자 생성 일시 |
roleRelations |
List<UserBundleProtocol.UserRoleRelationBundleProtocol> |
No |
사용자에 할당된 역할 목록 |
userId |
String |
Yes |
사용자 ID |
UserBundleProtocol.UserRoleRelationBundleProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionBundleProtocol> |
No |
역할 조건 속성 |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
regYmdt |
Date |
No |
등록일시 |
roleApplyPolicyCode |
String |
Yes |
ALLOW, DENY |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
roleTags |
List<UserBundleProtocol.RoleTagProtocol> |
No |
역할 태그 목록 |
scopeId |
String |
Yes |
범위 ID |
ConditionBundleProtocol
Name |
Type |
Required |
Description |
attribute |
AttributeProtocol |
Yes |
조건 속성 |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
UserBundleProtocol.RoleTagProtocol
Name |
Type |
Required |
Description |
roleTagId |
String |
No |
역할 태그 ID |
사용자에게 할당된 역할의 변경 내역 목록 조회
GET "/role/v3.0/appkeys/{appKey}/users/{userId}/histories"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
userId |
String |
Yes |
사용자 ID |
Query |
roleId |
String |
No |
역할 ID |
Query |
scopeId |
String |
No |
범위 ID |
Query |
fromDateTime |
Date |
No |
변경 시작일시 |
Query |
toDateTime |
Date |
No |
변경 종료일시 |
Query |
historyType |
List<String> |
No |
변경 유형 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 seq,DESC ) |
Response Body
{
"totalItems" : 0,
"userHistory" : [ {
"executionTime" : "2000-01-23T04:56:07.000+00:00",
"scopeId" : "scopeId",
"userHistorySeq" : 6,
"roleId" : "roleId",
"operatorUuid" : "operatorUuid",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"userId" : "userId"
}, {
"executionTime" : "2000-01-23T04:56:07.000+00:00",
"scopeId" : "scopeId",
"userHistorySeq" : 6,
"roleId" : "roleId",
"operatorUuid" : "operatorUuid",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"userId" : "userId"
} ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetUserHistory.Response
Name |
Type |
Required |
Description |
totalItems |
Long |
Yes |
전체 개수 |
userHistory |
List<UserHistoryProtocol> |
Yes |
사용자 변경 내역 목록 |
UserHistoryProtocol
Name |
Type |
Required |
Description |
command |
String |
Yes |
USER_ADD, USER_REMOVE, ADD, REMOVE |
conditions |
List<ConditionBundleProtocol> |
No |
역할 조건 속성 |
executionTime |
Date |
Yes |
변경 일시 |
operatorUuid |
String |
No |
작업자 UUID |
roleApplyPolicyCode |
String |
No |
ALLOW, DENY |
roleId |
String |
No |
역할 ID |
scopeId |
String |
No |
범위 ID |
userHistorySeq |
Long |
Yes |
사용자 변경 이력 일렬번호 |
userId |
String |
Yes |
사용자 ID |
ConditionBundleProtocol
Name |
Type |
Required |
Description |
attribute |
AttributeProtocol |
Yes |
조건 속성 |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
사용자 목록 조회
POST "/role/v3.0/appkeys/{appKey}/users/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.userId,ASC ) |
Request Body |
SearchUser.Request |
SearchUser.Request |
Yes |
|
SearchUser.Request
Name |
Type |
Required |
Description |
descriptionLike |
String |
No |
사용자 설명(부분 일치) |
needRoleRelations |
Boolean |
No |
응답 시 역할 연관 관계 포함 여부(기본값: true) |
needRoleTags |
Boolean |
No |
응답 시 역할 연관 관계 포함 시 역할 태그 포함 여부(기본값: false) |
needRoleCount |
Boolean |
No |
응답 시 사용자가 가진 역할 개수 포함 여부(기본값: false) |
roleIdPreLike |
String |
No |
역할 ID(전방 일치) |
roleIds |
List<String> |
No |
역할 ID 목록(완전 일치) |
scopeIdPreLike |
String |
No |
범위 ID(전방 일치) |
scopeIds |
List<String> |
No |
범위 ID 목록(완전 일치) |
searchRoleOptionCode |
String |
No |
DIRECT_ROLE, INDIRECT_ROLE |
userIdPreLike |
String |
No |
사용자 ID(전방 일치) |
userIds |
List<String> |
No |
사용자 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"users" : [ {
"roleRelations" : [ {
"scopeId" : "scopeId",
"exposureOrder" : 6,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
}, {
"scopeId" : "scopeId",
"exposureOrder" : 6,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
} ],
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"userId" : "userId",
"roleCounts": [
{
"roleCount": 2,
"scopeId": "scopeId"
}
]
}, {
"roleRelations" : [ {
"scopeId" : "scopeId",
"exposureOrder" : 6,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
}, {
"scopeId" : "scopeId",
"exposureOrder" : 6,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
} ],
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"userId" : "userId",
"roleCounts": [
{
"roleCount": 2,
"scopeId": "scopeId"
}
]
} ]
}
SearchUser.Response
Name |
Type |
Required |
Description |
totalItems |
Long |
Yes |
전체 개수 |
users |
List<UserBundleProtocol> |
Yes |
사용자 목록 |
UserBundleProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
설명 |
regYmdt |
Date |
No |
사용자 생성 일시 |
roleRelations |
List<UserBundleProtocol.UserRoleRelationBundleProtocol> |
No |
사용자에 할당된 역할 목록 |
userId |
String |
Yes |
사용자 ID |
roleCounts |
List<UserRoleCountProtocol> |
No |
사용자에 할당된 역할 개수 |
UserBundleProtocol.UserRoleRelationBundleProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionBundleProtocol> |
No |
역할 조건 속성 |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
regYmdt |
Date |
No |
등록일시 |
roleApplyPolicyCode |
String |
Yes |
ALLOW, DENY |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
roleTags |
List<UserBundleProtocol.RoleTagProtocol> |
No |
역할 태그 목록 |
scopeId |
String |
Yes |
범위 ID |
UserBundleProtocol.UserRoleCountProtocol
Name |
Type |
Required |
Description |
scopeId |
String |
Yes |
범위 ID |
roleCount |
Long |
Yes |
범위 ID별 역할 개수 |
ConditionBundleProtocol
Name |
Type |
Required |
Description |
attribute |
AttributeProtocol |
Yes |
조건 속성 |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
UserBundleProtocol.RoleTagProtocol
Name |
Type |
Required |
Description |
roleTagId |
String |
No |
역할 태그 ID |
사용자 수정
PUT "/role/v3.0/appkeys/{appKey}/users/{userId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
userId |
String |
Yes |
사용자 ID |
Request Body |
PutUserRequest |
PutUserRequest |
Yes |
사용자 |
PutUserRequest
Name |
Type |
Required |
Description |
user |
PutUserRequest.UserProtocol |
Yes |
사용자 |
createUserIfNotExist |
Boolean |
No |
요청 시 존재하지 않는 사용자일 경우 생성 여부 |
PutUserRequest.UserProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
사용자 설명 |
roleRelations |
List<UserRoleRelationProtocol> |
No |
사용자 연관 역할 |
UserRoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionProtocol> |
No |
역할 조건 속성 |
roleApplyPolicyCode |
String |
No |
ALLOW, DENY |
roleId |
String |
Yes |
역할 ID |
scopeId |
String |
Yes |
범위 ID |
ConditionProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
사용자 범위 한정 수정
PUT "/role/v3.0/appkeys/{appKey}/users/{userId}/scopes/{scopeId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
userId |
String |
Yes |
사용자 ID |
Path |
scopeId |
String |
Yes |
범위 ID |
Request Body |
putUserScopeRequest |
PutUserScopeRequest |
Yes |
사용자 |
PutUserScopeRequest
Name |
Type |
Required |
Description |
user |
PutUserScopeRequest.UserProtocol |
Yes |
사용자 |
createUserIfNotExist |
Boolean |
No |
요청 시 존재하지 않는 사용자일 경우 생성 여부 |
PutUserScopeRequest.UserProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
사용자 설명 |
roleRelations |
List<UserScopeRoleRelationProtocol> |
No |
사용자 연관 역할 |
UserScopeRoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionProtocol> |
No |
역할 조건 속성 |
roleApplyPolicyCode |
String |
No |
ALLOW, DENY |
roleId |
String |
Yes |
역할 ID |
ConditionProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
사용자 인증
사용자가 리소스에 접근 권한이 있는지 검사
POST "/role/v3.0/appkeys/{appKey}/users/{userId}/authorizations/resources"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
userId |
String |
Yes |
사용자 ID |
Request Body |
PostAuthorizationResource.Request |
PostAuthorizationResource.Request |
Yes |
리소스 목록 |
PostAuthorizationResource.Request
Name |
Type |
Required |
Description |
resources |
List<PostAuthorizationResource.ResourceProtocol> |
Yes |
리소스 목록 |
PostAuthorizationResource.ResourceProtocol
Name |
Type |
Required |
Description |
attributes |
List<PostAuthorizationResource.AttributeProtocol> |
No |
조건 속성 ID |
authRequestId |
String |
No |
요청 인증 식별키 |
operationId |
String |
Yes |
오퍼레이션 ID |
resourceId |
String |
No |
리소스 ID |
resourcePath |
String |
No |
리소스 Path |
scopeId |
String |
No |
범위 ID |
PostAuthorizationResource.AttributeProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeValue |
String |
Yes |
조건 속성 값 |
Response Body
{
"authorizations" : [ {
"resourceId" : "resourceId",
"scopeId" : "scopeId",
"resourcePath" : "resourcePath",
"authRequestId" : "authRequestId",
"operationId" : "operationId",
"attributes" : [ {
"attributeId" : "attributeId",
"attributeValue" : "attributeValue"
}, {
"attributeId" : "attributeId",
"attributeValue" : "attributeValue"
} ],
"permission" : true
}, {
"resourceId" : "resourceId",
"scopeId" : "scopeId",
"resourcePath" : "resourcePath",
"authRequestId" : "authRequestId",
"operationId" : "operationId",
"attributes" : [ {
"attributeId" : "attributeId",
"attributeValue" : "attributeValue"
}, {
"attributeId" : "attributeId",
"attributeValue" : "attributeValue"
} ],
"permission" : true
} ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
PostAuthorizationResource.Response
Name |
Type |
Required |
Description |
authorizations |
List<PostAuthorizationResource.AuthorizationWithResourceProtocol> |
No |
권한 체크 결과 목록 |
PostAuthorizationResource.AuthorizationWithResourceProtocol
Name |
Type |
Required |
Description |
attributes |
List<PostAuthorizationResource.AttributeProtocol> |
Yes |
조건 속성 ID |
authRequestId |
String |
No |
요청 인증 식별키 |
operationId |
String |
Yes |
오퍼레이션 ID |
permission |
Boolean |
Yes |
권한 여부 |
resourceId |
String |
No |
리소스 ID |
resourcePath |
String |
No |
리소스 Path |
scopeId |
String |
Yes |
범위 ID |
PostAuthorizationResource.AttributeProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeValue |
String |
Yes |
조건 속성 값 |
사용자가 역할에 대한 접근 권한이 있는지 검사
POST "/role/v3.0/appkeys/{appKey}/users/{userId}/authorizations/roles"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
userId |
String |
Yes |
사용자 ID |
Request Body |
PostAuthorizationRole.Request |
PostAuthorizationRole.Request |
Yes |
|
PostAuthorizationRole.Request
Name |
Type |
Required |
Description |
roles |
List<PostAuthorizationRole.AuthRoleProtocol> |
Yes |
인증 요청 목록 |
PostAuthorizationRole.AuthRoleProtocol
Name |
Type |
Required |
Description |
attributes |
List<PostAuthorizationRole.AttributeProtocol> |
No |
조건 속성 |
authRequestId |
String |
No |
인증 요청 식별키 |
roleId |
String |
Yes |
역할 ID |
scopeId |
String |
No |
범위 ID |
PostAuthorizationRole.AttributeProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeValue |
String |
Yes |
조건 속성 값 |
Response Body
{
"authorizations" : [ {
"scopeId" : "scopeId",
"roleId" : "roleId",
"authRequestId" : "authRequestId",
"attributes" : [ {
"attributeId" : "attributeId",
"attributeValue" : "attributeValue"
}, {
"attributeId" : "attributeId",
"attributeValue" : "attributeValue"
} ],
"permission" : true
}, {
"scopeId" : "scopeId",
"roleId" : "roleId",
"authRequestId" : "authRequestId",
"attributes" : [ {
"attributeId" : "attributeId",
"attributeValue" : "attributeValue"
}, {
"attributeId" : "attributeId",
"attributeValue" : "attributeValue"
} ],
"permission" : true
} ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
PostAuthorizationRole.Response
Name |
Type |
Required |
Description |
authorizations |
List<PostAuthorizationRole.AuthorizationProtocol> |
No |
권한 체크 결과 목록 |
PostAuthorizationRole.AuthorizationProtocol
Name |
Type |
Required |
Description |
attributes |
List<PostAuthorizationRole.AttributeProtocol> |
Yes |
조건 속성 ID |
authRequestId |
String |
No |
요청 인증 식별키 |
permission |
Boolean |
Yes |
권한 여부 |
roleId |
String |
Yes |
역할 ID |
scopeId |
String |
Yes |
범위 ID |
PostAuthorizationRole.AttributeProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeValue |
String |
Yes |
조건 속성 값 |
역할
역할 생성
POST "/role/v3.0/appkeys/{appKey}/roles"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
CreateRoleRequest |
CreateRoleRequest |
Yes |
|
CreateRoleRequest
Name |
Type |
Required |
Description |
role |
RoleProtocol |
No |
역할 |
roleRelations |
List<CreateRoleRequest.RoleRelationProtocol> |
No |
조건 속성과 연관된 역할 ID 목록 |
roleTags |
List<CreateRoleRequest.RoleTagProtocol> |
No |
역할 태그 목록 |
RoleProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
CreateRoleRequest.RoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionProtocol> |
No |
역할 조건 속성 |
relatedRoleId |
String |
Yes |
조건 속성과 연관된 역할 ID |
roleApplyPolicyCode |
String |
No |
ALLOW, DENY |
ConditionProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
CreateRoleRequest.RoleTagProtocol
Name |
Type |
Required |
Description |
roleTagId |
String |
Yes |
역할 태그 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
역할 삭제
DELETE "/role/v3.0/appkeys/{appKey}/roles/{roleId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
roleId |
String |
Yes |
역할 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
역할 다건 삭제
DELETE "/role/v3.0/appkeys/{appKey}/roles/{roleId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
roleIds |
List<String> |
Yes |
역할 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
역할 사용여부 DENY(미사용)로 변경가능 여부
GET "/role/v3.0/appkeys/{appKey}/roles/{roleId}/deniable"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
roleId |
String |
Yes |
역할 ID |
Response Body
{
"deniable" : true,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetDeniableResponse
Name |
Type |
Required |
Description |
deniable |
Boolean |
No |
역할 사용여부 DENY(미사용)로 변경가능 여부 |
역할 단건 조회
GET "/role/v3.0/appkeys/{appKey}/roles/{roleId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
roleId |
String |
Yes |
역할 ID |
Response Body
{
"role" : {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleRelations" : [ {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"roleGroup" : "roleGroup"
}, {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"roleGroup" : "roleGroup"
} ],
"exposureOrder" : 0,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"appKey" : "appKey",
"attributes" : [ {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}, {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
} ],
"roleGroup" : "roleGroup"
},
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetRoleResponse
Name |
Type |
Required |
Description |
role |
RoleBundleProtocol |
Yes |
역할 |
RoleBundleProtocol
Name |
Type |
Required |
Description |
appKey |
String |
Yes |
앱키 |
attributes |
List<AttributeProtocol> |
No |
조건 속성 목록 |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
regDateTime |
Date |
Yes |
역할 생성 일시 |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
roleRelations |
List<RoleBundleProtocol.RoleRelationProtocol> |
No |
연관 관계 역할 목록 |
roleTags |
List<RoleBundleProtocol.RoleTagProtocol> |
No |
역할 태그 목록 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
RoleBundleProtocol.RoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionBundleProtocol> |
No |
역할 조건 속성 |
description |
String |
No |
역할 설명 |
regDateTime |
Date |
Yes |
역할 생성 일시 |
roleApplyPolicyCode |
String |
Yes |
ALLOW, DENY |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
roleTags |
List<RoleBundleProtocol.RoleTagProtocol> |
No |
역할 태그 목록 |
ConditionBundleProtocol
Name |
Type |
Required |
Description |
attribute |
AttributeProtocol |
Yes |
조건 속성 |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
RoleBundleProtocol.RoleTagProtocol
Name |
Type |
Required |
Description |
roleTagId |
String |
No |
역할 태그 ID |
모든 역할 ID 목록 조회
GET "/role/v3.0/appkeys/{appKey}/roles/id"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
roleIdPreLike |
String |
No |
역할 ID(전방 일치) |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.roleId,ASC ) |
Response Body
{
"totalItems" : 0,
"roleIds" : [ "roleIds", "roleIds" ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetAllRoleIds.Response
Name |
Type |
Required |
Description |
roleIds |
List<String> |
Yes |
역할 ID 목록 |
totalItems |
Long |
Yes |
전체 개수 |
역할에서 설정 가능한 모든 조건 속성 목록 조회
POST "/role/v3.0/appkeys/{appKey}/roles/{roleId}/attributes/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
roleId |
String |
Yes |
역할 ID |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서 (기본값 attributeCreationTypeCode,ASC","id.attributeId,ASC ) |
Request Body |
SearchRoleAttributes.Request |
SearchRoleAttributes.Request |
Yes |
|
SearchRoleAttributes.Request
Name |
Type |
Required |
Description |
attributeIds |
List<String> |
No |
조건 속성 ID 목록(완전 일치) |
attributeNameLike |
String |
No |
조건 속성 이름(부분 일치) |
attributeTagIds |
List<String> |
No |
조건 속성 태그 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"attributes" : [ {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}, {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
} ]
}
SearchRoleAttributes.Response
Name |
Type |
Required |
Description |
attributes |
List<AttributeProtocol> |
Yes |
역할에 부여 가능한 조건 속성 목록 |
totalItems |
Long |
Yes |
전체 개수 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
역할 목록 조회
POST "/role/v3.0/appkeys/{appKey}/roles/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서 (기본값 exposureOrder,ASC","id.roleId,ASC ) |
Request Body |
GetRoles.Request |
GetRoles.Request |
Yes |
|
GetRoles.Request
Name |
Type |
Required |
Description |
attributeIds |
List<String> |
No |
조건 속성 ID 목록(완전 일치) |
attributeTagIds |
List<String> |
No |
조건 속성 태그 ID 목록(완전 일치) |
descriptionLike |
String |
No |
역할 설명(부분 일치) |
needAttributes |
Boolean |
No |
응답 시 조건 속성 정보 포함 여부 |
needRoleRelations |
Boolean |
No |
응답 시 역할 연관 관계 ID 목록 포함 여부 |
needRoleTags |
Boolean |
No |
응답 시 역할 태그 ID 목록 포함 여부 |
relatedRoleIds |
List<String> |
No |
연관 관계 역할 ID 목록(완전 일치) |
roleGroup |
String |
No |
역할 그룹(완전 일치) |
roleGroupLike |
String |
No |
역할 그룹(부분 일치) |
roleIdPreLike |
String |
No |
역할 ID(전방 일치) |
roleIds |
List<String> |
No |
역할 ID 목록(완전 일치) |
roleNameLike |
String |
No |
역할 이름(부분 일치) |
roleTagIdExpr |
String |
No |
역할 태그 조건(구분자 ';':OR, ',':AND) |
roleTagIds |
List<String> |
No |
역할 태그 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 6,
"roles" : [ {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleRelations" : [ {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"roleGroup" : "roleGroup"
}, {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"roleGroup" : "roleGroup"
} ],
"exposureOrder" : 0,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"appKey" : "appKey",
"attributes" : [ {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}, {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
} ],
"roleGroup" : "roleGroup"
}, {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleRelations" : [ {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"roleGroup" : "roleGroup"
}, {
"regDateTime" : "2000-01-23T04:56:07.000+00:00",
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"conditions" : [ {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
}, {
"attributeId" : "instance.name",
"attributeValues" : [ "attributeValues", "attributeValues" ],
"attribute" : {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}
} ],
"roleGroup" : "roleGroup"
} ],
"exposureOrder" : 0,
"roleTags" : [ {
"roleTagId" : "roleTagId"
}, {
"roleTagId" : "roleTagId"
} ],
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"appKey" : "appKey",
"attributes" : [ {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}, {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
} ],
"roleGroup" : "roleGroup"
} ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetRoles.Response
Name |
Type |
Required |
Description |
roles |
List<RoleBundleProtocol> |
Yes |
역할 목록 |
totalItems |
Long |
Yes |
역할 전체 개수 |
RoleBundleProtocol
Name |
Type |
Required |
Description |
appKey |
String |
Yes |
앱키 |
attributes |
List<AttributeProtocol> |
No |
조건 속성 목록 |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
regDateTime |
Date |
Yes |
역할 생성 일시 |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
roleRelations |
List<RoleBundleProtocol.RoleRelationProtocol> |
No |
연관 관계 역할 목록 |
roleTags |
List<RoleBundleProtocol.RoleTagProtocol> |
No |
역할 태그 목록 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
RoleBundleProtocol.RoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionBundleProtocol> |
No |
역할 조건 속성 |
description |
String |
No |
역할 설명 |
regDateTime |
Date |
Yes |
역할 생성 일시 |
roleApplyPolicyCode |
String |
Yes |
ALLOW, DENY |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
roleTags |
List<RoleBundleProtocol.RoleTagProtocol> |
No |
역할 태그 목록 |
ConditionBundleProtocol
Name |
Type |
Required |
Description |
attribute |
AttributeProtocol |
Yes |
조건 속성 |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
RoleBundleProtocol.RoleTagProtocol
Name |
Type |
Required |
Description |
roleTagId |
String |
No |
역할 태그 ID |
역할 수정
PUT "/role/v3.0/appkeys/{appKey}/roles/{roleId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
roleId |
String |
Yes |
역할 ID |
Request Body |
UpdateRoleRequest |
UpdateRoleRequest |
Yes |
|
UpdateRoleRequest
Name |
Type |
Required |
Description |
role |
RoleMetadataProtocol |
No |
역할 |
roleRelations |
List<UpdateRoleRequest.RoleRelationProtocol> |
No |
조건 속성과 연관된 역할 ID 목록 |
roleTags |
List<UpdateRoleRequest.RoleTagProtocol> |
No |
역할 태그 목록 |
Name |
Type |
Required |
Description |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
roleGroup |
String |
No |
역할 그룹 |
roleName |
String |
No |
역할 이름 |
UpdateRoleRequest.RoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionProtocol> |
No |
역할 조건 속성 |
relatedRoleId |
String |
Yes |
조건 속성과 연관된 역할 ID |
roleApplyPolicyCode |
String |
No |
ALLOW, DENY |
ConditionProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
UpdateRoleRequest.RoleTagProtocol
Name |
Type |
Required |
Description |
roleTagId |
String |
Yes |
역할 태그 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
역할 태그
모든 역할 태그 ID 목록 조회
GET "/role/v3.0/appkeys/{appKey}/roles/tags/id"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
roleTagIdPreLike |
String |
No |
역할 태그 ID(전방 일치) |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.roleTagId,ASC ) |
Response Body
{
"totalItems" : 0,
"roleTagIds" : [ "roleTagIds", "roleTagIds" ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetAllRoleTagIds.Response
Name |
Type |
Required |
Description |
roleTagIds |
List<String> |
No |
역할 태그 ID 목록 |
totalItems |
Long |
Yes |
전체 개수 |
역할 연관 관계
역할 연관 관계 다건 생성
POST "/role/v3.0/appkeys/{appKey}/roles/{roleId}/relations"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
roleId |
String |
Yes |
역할 ID |
Request Body |
CreateRoleRelationRequest |
CreateRoleRelationRequest |
Yes |
|
CreateRoleRelationRequest
Name |
Type |
Required |
Description |
roleRelations |
List<RoleRelationProtocol> |
Yes |
역할 연관 관계 목록 |
RoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionProtocol> |
No |
역할 조건 속성 |
relatedRoleId |
String |
Yes |
조건 속성과 연관된 역할 ID |
roleApplyPolicyCode |
String |
No |
ALLOW, DENY |
ConditionProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
역할 연관 관계 다건 삭제
DELETE "/role/v3.0/appkeys/{appKey}/roles/{roleId}/relations"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
roleId |
String |
Yes |
역할 ID |
Request Body |
DeleteRoleRelationRequest |
DeleteRoleRelationRequest |
Yes |
|
DeleteRoleRelationRequest
Name |
Type |
Required |
Description |
relatedRoleIds |
List<String> |
Yes |
연관 관계 역할 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
역할 연관 관계 다건 수정
PUT "/role/v3.0/appkeys/{appKey}/roles/{roleId}/relations"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
roleId |
String |
Yes |
역할 ID |
Request Body |
UpdateRoleRelationRequest |
UpdateRoleRelationRequest |
Yes |
|
UpdateRoleRelationRequest
Name |
Type |
Required |
Description |
roleRelations |
List<RoleRelationProtocol> |
Yes |
역할 연관 관계 목록 |
RoleRelationProtocol
Name |
Type |
Required |
Description |
conditions |
List<ConditionProtocol> |
No |
역할 조건 속성 |
relatedRoleId |
String |
Yes |
조건 속성과 연관된 역할 ID |
roleApplyPolicyCode |
String |
No |
ALLOW, DENY |
ConditionProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
범위
범위 생성
POST "/role/v3.0/appkeys/{appKey}/scopes"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
CreateScope.Request |
CreateScope.Request |
Yes |
|
CreateScope.Request
Name |
Type |
Required |
Description |
description |
String |
No |
범위 설명 |
scopeId |
String |
Yes |
범위 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
범위 삭제
DELETE "/role/v3.0/appkeys/{appKey}/scopes/{scopeId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
scopeId |
String |
Yes |
범위 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
범위 다건 삭제
DELETE "/role/v3.0/appkeys/{appKey}/scopes"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
scopeIds |
List<String> |
Yes |
범위 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
모든 범위 ID 목록 조회
GET "/role/v3.0/appkeys/{appKey}/scopes/id"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
scopeIdPreLike |
String |
No |
범위 ID(전방 일치) |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.scopeId,ASC ) |
Response Body
{
"totalItems" : 0,
"scopeIds" : [ "scopeIds", "scopeIds" ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetAllScopeIds.Response
Name |
Type |
Required |
Description |
scopeIds |
List<String> |
No |
범위 ID 목록 |
totalItems |
Long |
Yes |
전체 개수 |
범위 단건 조회
GET "/role/v3.0/appkeys/{appKey}/scopes/{scopeId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
scopeId |
String |
Yes |
범위 ID |
Response Body
{
"scope" : {
"scopeId" : "scopeId",
"description" : "description"
},
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetScope.Response
Name |
Type |
Required |
Description |
scope |
ScopeProtocol |
No |
범위 |
ScopeProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
범위 설명 |
scopeId |
String |
Yes |
범위 ID |
범위 목록 조회
POST "/role/v3.0/appkeys/{appKey}/scopes/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.scopeId,ASC ) |
Request Body |
PostSearchScopes.Request |
PostSearchScopes.Request |
Yes |
|
PostSearchScopes.Request
Name |
Type |
Required |
Description |
descriptionLike |
String |
No |
범위 설명(부분 일치) |
scopeIdPreLike |
String |
No |
범위 ID(전방 일치) |
scopeIds |
List<String> |
No |
범위 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"scopes" : [ {
"scopeId" : "scopeId",
"description" : "description"
}, {
"scopeId" : "scopeId",
"description" : "description"
} ]
}
PostSearchScopes.Response
Name |
Type |
Required |
Description |
scopes |
List<ScopeProtocol> |
No |
범위 목록 |
totalItems |
Long |
No |
범위 총 개수 |
ScopeProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
범위 설명 |
scopeId |
String |
Yes |
범위 ID |
범위 수정
PUT "/role/v3.0/appkeys/{appKey}/scopes/{scopeId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
scopeId |
String |
Yes |
범위 ID |
Request Body |
UpdateScope.Request |
UpdateScope.Request |
Yes |
|
UpdateScope.Request
Name |
Type |
Required |
Description |
description |
String |
No |
설명 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
리소스
리소스 생성
POST "/role/v3.0/appkeys/{appKey}/resources"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
CreateResource.Request |
CreateResource.Request |
Yes |
|
CreateResource.Request
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
uiPath |
String |
Yes |
리소스 UI Path |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
리소스 삭제
DELETE "/role/v3.0/appkeys/{appKey}/resources/{resourceId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
resourceId |
String |
Yes |
리소스 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
리소스 다건 삭제
DELETE "/role/v3.0/appkeys/{appKey}/resources"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
resourceIds |
List<String> |
Yes |
리소스 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
리소스 단건 조회
GET "/role/v3.0/appkeys/{appKey}/resources/{resourceId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
resourceId |
String |
Yes |
리소스 ID |
Response Body
{
"resource" : {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"priority" : -27519,
"uiPath" : "uiPath"
},
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetResource.Response
Name |
Type |
Required |
Description |
resource |
ResourceProtocol |
No |
리소스 |
ResourceProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
uiPath |
String |
Yes |
리소스 UI Path |
리소스 ID 목록 조회
POST "/role/v3.0/appkeys/{appKey}/resources/id"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.resourceId,ASC ) |
Request Body |
GetAllResourceIds.Request |
GetAllResourceIds.Request |
Yes |
|
GetAllResourceIds.Request
Name |
Type |
Required |
Description |
operationIds |
List<String> |
No |
리소스 ID(전방 일치) |
resourceIdPreLike |
String |
No |
리소스에 접근 가능한 사용자 ID |
roleIds |
List<String> |
No |
리소스에 부여된 역할 ID |
userIds |
List<String> |
No |
리소스에 부여된 Operation ID |
Response Body
{
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"resourceIds" : [ "resourceIds", "resourceIds" ]
}
GetAllResourceIds.Response
Name |
Type |
Required |
Description |
resourceIds |
List<String> |
Yes |
리소스 ID 목록 |
totalItems |
Long |
Yes |
전체 개수 |
리소스 목록 조회
GET "/role/v3.0/appkeys/{appKey}/resources"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
userId |
String |
No |
리소스에 접근 가능한 사용자 ID |
Query |
roleId |
String |
No |
리소스에 부여된 역할 ID |
Query |
operationId |
String |
No |
리소스에 부여된 Operation ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"resources" : [ {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"priority" : -27519,
"uiPath" : "uiPath"
}, {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"priority" : -27519,
"uiPath" : "uiPath"
} ]
}
GetResources.Response
Name |
Type |
Required |
Description |
resources |
List<ResourceProtocol> |
No |
리소스 목록 |
ResourceProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
uiPath |
String |
Yes |
리소스 UI Path |
리소스에서 설정 가능한 모든 조건 속성 목록 조회
POST "/role/v3.0/appkeys/{appKey}/resources/attributes/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.attributeId,ASC ) |
Request Body |
SearchResourceAttributes.Request |
SearchResourceAttributes.Request |
Yes |
|
SearchResourceAttributes.Request
Name |
Type |
Required |
Description |
operationId |
String |
Yes |
오퍼레이션 ID |
resourceId |
String |
No |
리소스 ID, ID와 Path 가 둘다 있을 경우 ID 기준으로만 제공 |
resourcePath |
String |
No |
리소스 Path |
Response Body
{
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"attributes" : [ {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
}, {
"attributeId" : "attributeId",
"description" : "description",
"attributeName" : "attributeName"
} ]
}
SearchResourceAttributes.Response
Name |
Type |
Required |
Description |
attributes |
List<AttributeProtocol> |
Yes |
리소스에 부여 가능한 조건 속성 목록 |
totalItems |
Long |
Yes |
전체 개수 |
AttributeProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
description |
String |
No |
조건 속성 설명 |
리소스 목록 조회
POST "/role/v3.0/appkeys/{appKey}/resources/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 uiPath,ASC ) |
Request Body |
PostSearchResources.Request |
PostSearchResources.Request |
Yes |
|
PostSearchResources.Request
Name |
Type |
Required |
Description |
operationIds |
List<String> |
No |
리소스에 부여된 Operation ID 목록 |
resourceIdPreLike |
String |
No |
리소스 ID(전방 일치) |
resourceIds |
List<String> |
No |
리소스 ID 목록 |
resourcePath |
String |
No |
리소스 Path(완전 일치) |
resourcePathLike |
String |
No |
리소스 Path(전방 일치) |
resourcePaths |
List<String> |
No |
리소스 Path 목록(완전 일치) |
resourceUiPath |
String |
No |
리소스 UI Path(완전 일치) |
resourceUiPaths |
List<String> |
No |
리소스 UI Path 목록(완전 일치) |
roleIds |
List<String> |
No |
리소스에 부여된 역할 ID 목록 |
scopeIds |
List<String> |
No |
리소스에 접근 가능한 범위 ID 목록 |
searchRoleOptionCode |
String |
No |
접근 가능한 역할 목록 검색 방식 DIRECT_ROLE, INDIRECT_ROLE |
userIds |
List<String> |
No |
리소스에 접근 가능한 사용자 ID 목록 |
Response Body
{
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"resources" : [ {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"priority" : -27519,
"uiPath" : "uiPath"
}, {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"priority" : -27519,
"uiPath" : "uiPath"
} ]
}
PostSearchResources.Response
Name |
Type |
Required |
Description |
resources |
List<ResourceProtocol> |
Yes |
리소스 목록 |
totalItems |
Long |
Yes |
전체 개수 |
ResourceProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
uiPath |
String |
Yes |
리소스 UI Path |
리소스 수정
PUT "/role/v3.0/appkeys/{appKey}/resources/{resourceId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
resourceId |
String |
Yes |
리소스 ID |
Request Body |
UpdateResource.Request |
UpdateResource.Request |
Yes |
|
UpdateResource.Request
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
newResourceId |
String |
No |
변경할 리소스 ID |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
uiPath |
String |
Yes |
리소스 UI Path |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
리소스 계층 구조
ui path 상의 하위 리소스 페이지 조회
GET "/role/v3.0/appkeys/{appKey}/resources/{resourceId}/sub-resources"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
resourceId |
String |
Yes |
리소스 ID |
Query |
userId |
String |
No |
사용자 ID |
Query |
roleId |
String |
No |
역할 ID |
Query |
operationId |
String |
No |
오퍼레이션 ID |
Query |
scopeId |
String |
No |
범위 ID |
Query |
depth |
Integer |
No |
리소스 UI Path에서 하위의 계층 깊이 |
Query |
limit |
Integer |
No |
반환할 목록의 위치. default: INT_MAX |
Query |
offset |
Integer |
No |
반환할 목록의 시작 위치. default: 0 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"resources" : [ {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"priority" : -27519,
"uiPath" : "uiPath"
}, {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"priority" : -27519,
"uiPath" : "uiPath"
} ],
"totalItemCount" : 0
}
GetSubResources.Response
Name |
Type |
Required |
Description |
resources |
List<ResourceProtocol> |
No |
리소스 목록 |
totalItemCount |
Long |
No |
리소스 전체 개수 |
ResourceProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
uiPath |
String |
Yes |
리소스 UI Path |
리소스 Hierarchy 조회
POST "/role/v3.0/appkeys/{appKey}/resources/hierarchy/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
SearchResourceHierarchy.Request |
SearchResourceHierarchy.Request |
Yes |
|
SearchResourceHierarchy.Request
Name |
Type |
Required |
Description |
operationIds |
List<String> |
No |
리소스에 할당된 오퍼레이션 ID 목록 |
resourceIds |
List<String> |
No |
계층 구조의 Root Resource ID 목록 |
resourcePath |
String |
No |
계층 구조의 Root Resource Path |
resourceUiPath |
String |
No |
계층 구조의 Root Resource Ui Path |
roleIds |
List<String> |
No |
리소스에 할당된 역할 ID 목록 |
scopeIds |
List<String> |
No |
사용자에게 할당된 범위 ID 목록 |
userIds |
List<String> |
No |
리소스에 접근 가능한 사용자 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"resources" : [ {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"resources" : [ null, null ],
"priority" : -27519,
"uiPath" : "uiPath"
}, {
"path" : "path",
"metadata" : "metadata",
"resourceId" : "resourceId",
"name" : "name",
"description" : "description",
"resources" : [ null, null ],
"priority" : -27519,
"uiPath" : "uiPath"
} ]
}
SearchResourceHierarchy.Response
Name |
Type |
Required |
Description |
resources |
Set |
No |
리소스 계층 구조 목록 |
SearchResourceHierarchy.ResourceHierarchyProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
resources |
Set |
No |
자식 계층의 리소스 목록 |
uiPath |
String |
Yes |
리소스 UI Path |
SearchResourceHierarchy.ResourceHierarchyProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
resources |
Set |
No |
자식 계층의 리소스 목록 |
uiPath |
String |
Yes |
리소스 UI Path |
SearchResourceHierarchy.ResourceHierarchyProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
resources |
Set |
No |
자식 계층의 리소스 목록 |
uiPath |
String |
Yes |
리소스 UI Path |
SearchResourceHierarchy.ResourceHierarchyProtocol
Name |
Type |
Required |
Description |
description |
String |
No |
리소스 설명 |
metadata |
String |
No |
메타데이터 |
name |
String |
No |
리소스 이름 |
path |
String |
Yes |
리소스 Path |
priority |
Integer |
Yes |
우선순위 |
resourceId |
String |
No |
리소스 ID |
resources |
Set |
No |
자식 계층의 리소스 목록 |
uiPath |
String |
Yes |
리소스 UI Path |
(../Models/SearchResourceHierarchy.ResourceHierarchyProtocol.md)
리소스 연관 역할
리소스 역할 연관 관계 추가
POST "/role/v3.0/appkeys/{appKey}/resources/{resourceId}/authorizations"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
resourceId |
String |
Yes |
리소스 ID |
Request Body |
AddAuthorization.Request |
AddAuthorization.Request |
Yes |
|
AddAuthorization.Request
Name |
Type |
Required |
Description |
operationId |
String |
Yes |
오퍼레이션 ID |
propagation |
Boolean |
No |
Root를 제외한 모든 상위 Path에 지정한 역할을 동일하게 적용할지 여부 |
roleId |
String |
Yes |
역할 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
리소스 역할 연관 관계 목록 조회
GET "/role/v3.0/appkeys/{appKey}/resources/{resourceId}/authorizations"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
resourceId |
String |
Yes |
리소스 ID |
Response Body
{
"authorizations" : [ {
"resourceId" : "resourceId",
"roleId" : "roleId",
"operationId" : "operationId"
}, {
"resourceId" : "resourceId",
"roleId" : "roleId",
"operationId" : "operationId"
} ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetAuthorizations.Response
Name |
Type |
Required |
Description |
authorizations |
List<ResourceAuthorizationProtocol> |
No |
리소스 역할 연관 관계 목록 |
ResourceAuthorizationProtocol
Name |
Type |
Required |
Description |
operationId |
String |
Yes |
오퍼레이션 ID |
resourceId |
String |
Yes |
리소스 ID |
roleId |
String |
Yes |
역할 Id |
리소스 역할 연관 관계 삭제
DELETE "/role/v3.0/appkeys/{appKey}/resources/{resourceId}/authorizations"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
resourceId |
String |
Yes |
리소스 ID |
Query |
operationId |
String |
Yes |
오퍼레이션 ID |
Query |
roleId |
String |
Yes |
역할 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
오퍼레이션
오퍼레이션 생성
POST "/role/v3.0/appkeys/{appKey}/operations"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
CreateOperation.Request |
CreateOperation.Request |
Yes |
|
CreateOperation.Request
Name |
Type |
Required |
Description |
description |
String |
No |
오퍼레이션 설명 |
operationId |
String |
Yes |
오퍼레이션 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
오퍼레이션 삭제
DELETE "/role/v3.0/appkeys/{appKey}/operations/{operationId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
operationId |
String |
Yes |
오퍼레이션 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
오퍼레이션 다건 삭제
DELETE "/role/v3.0/appkeys/{appKey}/operations"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
operationIds |
List<String> |
Yes |
오퍼레이션 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
오퍼레이션 단건 조회
GET "/role/v3.0/appkeys/{appKey}/operations/{operationId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
operationId |
String |
Yes |
오퍼레이션 ID |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"operation" : {
"description" : "description",
"operationId" : "operationId",
"appKey" : "appKey"
}
}
GetOperation.Response
Name |
Type |
Required |
Description |
operation |
OperationResponseProtocol |
Yes |
오퍼레이션 |
OperationResponseProtocol
Name |
Type |
Required |
Description |
appKey |
String |
No |
앱키 |
description |
String |
No |
오퍼레이션 설명 |
operationId |
String |
Yes |
오퍼레이션 ID |
모든 오퍼레이션 ID 조회
GET "/role/v3.0/appkeys/{appKey}/operations/id"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
operationIdPreLike |
String |
No |
오퍼레이션 ID(전방 일치) |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.operationId,ASC ) |
Response Body
{
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"operationIds" : [ "operationIds", "operationIds" ]
}
GetAllOperationIds.Response
Name |
Type |
Required |
Description |
operationIds |
List<String> |
Yes |
오퍼레이션 ID 목록 |
totalItems |
Long |
Yes |
전체 개수 |
오퍼레이션 목록 조회(조건/페이징)
POST "/role/v3.0/appkeys/{appKey}/operations/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.operationId,ASC ) |
Request Body |
PostSearchOperations.Request |
PostSearchOperations.Request |
Yes |
|
PostSearchOperations.Request
Name |
Type |
Required |
Description |
descriptionLike |
String |
No |
오퍼레이션 설명(부분 일치) |
operationIdPreLike |
String |
No |
오퍼레이션 ID(전방 일치) |
operationIds |
List<String> |
No |
오퍼레이션 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 0,
"operations" : [ {
"description" : "description",
"operationId" : "operationId",
"appKey" : "appKey"
}, {
"description" : "description",
"operationId" : "operationId",
"appKey" : "appKey"
} ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
PostSearchOperations.Response
Name |
Type |
Required |
Description |
operations |
List<OperationResponseProtocol> |
Yes |
오퍼레이션 목록 |
totalItems |
Long |
Yes |
전체 개수 |
OperationResponseProtocol
Name |
Type |
Required |
Description |
appKey |
String |
No |
앱키 |
description |
String |
No |
오퍼레이션 설명 |
operationId |
String |
Yes |
오퍼레이션 ID |
오퍼레이션 수정
PUT "/role/v3.0/appkeys/{appKey}/operations/{operationId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
operationId |
String |
Yes |
오퍼레이션 ID |
Request Body |
UpdateOperation.Request |
UpdateOperation.Request |
Yes |
|
UpdateOperation.Request
Name |
Type |
Required |
Description |
description |
String |
No |
오퍼레이션 설명 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성
조건 속성 생성
POST "/role/v3.0/appkeys/{appKey}/attributes"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
CreateAttribute.Request |
CreateAttribute.Request |
Yes |
|
CreateAttribute.Request
Name |
Type |
Required |
Description |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
attributeRoleRelationIds |
List<String> |
No |
조건 속성과 연관된 역할 ID 목록 |
attributeTagIds |
List<String> |
No |
조건 속성 태그 ID 목록 |
description |
String |
No |
조건 속성 설명 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성 삭제
DELETE "/role/v3.0/appkeys/{appKey}/attributes/{attributeId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
attributeId |
String |
Yes |
조건 속성 ID |
Query |
forceDelete |
Boolean |
No |
강제 삭제, 기본값(false) |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성 다건 삭제
DELETE "/role/v3.0/appkeys/{appKey}/attributes"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
attributeIds |
List<String> |
Yes |
조건 속성 ID 목록 |
Request Body |
forceDelete |
Boolean |
No |
강제 삭제, 기본값(false) |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성 단건 조회
GET "/role/v3.0/appkeys/{appKey}/attributes/{attributeId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
attributeId |
String |
Yes |
조건 속성 ID |
Response Body
{
"attributeInUse" : true,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"attribute" : {
"attributeId" : "attributeId",
"attributeRoleRelations" : [ {
"attributeId" : "attributeId",
"exposureOrder" : 0,
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
}, {
"attributeId" : "attributeId",
"exposureOrder" : 0,
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
} ],
"attributeTags" : [ {
"attributeId" : "attributeId",
"attributeTagId" : "attributeTagId",
"regYmdt" : "2000-01-23T04:56:07.000+00:00"
}, {
"attributeId" : "attributeId",
"attributeTagId" : "attributeTagId",
"regYmdt" : "2000-01-23T04:56:07.000+00:00"
} ],
"description" : "description",
"attributeName" : "attributeName"
}
}
GetAttribute.Response
Name |
Type |
Required |
Description |
attribute |
AttributeBundleProtocol |
Yes |
조건 속성 |
attributeInUse |
Boolean |
Yes |
조건 속성 사용 여부 |
AttributeBundleProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
attributeRoleRelations |
List<AttributeRoleRelationProtocol> |
Yes |
조건 속성과 연관된 역할 ID 목록 |
attributeTags |
List<AttributeTagProtocol> |
Yes |
조건 속성 태그 ID |
description |
String |
No |
조건 속성 설명 |
AttributeRoleRelationProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
regYmdt |
Date |
Yes |
조건 속성과 연관된 역할 ID 생성 일시 |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
AttributeTagProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeTagId |
String |
Yes |
조건 속성 태그 ID |
regYmdt |
Date |
Yes |
조건 속성 태그 생성 일시 |
조건 속성 ID 목록 조회
POST "/role/v3.0/appkeys/{appKey}/attributes/id"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.attributeId,ASC ) |
Request Body |
SearchAttributes.Request |
SearchAttributes.Request |
Yes |
|
SearchAttributes.Request
Name |
Type |
Required |
Description |
attributeCreationTypeCodes |
List<AttributeCreationTypeCode> |
No |
조건 속성 생성 타입 목록 |
attributeDataTypeCodes |
List<AttributeDataTypeCode> |
No |
조건 속성 데이터 유형 |
attributeIdPreLike |
String |
No |
조건 속성 ID(전방 일치) |
attributeIds |
List<String> |
No |
조건 속성 ID 목록(완전 일치) |
attributeTagIds |
List<String> |
No |
조건 속성 태그 ID 목록(완전 일치) |
descriptionLike |
String |
No |
조건 속성 설명(부분 일치) |
roleIdPreLike |
String |
No |
역할 ID(전방 일치) |
roleIds |
List<String> |
No |
역할 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 0,
"attributeIds" : [ "attributeIds", "attributeIds" ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
SearchAttributeIds.Response
Name |
Type |
Required |
Description |
attributeIds |
List<String> |
Yes |
조건 속성 ID 목록 |
totalItems |
Long |
Yes |
역할 전체 개수 |
조건 속성 목록 조회
POST "/role/v3.0/appkeys/{appKey}/attributes/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.attributeId,ASC ) |
Request Body |
SearchAttributes.Request |
SearchAttributes.Request |
Yes |
|
SearchAttributes.Request
Name |
Type |
Required |
Description |
attributeCreationTypeCodes |
List<AttributeCreationTypeCode> |
No |
조건 속성 생성 타입 목록 |
attributeDataTypeCodes |
List<AttributeDataTypeCode> |
No |
조건 속성 데이터 유형 |
attributeIdPreLike |
String |
No |
조건 속성 ID(전방 일치) |
attributeIds |
List<String> |
No |
조건 속성 ID 목록(완전 일치) |
attributeTagIds |
List<String> |
No |
조건 속성 태그 ID 목록(완전 일치) |
descriptionLike |
String |
No |
조건 속성 설명(부분 일치) |
roleIdPreLike |
String |
No |
역할 ID(전방 일치) |
roleIds |
List<String> |
No |
역할 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 6,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
},
"attributes" : [ {
"attributeId" : "attributeId",
"attributeRoleRelations" : [ {
"attributeId" : "attributeId",
"exposureOrder" : 0,
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
}, {
"attributeId" : "attributeId",
"exposureOrder" : 0,
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
} ],
"attributeTags" : [ {
"attributeId" : "attributeId",
"attributeTagId" : "attributeTagId",
"regYmdt" : "2000-01-23T04:56:07.000+00:00"
}, {
"attributeId" : "attributeId",
"attributeTagId" : "attributeTagId",
"regYmdt" : "2000-01-23T04:56:07.000+00:00"
} ],
"description" : "description",
"attributeName" : "attributeName"
}, {
"attributeId" : "attributeId",
"attributeRoleRelations" : [ {
"attributeId" : "attributeId",
"exposureOrder" : 0,
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
}, {
"attributeId" : "attributeId",
"exposureOrder" : 0,
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
} ],
"attributeTags" : [ {
"attributeId" : "attributeId",
"attributeTagId" : "attributeTagId",
"regYmdt" : "2000-01-23T04:56:07.000+00:00"
}, {
"attributeId" : "attributeId",
"attributeTagId" : "attributeTagId",
"regYmdt" : "2000-01-23T04:56:07.000+00:00"
} ],
"description" : "description",
"attributeName" : "attributeName"
} ]
}
SearchAttributes.Response
Name |
Type |
Required |
Description |
attributes |
List<AttributeBundleProtocol> |
Yes |
조건 속성 목록 |
totalItems |
Long |
Yes |
역할 전체 개수 |
AttributeBundleProtocol
Name |
Type |
Required |
Description |
attributeCreationTypeCode |
String |
Yes |
COMMON_ATTRIBUTE, ROLE_ATTRIBUTE |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeId |
String |
Yes |
조건 속성 ID |
attributeName |
String |
No |
조건 속성 이름 |
attributeRoleRelations |
List<AttributeRoleRelationProtocol> |
Yes |
조건 속성과 연관된 역할 ID 목록 |
attributeTags |
List<AttributeTagProtocol> |
Yes |
조건 속성 태그 ID |
description |
String |
No |
조건 속성 설명 |
AttributeRoleRelationProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
regYmdt |
Date |
Yes |
조건 속성과 연관된 역할 ID 생성 일시 |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
AttributeTagProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeTagId |
String |
Yes |
조건 속성 태그 ID |
regYmdt |
Date |
Yes |
조건 속성 태그 생성 일시 |
조건 속성 수정
PUT "/role/v3.0/appkeys/{appKey}/attributes/{attributeId}"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
attributeId |
String |
Yes |
조건 속성 ID |
Request Body |
UpdateAttribute.Request |
UpdateAttribute.Request |
Yes |
|
UpdateAttribute.Request
Name |
Type |
Required |
Description |
attributeDataTypeCode |
String |
Yes |
STRING, NUMERIC, DAY_OF_WEEK, DATETIME, TIME, IPADDRESS, BOOLEAN |
attributeName |
String |
No |
조건 속성 이름 |
attributeRoleRelationIds |
List<String> |
No |
조건 속성과 연관된 역할 ID 목록 |
attributeTagIds |
List<String> |
No |
조건 속성 태그 ID 목록 |
description |
String |
No |
조건 속성 설명 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성 데이터 타입
조건 속성 데이터 타입 목록 조회
POST "/role/v3.0/appkeys/{appKey}/attributes/data-types"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Response Body
{
"dataTypes" : [ {
"operators" : [ {
"min" : 6,
"max" : 0,
"operatorTypeCode" : "operatorTypeCode"
}, {
"min" : 6,
"max" : 0,
"operatorTypeCode" : "operatorTypeCode"
} ],
"dataType" : "dataType"
}, {
"operators" : [ {
"min" : 6,
"max" : 0,
"operatorTypeCode" : "operatorTypeCode"
}, {
"min" : 6,
"max" : 0,
"operatorTypeCode" : "operatorTypeCode"
} ],
"dataType" : "dataType"
} ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetAttributeDataTypeResponse
Name |
Type |
Required |
Description |
dataTypes |
List<GetAttributeDataTypeResponse.AttributeDataTypeProtocol> |
Yes |
조건 속성 데이터 타입 목록 |
GetAttributeDataTypeResponse.AttributeDataTypeProtocol
Name |
Type |
Required |
Description |
dataType |
String |
Yes |
조건 속성 데이터 타입 |
operators |
List<GetAttributeDataTypeResponse.AttributeOperatorTypeProtocol> |
Yes |
조건 속성 사용 가능한 연산자 목록 |
GetAttributeDataTypeResponse.AttributeOperatorTypeProtocol
Name |
Type |
Required |
Description |
max |
Integer |
Yes |
연산자가 사용할수 있는 값의 최대 개수 |
min |
Integer |
Yes |
연산자가 사용할수 있는 값의 최소 개수 |
operatorTypeCode |
String |
Yes |
연산자 |
조건 값 유효성 체크
POST "/role/v3.0/appkeys/{appKey}/attributes/condition/validate"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
ValidateConditionValuesRequest |
ValidateConditionValuesRequest |
Yes |
|
ValidateConditionValuesRequest
Name |
Type |
Required |
Description |
conditions |
List<ConditionProtocol> |
Yes |
역할 조건 속성 |
ConditionProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeOperatorTypeCode |
String |
Yes |
ALL_CONTAINS, ANY_CONTAINS, NOT_CONTAINS, ANY_MATCH, NONE_MATCH, BETWEEN, BEYOND, GREATER_THAN, GREATER_THAN_OR_EQUAL_TO, LESS_THAN, LESS_THAN_OR_EQUAL_TO, ALLOW, NOT_ALLOW, TRUE, FALSE |
attributeValues |
List<String> |
No |
조건 속성 값 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성 역할 연관 관계
조건 속성과 연관된 역할 다건 생성
POST "/role/v3.0/appkeys/{appKey}/attributes/{attributeId}/roles"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
attributeId |
String |
Yes |
조건 속성 ID |
Request Body |
CreateAttributeRoleRelations.Request |
CreateAttributeRoleRelations.Request |
Yes |
|
CreateAttributeRoleRelations.Request
Name |
Type |
Required |
Description |
attributeRoleRelationIds |
List<String> |
Yes |
조건 속성과 연관된 역할 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성과 연관된 역할 다건 삭제
DELETE "/role/v3.0/appkeys/{appKey}/attributes/{attributeId}/roles"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
attributeId |
String |
Yes |
조건 속성 ID |
Request Body |
DeleteAttributeRoleRelations.Request |
DeleteAttributeRoleRelations.Request |
Yes |
|
DeleteAttributeRoleRelations.Request
Name |
Type |
Required |
Description |
attributeRoleRelationIds |
List<String> |
Yes |
조건 속성과 연관된 역할 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성과 연관된 역할 목록 조회
POST "/role/v3.0/appkeys/{appKey}/attributes/{attributeId}/roles/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
attributeId |
String |
Yes |
조건 속성 ID |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 attribute.id.attributeId,ASC ) |
Request Body |
SearchAttributeRoleRelations.Request |
SearchAttributeRoleRelations.Request |
Yes |
|
SearchAttributeRoleRelations.Request
Name |
Type |
Required |
Description |
roleIdPreLike |
String |
No |
조건 속성과 연관된 역할 ID(전방 일치) |
roleIds |
List<String> |
No |
조건 속성과 연관된 역할 ID 목록(완전 일치) |
searchRoleOptionCode |
String |
No |
DIRECT_ROLE, INDIRECT_ROLE |
Response Body
{
"attributeRoleRelations" : [ {
"attributeId" : "attributeId",
"exposureOrder" : 0,
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
}, {
"attributeId" : "attributeId",
"exposureOrder" : 0,
"roleId" : "roleId",
"roleName" : "roleName",
"description" : "description",
"regYmdt" : "2000-01-23T04:56:07.000+00:00",
"roleGroup" : "roleGroup"
} ],
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
SearchAttributeRoleRelations.Response
Name |
Type |
Required |
Description |
attributeRoleRelations |
List<AttributeRoleRelationProtocol> |
Yes |
조건 속성 연관 관계 Role 목록 |
totalItems |
Long |
Yes |
역할 전체 개수 |
AttributeRoleRelationProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
description |
String |
No |
역할 설명 |
exposureOrder |
Integer |
Yes |
노출 순서 |
regYmdt |
Date |
Yes |
조건 속성과 연관된 역할 ID 생성 일시 |
roleGroup |
String |
No |
역할 그룹 |
roleId |
String |
Yes |
역할 ID |
roleName |
String |
No |
역할 이름 |
조건 속성 태그
조건 속성 태그 생성
POST "/role/v3.0/appkeys/{appKey}/attributes/{attributeId}/tags"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
attributeId |
String |
Yes |
조건 속성 ID |
Request Body |
CreateAttributeTags.Request |
CreateAttributeTags.Request |
Yes |
|
Name |
Type |
Required |
Description |
attributeTagIds |
List<String> |
Yes |
조건 속성 태그 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성 태그 삭제
DELETE "/role/v3.0/appkeys/{appKey}/attributes/{attributeId}/tags"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Path |
attributeId |
String |
Yes |
조건 속성 ID |
Request Body |
DeleteAttributeTags.Request |
DeleteAttributeTags.Request |
Yes |
|
Name |
Type |
Required |
Description |
attributeTagIds |
List<String> |
Yes |
조건 속성 태그 ID 목록 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
조건 속성 태그 ID 목록 조회
POST "/role/v3.0/appkeys/{appKey}/attributes/tags/id"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.attributeTagId,ASC ) |
Request Body |
SearchAttributeTagIds.Request |
SearchAttributeTagIds.Request |
Yes |
|
SearchAttributeTagIds.Request
Name |
Type |
Required |
Description |
attributeIdPreLike |
String |
No |
조건 속성 ID(전방 일치) |
attributeIds |
List<String> |
No |
조건 속성 ID 목록(완전 일치) |
attributeTagIdPreLike |
String |
No |
조건 속성 태그 ID(전방 일치) |
attributeTagIds |
List<String> |
No |
조건 속성 태그 ID 목록(완전 일치) |
Response Body
{
"attributeTagIds" : [ "attributeTagIds", "attributeTagIds" ],
"totalItems" : 0,
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
SearchAttributeTagIds.Response
Name |
Type |
Required |
Description |
attributeTagIds |
List<String> |
Yes |
조건 속성 태그 ID 목록 |
totalItems |
Long |
Yes |
역할 전체 개수 |
조건 속성 태그 목록 조회
POST "/role/v3.0/appkeys/{appKey}/attributes/tags/search"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Query |
page |
Integer |
No |
검색을 원하는 페이지 번호(기본값 1) |
Query |
itemsPerPage |
Integer |
No |
결과를 원하는 페이지별 검색 개수(기본값 10) |
Query |
sort |
List<String> |
No |
정렬 순서(기본값 id.attributeTagId,ASC ) |
Request Body |
SearchAttributeTags.Request |
SearchAttributeTags.Request |
Yes |
|
Name |
Type |
Required |
Description |
attributeIdPreLike |
String |
No |
조건 속성 ID(전방 일치) |
attributeIds |
List<String> |
No |
조건 속성 ID 목록(완전 일치) |
attributeTagIdPreLike |
String |
No |
조건 속성 태그 ID(전방 일치) |
attributeTagIds |
List<String> |
No |
조건 속성 태그 ID 목록(완전 일치) |
Response Body
{
"totalItems" : 0,
"attributeTags" : [ {
"attributeId" : "attributeId",
"attributeTagId" : "attributeTagId",
"regYmdt" : "2000-01-23T04:56:07.000+00:00"
}, {
"attributeId" : "attributeId",
"attributeTagId" : "attributeTagId",
"regYmdt" : "2000-01-23T04:56:07.000+00:00"
} ],
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
Name |
Type |
Required |
Description |
attributeTags |
List<AttributeTagProtocol> |
Yes |
조건 속성 태그 목록 |
totalItems |
Long |
Yes |
역할 전체 개수 |
AttributeTagProtocol
Name |
Type |
Required |
Description |
attributeId |
String |
Yes |
조건 속성 ID |
attributeTagId |
String |
Yes |
조건 속성 태그 ID |
regYmdt |
Date |
Yes |
조건 속성 태그 생성 일시 |
설정
서버와 클라이언트 SDK의 캐시 제거
PUT "/role/v3.0/appkeys/{appKey}/config/cache-evict"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
설정 조회
GET "/role/v3.0/appkeys/{appKey}/config"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}
GetTenantConfigResponse
Name |
Type |
Required |
Description |
resourcePathTrailingSlashMatchPolicyCode |
String |
Yes |
IDENTICAL_PATH, NON_IDENTICAL_PATH |
설정 수정
PUT "/role/v3.0/appkeys/{appKey}/config"
Parameters
ParameterType |
Name |
Type |
Required |
Description |
Header |
X-Secret-Key |
String |
Yes |
비밀 키 |
Path |
appKey |
String |
Yes |
앱키 |
Request Body |
UpdateConfig.Request |
UpdateConfig.Request |
Yes |
|
UpdateConfig.Request
Name |
Type |
Required |
Description |
cacheSize |
Integer |
No |
리소스 ID 기반 인증 캐시 크기 |
cacheSizeByPath |
Integer |
No |
리소스 Hierarchy 조회 캐시 크기 |
cacheSizeTree |
Integer |
No |
리소스 Path 기반 인증 캐시 크기 |
cacheTtl |
Integer |
No |
캐시 데이터 유지 시간(초 단위) |
resourcePathTrailingSlashMatchPolicyCode |
String |
No |
IDENTICAL_PATH, NON_IDENTICAL_PATH |
Response Body
{
"header" : {
"isSuccessful" : true,
"resultCode" : 0,
"resultMessage" : "resultMessage"
}
}