tencent cloud

Cloud Object Storage

동향 및 공지
릴리스 노트
제품 공지
제품 소개
제품 개요
기능 개요
적용 시나리오
제품 장점
기본 개념
리전 및 액세스 도메인
규격 및 제한
제품 요금
과금 개요
과금 방식
과금 항목
프리 티어
과금 예시
청구서 보기 및 다운로드
연체 안내
FAQ
빠른 시작
콘솔 시작하기
COSBrowser 시작하기
사용자 가이드
요청 생성
버킷
객체
데이터 관리
일괄 프로세스
글로벌 가속
모니터링 및 알람
운영 센터
데이터 처리
스마트 툴 박스 사용 가이드
데이터 워크플로
애플리케이션 통합
툴 가이드
툴 개요
환경 설치 및 설정
COSBrowser 툴
COSCLI 툴
COSCMD 툴
COS Migration 툴
FTP Server 툴
Hadoop 툴
COSDistCp 툴
HDFS TO COS 툴
온라인 도구 (Onrain Dogu)
자가 진단 도구
실습 튜토리얼
개요
액세스 제어 및 권한 관리
성능 최적화
AWS S3 SDK를 사용하여 COS에 액세스하기
데이터 재해 복구 백업
도메인 관리 사례
이미지 처리 사례
COS 오디오/비디오 플레이어 사례
데이터 다이렉트 업로드
데이터 보안
데이터 검증
빅 데이터 사례
COS 비용 최적화 솔루션
3rd party 애플리케이션에서 COS 사용
마이그레이션 가이드
로컬 데이터 COS로 마이그레이션
타사 클라우드 스토리지 데이터를 COS로 마이그레이션
URL이 소스 주소인 데이터를 COS로 마이그레이션
COS 간 데이터 마이그레이션
Hadoop 파일 시스템과 COS 간 데이터 마이그레이션
데이터 레이크 스토리지
클라우드 네이티브 데이터 레이크
메타데이터 가속
데이터 레이크 가속기 GooseFS
데이터 처리
데이터 처리 개요
이미지 처리
미디어 처리
콘텐츠 조정
파일 처리
문서 미리보기
장애 처리
RequestId 가져오기
공용 네트워크로 COS에 파일 업로드 시 속도가 느린 문제
COS 액세스 시 403 에러 코드 반환
리소스 액세스 오류
POST Object 자주 발생하는 오류
보안 및 컴플라이언스
데이터 재해 복구
데이터 보안
액세스 관리
자주 묻는 질문
인기 질문
일반 문제
과금
도메인 규정 준수 문제
버킷 설정 문제
도메인 및 CDN 문제
파일 작업 문제
로그 모니터링 문제
권한 관리
데이터 처리 문제
데이터 보안 문제
사전 서명 URL 관련 문제
SDK FAQ
툴 관련 문제
API 관련 문제
Agreements
Service Level Agreement
개인 정보 보호 정책
데이터 처리 및 보안 계약
연락처
용어집

액세스 정책 언어 개요

PDF
포커스 모드
폰트 크기
마지막 업데이트 시간: 2024-06-24 17:08:32
주의:
서브 계정 또는 협업 파트너에게 액세스 정책을 추가할 때 비즈니스 요구 사항을 충족하는 데 필요한 최소한의 API 액세스 권한을 부여해야 합니다. 모든 리소스 (resource:*) 또는 모든 작업 (action:*)에 과도한 액세스 권한을 부여하는 것과 관련된 데이터 보안 리스크가 있을 수 있습니다.

개요

JSON 기반 액세스 정책 언어를 사용하는 액세스 정책은 COS(Cloud Object Storage) 리소스에 대한 액세스 권한을 부여하는 데 사용됩니다. 액세스 정책 언어를 통해 지정된 COS 리소스에 대한 조치를 수행하도록 지정된 위탁자(principal)에게 권한을 부여할 수 있습니다.
액세스 정책 언어는 버킷 정책(Bucket Policy)의 기본 요소와 용법을 설명합니다. 정책 언어에 관한 자세한 설명은 Concepts를 참조하십시오.

액세스 정책 요소

액세스 정책 언어는 다음의 기본 요소를 포함합니다.
위탁자(principal): 정책에 의해 권한이 부여되는 엔티티입니다. 예시로 사용자(루트 계정, 서브 계정, 익명 사용자), 사용자 그룹 등이 있습니다. 이 요소는 사용자 액세스 정책이 아닌 버킷 액세스 정책에 유효합니다.
명령(statement): 하나 또는 여러 개의 권한의 자세한 정보를 기술하는 데 사용합니다. 이 요소에는 효력, 작업, 리소스, 조건 등의 기타 여러 요소의 권한 또는 권한 집합이 포함됩니다. 하나의 정책에는 하나의 명령 요소만 가지고 있습니다.
효력(effect): 선언으로 발생한 결과가 “허용”인지 “명시적 거부”인지 기술합니다. allow 및 deny 두 가지 상황을 포함합니다. 이 요소는 필수 항목입니다.
작업(action): 허용 또는 거부의 작업을 기술하는 데 사용합니다. 작업은 API(접두사 name으로 표시) 또는 기능 집합(특정한 API 구성, 접두사 permid로 표시)이 가능합니다. 이 요소는 필수 항목입니다.
리소스(resource): 권한 부여의 구체적인 데이터를 기술합니다. 리소스는 6단식 기술을 사용하며, 모든 제품마다 리소스의 정보 정의의 차이가 있습니다. 리소스 정보를 어떻게 지정할 지에 대한 것은 작성한 리소스 선언에 대한 제품 문서를 참조하십시오. 이 요소는 필수 항목입니다.
조건(condition): 정책의 효력이 발생하는 규제 조건을 기술합니다. 조건에는 오퍼레이터, 작업 키와 작업 값 구성이 포함됩니다. 조건 값은 시간, IP 주소 등의 정보를 포함합니다. 어떤 서비스는 조건에 기타 값을 지정하는 것을 허용합니다. 이 요소는 필수 항목입니다.

요소 사용 방법

지정 위탁자(principal)

principal은 사용자, 계정, 서비스 또는 리소스 액세스가 허용되거나 허용되지 않는 다른 엔터티를 지정하는 데 사용됩니다. principal은 버킷에서만 작동하며 이러한 정책은 특정 사용자에게 직접 추가되기 때문에 사용자 정책에는 필요하지 않습니다. 다음 예시에서는 principal을 지정합니다.
"principal":{
"qcs":[
"qcs::cam::uin/100000000001:uin/100000000001"
]
}
익명 사용자에 권한 부여
"principal":{
"qcs":[
"qcs::cam::anonymous:anonymous"
]
}
루트 계정 UIN 100000000001에 권한 부여
"principal":{
"qcs":[
"qcs::cam::uin/100000000001:uin/100000000001"
]
}
서브 계정 UIN 100000000011(루트 계정 UIN은 100000000001)에 권한 부여
주의:
작업을 수행하기 전 서브 계정이 루트 계정의 서브 계정 리스트에 추가되었는지 확인하십시오.
"principal":{
"qcs":[
"qcs::cam::uin/100000000001:uin/100000000011"
]
}

지정 효력

리소스에 대한 액세스 권한을 명시적으로 부여(허용)하지 않는 경우 액세스가 암묵적으로 거부됩니다. 또한 리소스에 대한 액세스를 명시적으로 거부(deny)할 수 있어 이런 방식으로 리소스에 대한 액세스를 거부할 수도 있습니다. 이는 다른 정책에서 액세스를 허용하더라도 사용자가 리소스에 액세스할 수 없도록 하기 위해 수행할 수 있습니다. 다음 예시는 허용 효과를 지정합니다.
"effect" : "allow"

지정 작업

COS는 정책에서 특정한 COS 작업을 지정할 수 있으며, 지정 작업과 API 요청 발송 작업은 완전히 일치합니다. 다음은 일부 버킷 작업과 객체 작업입니다. 자세한 내용은 API 작업 리스트 문서를 참조하십시오.

버킷 작업

설명
해당 API 인터페이스
name/cos:GetService
GET Service
name/cos:GetBucket
GET Bucket (List Objects)
name/cos:PutBucket
PUT Bucket
name/cos:DeleteBucket
DELETE Bucket

객체 작업

설명
해당 API 인터페이스
name/cos:GetObject
GET Object
name/cos:PutObject
PUT Object
name/cos:HeadObject
HEAD Object
name/cos:DeleteObject
DELETE Object
허용된 작업의 예시는 다음과 같습니다.
"action":[
"name/cos:GetObject",
"name/cos:HeadObject"
]

지정 리소스

리소스(resource)요소는 하나 또는 여러 작업 객체를 기술합니다. 예시로 COS 버킷 또는 객체 등이 있으며, 모든 리소스는 6단식 기술을 사용합니다.
qcs:project_id:service_type:region:account:resource
매개변수 설명은 다음과 같습니다.
매개변수
설명
필수 여부
qcs
는 qcloud service의 약칭으로 Tencent Cloud의 클라우드 서비스를 의미합니다.
필수
project_id
항목 정보이며 CAM 초기 로직에만 호환됩니다.
선택 가능
service_type
COS와 같은 제품 약칭입니다.
필수
region
리전 정보입니다. Tencent Cloud COS가 지원하는 리전 및 액세스 도메인을 참조하십시오.
필수
account
리소스 소유자의 루트 계정 정보이며, 리소스 소유자를 설명하는 두가지 방식을 지원합니다. 첫 번째 방식은 uin 방식, 즉 루트 계정의 UIN 계정이며 uin/${OwnerUin}로 표시됩니다(예: uin/100000000001). 또 다른 방식은 uid 방식, 즉 루트 계정의 APPID이며 uid/${appid}로 표시됩니다(예: uid/1250000000). 현재 COS의 리소스 소유자는 일괄적으로 uid 방식을 사용해 표시합니다. 즉 루트 계정의 개발사 APPID입니다.
필수
resource
구체적인 리소스 세부 내용을 의미합니다. COS 서비스에서는 버킷 XML API 호출 도메인을 이용해 설명합니다.
필수
다음은 지정 버킷 examplebucket-1250000000의 예시입니다.
"resource": ["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"]
다음은 지정 버킷 examplebucket-1250000000의 /folder/ 폴더에 있는 모든 객체 예시입니다.
"resource": ["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/folder/*"]
다음은 지정 버킷 examplebucket-1250000000에 있는 /folder/exampleobject 객체 예시입니다.
"resource": ["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/folder/exampleobject"]

지정 조건

권한을 부여 받을 경우 액세스 정책 언어로 조건을 지정할 수 있습니다. 사용자 액세스 제한, 권한 부여 시간 제한 등이 그 예입니다. 다음은 현재 지원하는 조건 오퍼레이터 리스트 및 통용되는 조건 키, 예시 등의 정보입니다.
조건 오퍼레이터
의미
조건 이름
예시
ip_equal
IP 일치
qcs:ip
{"ip_equal":{"qcs:ip ":"10.121.2.0/24"}}
ip_not_equal
IP 불일치
qcs:ip
{"ip_not_equal":{"qcs:ip ":["10.121.1.0/24", "10.121.2.0/24"]}}
다음은 액세스 IP가 IP 대역 내에 있는 10.121.2.0/24 예시입니다.
"ip_equal":{"qcs:ip ":"10.121.2.0/24"}
다음은 액세스 IP가 101.226.100.185와 101.226.100.186인 예시입니다.
"ip_equal":{
"qcs: ip": [
"101.226.100.185",
"101.226.100.186"
]
}

실제 사례

루트 계정이 익명 사용자를 허용하고 액세스 출처 IP가 101.226.100.185/101.226.100.186인 경우 화남 리전의 버킷이 examplebucket-1250000000인 객체에 대해 GET(다운로드)과 HEAD 작업을 실행하여 인증할 필요가 없습니다. 자세한 내용은 권한 설정 관련 사례를 참고하십시오.
{
"version": "2.0",
"principal":{
"qcs":[
"qcs: : cam: : anonymous: anonymous"
]
},
"statement": [
{
"action":[
"name/cos: GetObject",
"name/cos: HeadObject"
],
"condition":{
"ip_equal":{
"qcs: ip": [
"101.226.100.185",
"101.226.100.186"
]
}
},
"effect": "allow",
"resource":[
"qcs: : cos: ap-guangzhou: uid/1250000000: examplebucket-1250000000.ap-guangzhou.myqcloud.com/*"
]
}
]
}


도움말 및 지원

문제 해결에 도움이 되었나요?

피드백