이 가이드는 API 명세를 기반으로 자동 생성했습니다.
Classic/VPC 환경에서 이용 가능합니다.
Ncloud API 표준 규격을 적용한 API입니다.
Sub Account는 여러 사용자가 같은 리소스를 이용하고 관리할 수 있는 서브 계정을 제공하는 네이버 클라우드 플랫폼의 서비스입니다.
Sub Account 서비스에서는 서브 계정, 그룹, 정책, 역할 기능에 대한 API를 RESTful 형태로 제공합니다.
API의 가독성을 높이기 위해 Sub Account API의 v1 버전을 ncloud에서 정의한 표준 표현에 의거하여 v2 버전으로 새롭게 출시하였습니다.
Sub Account 요청 형식
Sub Account API에서 공통으로 사용하는 요청 형식을 설명합니다.
API URL
요청 API URL은 다음과 같습니다.
https://subaccount.apigw.gov-ntruss.com/api/v2
요청 헤더
요청 헤더에 대한 설명은 다음과 같습니다.
| 필드 | 필수 여부 | 설명 |
|---|---|---|
x-ncp-apigw-timestamp |
Required | 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간(밀리초)
|
x-ncp-iam-access-key |
Required | 네이버 클라우드 플랫폼에서 발급받은 Access Key
|
x-ncp-apigw-signature-v2 |
Required | 네이버 클라우드 플랫폼에서 발급받은 Access Key에 맵핑되는 Secret Key 및 HMAC 암호화 알고리즘(HmacSHA256)으로 요청 정보를 암호화한 후 Base64로 인코딩한 서명
|
Sub Account 응답 형식
Sub Account API에서 공통으로 사용하는 응답 형식을 설명합니다.
응답 바디
API 오류 시 공통으로 반환하는 응답 바디는 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
error |
Object | - | 에러 상세 정보 |
error.errorCode |
String | - | 표준 NCP Error Code
|
error.message |
String | - | 에러 설명 메시지
|
error.detail |
String | - | 에러 상세 원인. 원인이 된 자원 식별자 등 상세 원인이 있을 때만 포함
|
error.fieldErrors |
List<Object> | - | 요청 본문 검증에 실패한 필드 목록. 400 Bad Request에서 검증 실패가 여러 건이면 전량 포함되며, 그 외 에러 응답에는 포함되지 않음 |
error.fieldErrors[].field |
String | - | 실패한 필드의 경로. 배열 요소는 인덱스로 표기
|
error.fieldErrors[].message |
String | - | 실패 사유 메시지
|
동기 방식 배치 API는 오류를 error와 failures 두 가지 중 하나의 형태로 응답합니다. 요청 항목과 무관한 오류(인증·권한, 요청 형식, 서버 내부 오류 등)는 error로, 요청 항목의 처리에서 발생한 실패는 failures로 반환합니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
failures |
Map<Object> | - | 실패 목록. 키는 요청 배열의 순서 인덱스이며, 실패가 발생한 항목만 포함
|
failures.{index} |
Object | - | 실패 항목의 에러 정보 |
failures.{index}.errorCode |
String | - | 표준 NCP Error Code
|
failures.{index}.message |
String | - | 에러 설명 메시지
|
failures.{index}.detail |
String | - | 에러 상세 원인. 원인이 된 자원 식별자를 포함
|
응답 상태 코드
응답 상태 코드에 대한 설명은 다음과 같습니다.
| HTTP 상태 코드 | 코드 | 메시지 | 설명 |
|---|---|---|---|
| 200 | - | - | 각 API 문서의 응답 상태 코드를 참조 |
| 201 | - | - | 각 API 문서의 응답 상태 코드를 참조 |
| 204 | - | - | 각 API 문서의 응답 상태 코드를 참조 |
| 400 | BadRequest | The request is malformed or contains an error such as an invalid parameter value or a missing required parameter. | 각 API 문서의 응답 상태 코드를 참조 |
| 400 | LimitExceeded | The request exceeds the resource limit. | 각 API 문서의 응답 상태 코드를 참조 |
| 401 | Unauthorized | Invalid authentication credentials. | 유효하지 않은 인증 정보 |
| 403 | Forbidden | You do not have sufficient permissions to perform this action. | 각 API 문서의 응답 상태 코드를 참조 |
| 403 | AccessDenied | The request was denied by an access policy. | 각 API 문서의 응답 상태 코드를 참조 |
| 404 | NotFound | One or more of the resources in the request does not exist in the system. | 각 API 문서의 응답 상태 코드를 참조 |
| 404 | RoleNotFound | The specified role could not be found. | 각 API 문서의 응답 상태 코드를 참조 |
| 404 | SubAccountNotFound | The specified sub account could not be found. | 각 API 문서의 응답 상태 코드를 참조 |
| 404 | AccessKeyNotFound | The specified access key could not be found. | 각 API 문서의 응답 상태 코드를 참조 |
| 404 | GroupNotFound | The specified group could not be found. | 각 API 문서의 응답 상태 코드를 참조 |
| 409 | AlreadyExists | A resource with the requested identifier already exists. | 각 API 문서의 응답 상태 코드를 참조 |
| 409 | ResourceInUse | The specified resource is in use. | 각 API 문서의 응답 상태 코드를 참조 |
| 409 | Conflict | The request could not be processed because of a conflict in the current status of the resource. | 각 API 문서의 응답 상태 코드를 참조 |
| 500 | InternalServerError | The request processing has failed because of an unknown error, exception, or failure. | 서버 내부 오류 발생 |
네이버 클라우드 플랫폼에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Ncloud API 응답 상태 코드를 참조해 주십시오.
Sub Account API
Sub Account 서비스에서 제공하는 API에 대한 설명은 다음과 같습니다.
Sub Account
Sub Account 관련 API에 대한 설명은 다음과 같습니다.
Group
Group 관련 API에 대한 설명은 다음과 같습니다.
| API | 설명 |
|---|---|
| createGroup | 그룹 생성 |
| getGroup | 그룹 상세 조회 |
| listGroupTags | 그룹 태그 목록 조회 |
| listGroups | 그룹 목록 조회 |
| updateGroup | 그룹 수정 |
| deleteGroup | 그룹 삭제 |
| addGroupTag | 그룹 태그 추가 |
| attachGroupPolicies | 그룹에 정책 연결 |
| attachGroupSubAccounts | 그룹에 서브 계정 연결 |
| detachGroupPolicies | 그룹에서 정책 연결 해제 |
| detachGroupSubAccounts | 그룹에서 서브 계정 연결 해제 |
| removeGroupTag | 그룹 태그 삭제 |
Policy
Policy 관련 API에 대한 설명은 다음과 같습니다.
| API | 설명 |
|---|---|
| createPolicy | 정책 생성 |
| getPolicy | 정책 상세 조회 |
| listPolicies | 정책 목록 조회 |
| listPolicyResources | 정책 리소스 목록 조회 |
| listPolicyTags | 정책 태그 목록 조회 |
| updatePolicy | 정책 수정 |
| deletePolicy | 정책 삭제 |
| addPolicyTag | 정책 태그 추가 |
| deletePolicies | 여러 정책 일괄 삭제 |
| removePolicyTag | 정책 태그 삭제 |
| validatePolicy | 정책 검증 |
Role
Role 관련 API에 대한 설명은 다음과 같습니다.
| API | 설명 |
|---|---|
| createRole | 역할 생성 |
| createSwitchableRole | 전환 가능 역할 추가 |
| getRole | 역할 상세 조회 |
| getRoleAccount | 역할의 대상 계정 조회 |
| getSwitchableRole | 전환 가능 역할 단건 조회 |
| listRoleTags | 역할 태그 목록 조회 |
| listRoles | 역할 목록 조회 |
| listSwitchableRoles | 전환 가능 역할 목록 조회 |
| updateSwitchableRole | 전환 가능 역할 수정 |
| updateRole | 역할 수정 |
| deleteRole | 역할 삭제 |
| deleteSwitchableRole | 전환 가능 역할 삭제 |
| addRoleTag | 역할 태그 추가 |
| attachRoleAccount | 역할에 대상 계정 연결 |
| attachRoleEntities | 역할에 엔티티 연결 |
| attachRolePolicies | 역할에 정책 연결 |
| changeRoleStatus | 역할 상태 변경 |
| changeRolesStatus | 여러 역할의 상태 변경 |
| deleteSwitchableRoles | 전환 가능 역할 일괄 삭제 |
| detachRoleAccount | 역할에서 대상 계정 연결 해제 |
| detachRoleEntities | 역할에서 엔티티 연결 해제 |
| detachRolePolicies | 역할에서 정책 연결 해제 |
| removeRoleTag | 역할 태그 삭제 |
Sub Account 연관 콘텐츠
Sub Account API에 대한 사용자의 이해를 돕기 위해 다양한 연관 콘텐츠를 제공하고 있습니다.
-
Sub Account API 사용 방법
- API 개요: 네이버 클라우드 플랫폼에서 발급받은 Access Key, Secret Key 발급 및 확인, 요청 헤더에 필요한 서명 생성 방법
- Sub Account 사용 가이드: 서브 계정의 Access Key 발급 및 확인 방법
- API Gateway 사용 가이드: 요청 헤더에 필요한 API Key 확인 방법
-
Sub Account 서비스 사용 방법
- Sub Account 사용 가이드: 네이버 클라우드 플랫폼 콘솔에서 Sub Account 사용하는 방법
- Ncloud 사용 환경 가이드: VPC, Classic 환경 및 지원 여부에 대한 가이드
- 요금 소개, 특징, 상세 기능: Sub Account의 요금 체계, 특징, 상세 기능 요약
- 서비스 최신 소식: Sub Account 관련 최신 소식
- 자주 하는 질문: Sub Account 사용자들이 자주 하는 질문
- 문의하기: 사용 가이드를 통해서도 궁금증이 해결되지 않는 경우 직접 문의