최신 업데이트:2025-08-18 15:58:52
이 장에서는 정책의 실제 적용 사례를 더 잘 이해할 수 있도록 예제를 통해 정책을 설정하는 방법을 소개합니다.
1. 시스템 정책(System Policies)
| 정책 이름 | 권한 범위 | 기능 설명 |
|---|---|---|
| CDNWCloudWOSReadOnlyAccess | 모든 WOS 리소스(객체 스토리지) | 읽기 전용 액세스: WOS(객체 스토리지)의 모든 리소스에 대한 읽기 권한 제공 |
| CDNWCloudWOSResourceCreatorAccess | 사용자가 생성한 WOS 리소스 | 전체 관리 권한: 사용자가 생성한 스토리지 공간과 콘텐츠에 대한 전체 운영 권한 부여 |
| CDNWCloudWOSFullAccess | 모든 WOS 리소스(객체 스토리지) | 슈퍼 관리자 액세스: WOS(객체 스토리지)의 모든 리소스에 대한 전체 권한 부여 |
참고: 하위 계정에 여러 시스템 정책을 부여할 경우 시스템은 더 작은/가장 작은 정책을 사용합니다. FullAccess 권한을 부여하려면
CDNWCloudWOSFullAccess만 승인하십시오.
2. 사용자 정의 정책(Custom Policies)
사용자 정의 정책은 Identity and Access Management (IAM) 시스템에서 리소스 액세스 권한을 보다 정밀하게 관리하기 위해 사용자가 정의한 권한 제어 정책입니다. 시스템 정의 정책과 달리, 사용자 정의 정책은 특정 비즈니스 요구에 따라 권한 규칙을 설정할 수 있습니다.
(Visualized)시각적 구성을 사용하여 새 정책 생성
(Script)스크립트를 사용하여 새 정책 생성
사용자 정의 정책 구성
새로운 사용자 정의 정책을 생성한 후, 해당 사용자 정의 정책을 특정 사용자에게 권한 부여할 수 있습니다.
생성된 권한 정책 예시는 다음과 같습니다:
{
"version": "1",
"statement": [{
"effect": "allow",
"action": ["wos:GetService"],
"resource": ["wsc:wos:*:*:*"]
}]
}
참고: 콘솔의 하위 계정을 사용하려면 공간 목록을 획득하는 권한이 필요합니다. 그렇지 않으면 콘솔에서 다른 작업을 정상적으로 수행할 수 없습니다.***
버킷 이름이 "testbucket"이라고 가정합니다. 생성된 권한 정책은 다음과 같습니다:
{
"version": "1",
"statement": [
{
"effect": "allow",
"action": ["wos:*"],
"resource": [
"wsc:wos:*:*:testbucket",
"wsc:wos:*:*:testbucket/*"
]
}
]
}
버킷 이름이 "testbucket"이라고 가정했을 때 생성된 권한 정책은 다음과 같습니다:
{
"version": "1",
"statement": [
{
"effect": "allow",
"action": ["wos:GetBucket"],
"resource": ["wsc:wos:*:*:testbucket"]
},
{
"effect": "allow",
"action": [
"wos:PutObject",
"wos:GetObject",
"wos:DeleteObject",
"wos:AbortMultipartUpload",
"wos:ListParts"
]
"resource": [
"wsc:wos:*:*:testbucket/*"
]
}
]
}
버킷 이름이 "testbucket"이라고 가정하고, 이 버킷 아래에 photo, video, music이라는 디렉토리가 있으며 각 디렉토리에 카테고리 디렉토리가 있습니다. 디렉토리 트리 구조는 다음과 같습니다:
testbucket (공간)
├── photo
│ ├── 2017
│ └── 2018
├── video
│ ├── 2016
│ ├── 2017
│ └── 2018 // 이 디렉토리에 읽기 전용 권한 부여
└── music
├── 2017
└── 2018
하위 계정이 testbucket/video/2018/ 디렉토리에 읽기 전용 액세스 권한을 갖도록 승인해야 하는 경우, 두 가지 상황을 소개합니다.
상황 1: 하위 계정이 파일의 경로를 알고 있고 파일의 내용을 읽을 수 있는 권한만 필요하며, 파일 목록을 열람할 권한은 필요하지 않다.
이 시나리오의 특징은 하위 계정이 파일의 전체 경로를 알고 있으며, 이를 통해 직접 파일 내용을 읽을 수 있다는 점입니다. 보통 우리는 소프트웨어 시스템에 이러한 권한을 부여하고 시스템 내에서 파일 경로는 특정 규칙을 준수합니다 (예: 파일 이름이 직원 ID로 구성됨).
{
"version": "1",
"statement": [
{
"effect": "allow",
"action": [
"wos:GetObject"
],
"resource": [
"wsc:wos:*:*:testbucket/video/2018/*"
]
}
]
}
상황 2: 하위 계정이 객체 저장소 콘솔을 사용하여 디렉토리 testbucket/video/2018/에 접근하고 다음 권한을 생성해야 합니다:
{
"version": "1",
"statement": [
{
"effect": "allow",
"action": [
"wos:GetService"
],
"resource": [
"wsc:wos:*:*:*"
]
},
{
"effect": "allow",
"action": [
"wos:GetBucket"
],
"resource": [
"wsc:wos:*:*:testbucket"
]
},
{
"effect": "allow",
"action": [
"wos:PutObject",
"wos:DeleteObject",
"wos:PutFolder",
"wos:PutMediaOperation"
],
"resource": [
"wsc:wos:*:*:testbucket/video/2018/*"
]
}
]
}
생성된 권한 정책 예시는 다음과 같습니다:
{
"version": "1",
"statement": [{
"action": ["wos:GetBucketAnalysis"],
"effect": "allow",
"resource": ["wsc:wos:*:*:*"]
}]
}