Lambda에서 속성 기반 액세스 제어 사용
Lambda에서 속성 기반 액세스 제어 사용 (Using attribute-based access control in Lambda)
속성 기반 액세스 제어(ABAC)를 사용하면 태그로 Lambda 리소스에 대한 액세스를 제어할 수 있습니다. 특정 Lambda 리소스에 태그를 연결하거나, 특정 API 요청에 태그를 연결하거나, 요청을 하는 AWS Identity and Access Management(IAM) 보안 주체(principal)에 태그를 연결할 수 있습니다. AWS가 속성 기반 액세스 권한을 부여하는 방법에 대한 자세한 내용은 IAM 사용 안내서의 태그를 사용한 AWS 리소스 액세스 제어를 참조하세요.
본문
ABAC를 사용하면 IAM 정책에서 Amazon 리소스 이름(ARN)이나 ARN 패턴을 지정하지 않고 최소 권한(least privilege)을 부여할 수 있습니다. 대신 IAM 정책의 조건(condition) 요소에 태그를 지정해 액세스를 제어할 수 있습니다. ABAC를 사용하면 새 리소스를 만들 때마다 IAM 정책을 업데이트할 필요가 없어 확장이 더 쉽습니다. 대신 새 리소스에 태그를 추가해 액세스를 제어하세요.
Lambda에서 태그는 다음 리소스에 적용됩니다:
- 함수(Functions) — 함수 태그 지정에 대한 자세한 내용은 Lambda 함수에서 태그 사용을 참조하세요.
- 코드 서명 구성(Code signing configurations) — 코드 서명 구성 태그 지정에 대한 자세한 내용은 코드 서명 구성에서 태그 사용을 참조하세요.
- 이벤트 소스 매핑(Event source mappings) — 이벤트 소스 매핑 태그 지정에 대한 자세한 내용은 이벤트 소스 매핑에서 태그 사용을 참조하세요.
레이어에는 태그가 지원되지 않습니다.
태그를 기반으로 IAM 정책 규칙을 작성하는 데 다음 조건 키를 사용할 수 있습니다:
- aws:ResourceTag/tag-key — Lambda 리소스에 연결된 태그를 기반으로 액세스를 제어합니다.
- aws:RequestTag/tag-key — 새 함수를 만들 때처럼 요청에 태그가 있어야 하도록 요구합니다.
- aws:PrincipalTag/tag-key — IAM 보안 주체(요청하는 사람)의 IAM 사용자 또는 역할에 연결된 태그를 기반으로 그가 수행할 수 있는 작업을 제어합니다.
- aws:TagKeys — 요청에서 특정 태그 키를 사용할 수 있는지 제어합니다.
조건을 지원하는 작업에 대해서만 조건을 지정할 수 있습니다. 각 Lambda 작업이 지원하는 조건 목록은 Service Authorization Reference의 AWS Lambda 작업, 리소스 및 조건 키를 참조하세요. aws:ResourceTag/tag-key 지원은 "AWS Lambda가 정의한 리소스 유형"을, aws:RequestTag/tag-key 및 aws:TagKeys 지원은 "AWS Lambda가 정의한 작업"을 참조하세요.
관련 주제
- 태그로 함수 보안 유지
더 알아보기 (Learn more)
- Lambda 태그 사용
- IAM 속성 기반 액세스 제어
- AWS 리소스 태그 기반 액세스 제어