listRoles

Prev Next

이 가이드는 API 명세를 기반으로 자동 생성했습니다.

Classic/VPC 환경에서 이용 가능합니다.

Ncloud API 표준 규격을 적용한 API입니다.

호출자 계정에 속한 역할을 페이지 단위로 조회합니다. sort 파라미터로 정렬할 수 있습니다. 목록 항목은 탐색에 필요한 필드(roleId·nrn·roleName·roleType·active·createdDateTime·updatedDateTime·lastUsedDateTime)만 반환하며, 설명·세션 만료 시간·연결된 정책·엔티티는 GET /roles/{roleId}로, 태그는 GET /roles/{roleId}/tags로 조회합니다.

요청

요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

메서드 URI
GET /roles

요청 헤더

Sub Account API에서 공통으로 사용하는 헤더에 대한 정보는 Sub Account 요청 헤더를 참조해 주십시오.

요청 쿼리 파라미터

요청 쿼리 파라미터에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
pageNo Integer (int32) Optional 페이지 번호. 0부터 시작
  • 범위: 0 ~
  • 기본값: 0
  • <예시> 0
pageSize Integer (int32) Optional 페이지당 항목 수
  • 범위: 1 ~ 100
  • 기본값: 20
  • <예시> 20
sort List<String> Optional 정렬 조건. 형식: property,(asc|desc). 허용 값: roleType, roleName, createdDateTime, updatedDateTime, lastUsedDateTime. 값이 고유하지 않은 정렬 키를 사용하면 동일한 값을 가진 항목 사이의 순서는 보장되지 않음
  • 기본값: ["createdDateTime,desc", "roleName,asc", "roleType,asc"]
  • <예시> ["createdDateTime,desc"]

요청 예시

요청 예시는 다음과 같습니다.

curl --location --request GET 'https://subaccount.apigw.gov-ntruss.com/api/v2/roles' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}'

응답

응답 형식을 설명합니다.

응답 바디

응답 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
roles List<RoleListItem> - 현재 페이지의 역할 목록. 목록 탐색에 필요한 필드(식별자·NRN·역할 이름·역할 유형·상태·생성/수정/최종 사용 일시)만 반환하며, 설명·세션 만료 시간·연결된 정책·엔티티는 GET /roles/{roleId}로, 태그는 GET /roles/{roleId}/tags로 조회
totalElements Integer (int64) - 조건에 맞는 전체 항목 수
  • <예시> 150
totalPages Integer (int32) - 전체 페이지 수
  • <예시> 8
pageNo Integer (int32) - 현재 페이지 번호. 0부터 시작
  • <예시> 0
pageSize Integer (int32) - 페이지당 항목 수
  • <예시> 20

RoleListItem

역할 목록 항목. 목록 탐색에 필요한 필드(식별자·NRN·역할 이름·역할 유형·상태·생성/수정/최종 사용 일시)만 담으며, 설명·세션 만료 시간·연결된 정책·엔티티 등 상세 정보는 GET /roles/{roleId}로, 태그는 GET /roles/{roleId}/tags로 조회

필드 타입 필수 여부 설명
roleId String (uuid) - 역할의 식별자
  • <예시> 4e066e50-9c3a-11e7-8a66-1e5021fa7c80
nrn String - 역할의 NRN(Ncloud Resource Name)
  • <예시> nrn:GOV:IAM::25000000:Role/4e066e50-9c3a-11e7-8a66-1e5021fa7c80
roleName String - 역할의 이름
  • <예시> my-role
roleType String - 역할 유형. 값은 V1 API와 같은 역할 유형 코드를 그대로 사용
  • Server | Account | SSO | NcloudStorage | Service
    • Server: 서버 인스턴스에 부여하는 역할
    • Account: 다른 계정이 전환해 사용하는 역할
    • Service: 서비스형 상품에 부여하는 역할
    • SSO: SSO 서비스가 관리하는 역할
    • NcloudStorage: Ncloud Storage 서비스가 관리하는 역할
  • <예시> Server
active Boolean - 역할 활성화 상태
  • true | false
    • true: 역할이 활성 상태
    • false: 역할이 비활성 상태여서 전환·사용 불가
  • <예시> true
createdDateTime String (date-time) - 역할이 생성된 일시
  • <예시> 2019-08-10T13:21:00Z
updatedDateTime String (date-time) - 역할이 마지막으로 수정된 일시
  • <예시> 2019-08-10T13:21:00Z
lastUsedDateTime String (date-time) - 역할이 마지막으로 사용된 일시
  • <예시> 2019-08-10T13:21:00Z

응답 상태 코드

Sub Account API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Sub Account 응답 상태 코드를 참조해 주십시오.

이 API에만 해당하는 응답 상태 코드는 다음과 같습니다.

HTTP 상태 코드 코드 메시지 설명
200 - - 조건에 맞는 역할 목록을 페이지 단위로 반환
400 BadRequest The request is malformed or contains an error such as an invalid parameter value or a missing required parameter. 유효하지 않은 요청. pageNo/pageSize 범위 위반, 지원하지 않는 sort 속성 등 쿼리 파라미터 검증 실패
403 Forbidden You do not have sufficient permissions to perform this action. 요청한 자원(또는 상위 자원)에 대한 접근 권한 없음. 자원의 존재 여부와 무관하게 우선 반환

응답 예시

응답 예시는 다음과 같습니다.

{
  "roles": [
    {
      "roleId": "4e066e50-9c3a-11e7-8a66-1e5021fa7c80",
      "nrn": "nrn:GOV:IAM::25000000:Role/4e066e50-9c3a-11e7-8a66-1e5021fa7c80",
      "roleName": "my-role",
      "roleType": "Server",
      "active": true,
      "createdDateTime": "2019-08-10T13:21:00Z",
      "updatedDateTime": "2019-08-10T13:21:00Z",
      "lastUsedDateTime": "2019-08-10T13:21:00Z"
    }
  ],
  "totalElements": 150,
  "totalPages": 8,
  "pageNo": 0,
  "pageSize": 20
}