비용 할당 또는 특성 기반 접근 제어(ABAC)를 위한 태그 지정

비용 할당 또는 특성 기반 접근 제어(ABAC)를 위한 태그 지정

AWS 태그는 메타데이터를 담는 키-값 쌍이에요. 버킷 같은 Amazon S3 리소스에 태그를 연결해요. 리소스를 만들 때 태그를 지정하거나 기존 리소스의 태그를 관리할 수 있어요. 태그를 사용한다고 해서 표준 S3 API 요청 요금 외에 추가 비용은 발생하지 않아요. 자세한 내용은 Amazon S3 요금을 참고하세요.

출처: 문서

본문

태그 작동 방식 (How tags work)

Amazon S3는 두 가지 유형의 태그를 지원해요.

  • AWS 생성 태그 (AWS-generated tags) — AWS가 자동으로 적용하는 태그로, 수정하거나 제거할 수 없어요. AWS 생성 태그에 대한 자세한 내용은 AWS 생성 태그 사용을 참고하세요.
  • 사용자 정의 태그 (User-defined tags) — S3 리소스에 직접 적용하고 관리하는 태그예요.

사용자 정의 태그 (User-defined tags)

사용자 정의 태그는 리소스에 레이블을 붙이는 데 사용하는 태그 키-값 쌍이에요. 사용자 정의 태그는 필수 키와 선택적 값으로 구성돼요. 사용자 정의 태그의 주요 구성 요소는 다음과 같아요.

태그 키 (The tag key)

태그 키는 태그의 필수 이름이에요. 예를 들어 다음 태그 키-값 쌍에서 project가 태그 키예요.

Key Value
project Trinity

태그 키는 대소문자를 구분하는 문자열로, 1~128자의 유니코드 문자를 포함해야 해요. 키는 유니코드 문자나 숫자, 공백, 다음 기호만 포함할 수 있어요.

  • _ – 밑줄
  • . – 마침표
  • : – 콜론
  • / – 슬래시
  • = – 등호
  • + – 더하기 기호
  • @ – 앳 기호
  • - – 하이픈
태그 값 (The tag value)

태그 값은 선택적 문자열이에요. 예를 들어 이 태그 키-값 쌍에서 Trinity가 태그 값이에요.

Key Value
project Trinity

태그 값은 대소문자를 구분하는 문자열로, 0~256자의 유니코드 문자를 포함할 수 있어요. 값은 유니코드 문자나 숫자, 공백, 다음 기호만 포함할 수 있어요.

  • _ – 밑줄
  • . – 마침표
  • : – 콜론
  • / – 슬래시
  • = – 등호
  • + – 더하기 기호
  • @ – 앳 기호
  • - – 하이픈

사용자 정의 태그에 허용되는 문자와 기타 제한 사항에 대한 자세한 내용은 AWS Billing and Cost Management User Guide의 사용자 정의 태그 제한을 참고하세요.

태그 세트 (The tag set)

각 S3 리소스에는 해당 버킷에 할당된 모든 태그 키와 값 쌍을 담는 태그 세트가 하나 있어요. 태그 세트는 비어 있을 수 있고, 객체 태그 지정의 경우를 제외하고 최대 50개의 사용자 정의 태그를 포함할 수 있어요. 객체는 최대 10개의 태그만 가질 수 있어요.

각 키는 태그 세트에서 고유해야 하지만, 같은 값을 여러 번 사용할 수 있어요. 예를 들어 다음 두 태그 키에 같은 값 Trinity를 사용할 수 있어요.

Key Value
project Trinity
cost-center Trinity

기존 태그와 같은 키의 태그를 추가하면 새 값이 이전 값을 덮어써요.

AWS는 태그에 의미론적 의미를 부여하지 않아요. 태그를 문자 그대로 문자열로 해석해요.

태그를 추가, 나열, 수정, 삭제하려면 Amazon S3 콘솔, AWS Command Line Interface(AWS CLI) 또는 Amazon S3 API를 사용할 수 있어요.

태그를 사용하는 일반적인 방법 (Common ways to use tags)

S3 리소스에 태그를 사용하는 목적은 다음과 같아요.

  • 비용 할당 (Cost allocation) – AWS Billing and Cost Management에서 버킷 태그별로 스토리지 비용을 추적해요.
  • 특성 기반 접근 제어(ABAC) – 태그에 기반해 접근 권한을 확장하고 S3 리소스에 대한 접근을 부여해요.

참고 같은 태그를 비용 할당과 접근 제어에 모두 사용할 수 있어요.

비용 할당에 태그 사용 (Using tags for cost allocation)

S3 리소스에 태그를 적용하고 비용 할당을 위해 이 태그를 활성화해 Amazon S3 스토리지 비용을 추적해요.

비용 추적을 시작하려면:

  • S3 리소스에 태그를 추가하거나 기존 태그를 사용해요. 예를 들어 프로젝트나 프로젝트 그룹을 식별하는 태그로 버킷에 레이블을 붙일 수 있어요.
  • AWS Billing and Cost Management 콘솔에서 비용 할당을 위해 태그를 활성화해요. AWS Billing and Cost Management User Guide의 사용자 정의 비용 할당 태그 활성화를 참고하세요. 사용자 정의 태그나 AWS 생성 태그를 활성화할 수 있어요. 자세한 내용은 AWS 비용 할당 태그로 비용 구성 및 추적을 참고하세요.

AWS는 활성화된 태그를 사용해 다양한 결제 및 비용 관리 도구에서 리소스 비용을 구성해요. 예를 들면 다음과 같아요.

  • 비용 할당 보고서 (Cost allocation report) — 활성화된 태그로 구성된 비용의 상위 수준 보기를 제공해요. 자세한 내용은 AWS Billing User Guide의 월별 비용 할당 보고서 사용을 참고하세요.
  • Cost and Usage Report (CUR) — 태그 기반 비용 세부 내역을 포함한 가장 상세한 AWS 비용 및 사용량 데이터를 제공해요. 자세한 내용은 AWS Data Export User Guide의 AWS Cost and Usage Reports란 무엇인가요?를 참고하세요.
태그로 비용 추적을 지원하는 Amazon S3 리소스

다음 Amazon S3 리소스는 태그를 사용한 스토리지 비용 추적을 지원해요.

특성 기반 접근 제어(ABAC)에 태그 사용 (Using tags for attribute-based access control (ABAC))

특성 기반 접근 제어(ABAC)는 특성, 즉 태그에 기반해 권한을 정의하는 인가 전략이에요. AWS Identity and Access Management(IAM) 엔터티(사용자나 역할)와 Amazon S3 액세스 포인트, 디렉터리 버킷 같은 AWS 리소스에 태그를 연결할 수 있어요. 그러고 나서 접근 제어 정책의 태그 기반 조건으로 이 리소스에 대한 권한을 제어해, 조건이 충족될 때 작업을 허용하거나 거부해요.

ABAC를 사용하면 AWS Organizations, IAM, S3 리소스 정책에서 태그 기반 조건 키를 사용해요. 엔터프라이즈의 경우 Amazon S3의 ABAC는 여러 AWS 계정에 걸친 인가를 지원해요.

IAM 정책에서 조건 키를 사용해 버킷 태그에 기반해 S3 리소스에 대한 접근을 제어할 수 있어요.

지원되는 조건 키 — ABAC를 지원하는 모든 Amazon S3 리소스에 대해 다음 AWS 조건 키를 사용할 수 있어요.

  • aws:ResourceTag/key-name
  • aws:RequestTag/key-name
  • aws:TagKeys

일부 리소스는 추가 Amazon S3 조건 키를 지원해요. ABAC에 사용할 수 있는 조건 키의 전체 목록과 예시 정책은 해당 리소스의 다음 태그 지정 주제를 참고하세요.

ABAC를 지원하는 Amazon S3 리소스

다음 Amazon S3 리소스는 태그를 사용한 특성 기반 접근 제어(ABAC)를 지원해요.

태그 지정 전략 계획 (Planning your tagging strategy)

각 리소스 유형의 요구 사항에 맞는 태그 키 세트를 설계할 것을 권장해요. 일관된 태그 키 세트를 사용하면 리소스를 더 쉽게 관리할 수 있어요. 추가한 태그에 기반해 리소스를 검색하고 필터링할 수 있어요. 효과적인 리소스 태그 지정 전략을 구현하는 방법에 대한 자세한 내용은 Tagging Best Practices AWS Whitepaper를 참고하세요.

Amazon S3 리소스 태그 지정 모범 사례 — 태그를 사용할 때는 다음 모범 사례를 따를 것을 권장해요.

  • 조직의 모든 팀이 따르는 태그 사용 규칙을 문서화해요. 특히 이름이 설명적이면서도 일관적인지 확인해요. 예를 들어 일부 리소스에 env:production으로 태그를 지정하는 대신 environment:prod 형식으로 표준화해요. 중요: 태그에 개인 식별 정보(PII)나 기타 기밀·민감 정보를 저장하지 마세요.
  • 일관성을 보장하도록 태그 지정을 자동화해요. 예를 들어 CloudFormation 템플릿에 태그를 포함할 수 있어요. 템플릿으로 리소스를 만들면 리소스가 자동으로 태그 지정돼요.
  • 필요한 경우에만 태그를 사용해요. 불필요한 태그 증가와 복잡성을 피해요.
  • 태그를 주기적으로 검토해 관련성과 정확성을 확인해요. 필요에 따라 오래된 태그를 제거하거나 수정해요.
  • AWS Management Console의 AWS Tag Editor로 태그를 만드는 것을 고려해요. Tag Editor를 사용해 Amazon S3 리소스를 포함한 여러 지원 AWS 리소스에 동시에 태그를 추가할 수 있어요. 자세한 내용은 AWS Resource Groups User Guide의 Tag Editor를 참고하세요.

Amazon S3 리소스의 태그 관리 (Managing tags for Amazon S3 resources)

Amazon S3 리소스의 태그를 관리하는 방법에 대한 자세한 내용은 다음을 참고하세요.

더 알아보기 (Learn more)