이 가이드는 API 명세를 기반으로 자동 생성했습니다.
Classic/VPC 환경에서 이용 가능합니다.
Ncloud API 표준 규격을 적용한 API입니다.
정책 ID로 지정한 단일 정책의 상세 정보를 조회합니다.
요청
요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.
| 메서드 | URI |
|---|---|
| GET | /policies/{policyId} |
요청 헤더
Sub Account API에서 공통으로 사용하는 헤더에 대한 정보는 Sub Account 요청 헤더를 참조해 주십시오.
요청 경로 파라미터
요청 경로 파라미터에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
policyId |
String (uuid) | Required | 대상 정책의 식별자
|
요청 쿼리 파라미터
요청 쿼리 파라미터에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
withPermissions |
Boolean | Optional | 권한 상세 정보 포함 여부
|
요청 예시
요청 예시는 다음과 같습니다.
curl --location --request GET 'https://subaccount.apigw.gov-ntruss.com/api/v2/policies/4e066e50-9c3a-11e7-8a66-1e5021fa7c80' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}'
응답
응답 형식을 설명합니다.
응답 바디
응답 바디에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
policyId |
String (uuid) | - | 정책의 식별자
|
policyName |
String | - | 정책의 이름
|
policyType |
String | - | 정책 유형
|
description |
String | - | 정책에 대한 설명
|
nrn |
String | - | 정책의 NRN(Ncloud Resource Name)
|
createdDateTime |
String (date-time) | - | 정책이 생성된 일시
|
updatedDateTime |
String (date-time) | - | 정책이 마지막으로 수정된 일시
|
permissions |
List<PolicyPermission> | - | 정책이 부여하는 권한(액션 및 리소스 구문) 목록. withPermissions=true인 경우에만 반환 |
PolicyPermission
정책에 포함되는 권한(효과, 대상, 조건)
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
effect |
String | - | 권한 효과. 값은 IAM 정책 문서 문법(Effect)의 값을 그대로 사용
|
targets |
List<PolicyPermissionTarget> | - | 권한이 적용되는 대상(상품, 액션, 리소스) 목록 |
condition |
Map<Map<String | List<String>>> | - | 권한 적용 조건. 조건 연산자를 키로 하고 그 아래에 조건 키와 조건 값을 두는 중첩 맵으로 지정. 연산자는 문자열 비교와 일시 비교, Null, 그리고 각 연산자에 IfExists를 붙인 변형을 지원하며, 지원하지 않는 연산자를 지정하면 400(iam.policy.invalidConditionSyntax)으로 응답. 조건 키는 요청 주체를 식별하는 ncp: 접두의 전역 속성과 태그 키를 뒤에 붙여 쓰는 형식(예: ncp:resourceTag/{tagKey})을 사용. 지원 연산자와 조건 키의 전체 목록은 정책 조건 가이드(https://guide-gov.ncloud-docs.com/docs/subaccount-condition)를 참고
|
condition.<키>.<키> |
String | List<String> | - | 조건 값. 단일 문자열 또는 문자열 배열로 지정. 일시 비교 연산자의 값은 RFC 3339 형식의 일시 문자열이고, Null 연산자의 값은 문자열 true 또는 false |
PolicyPermissionTarget
권한이 적용되는 대상(상품, 액션, 리소스)
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
product |
String | - | 권한 대상 상품(서비스) 코드
|
actions |
List<String> | - | 권한 대상 액션 목록
|
resourceNrns |
List<String> | - | 권한 대상 리소스의 NRN 목록
|
응답 상태 코드
Sub Account API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Sub Account 응답 상태 코드를 참조해 주십시오.
이 API에만 해당하는 응답 상태 코드는 다음과 같습니다.
| HTTP 상태 코드 | 코드 | 메시지 | 설명 |
|---|---|---|---|
| 200 | - | - | 요청한 정책을 반환. withPermissions를 true로 지정한 경우에만 permissions가 포함 |
| 400 | BadRequest | The request is malformed or contains an error such as an invalid parameter value or a missing required parameter. | 유효하지 않은 요청. policyId, withPermissions 값의 형식·허용 범위 검증에 실패 |
| 403 | Forbidden | You do not have sufficient permissions to perform this action. | 요청한 자원(또는 상위 자원)에 대한 접근 권한 없음. 자원의 존재 여부와 무관하게 우선 반환 |
| 404 | NotFound | One or more of the resources in the request does not exist in the system. | 요청한 자원을 찾을 수 없음 |
응답 예시
응답 예시는 다음과 같습니다.
{
"policyId": "4e066e50-9c3a-11e7-8a66-1e5021fa7c80",
"policyName": "my-policy",
"policyType": "USER_CREATED",
"description": "정책 설명입니다",
"nrn": "nrn:GOV:IAM::25000000:Policy/4e066e50-9c3a-11e7-8a66-1e5021fa7c80",
"createdDateTime": "2019-08-10T13:21:00Z",
"updatedDateTime": "2019-08-10T13:21:00Z",
"permissions": [
{
"effect": "Allow",
"targets": [
{
"product": "IAM",
"actions": [
"View/getPolicyDetail"
],
"resourceNrns": [
"nrn:GOV:IAM::25000000:Policy/4e066e50-9c3a-11e7-8a66-1e5021fa7c80"
]
}
],
"condition": {
"StringEquals": {
"ncp:resourceTag/env": "beta"
},
"DateGreaterThan": {
"ncp:currentTime": "2026-01-01T00:00:00Z"
}
}
}
]
}