쿠버네티스/Security
[K8S] RBAC란
CrunchyDev
2023. 12. 31. 21:43
1. 롤
- 롤(Role)은 특정 API나 자원 사용 권한을 명시한 규칙 집합을 의미한다. 롤과 클러스터롤이 있다.
- 롤은 해당 롤이 속한 네임스페이스에만 적용된다.
- 클러스터롤은 특정 네임스페이스가 아닌, 클러스터 전체 사용 권한을 관리한다.
2. RBAC
- 쿠버네티스 초기에는 ABAC를 주로 사용했으나, 현재는 RBAC를 사용하고 있다.
- RBAC(Role Based Access Control)는 사용자의 역할을 기반으로 쿠버네티스 클러스터 내 사용자 액세스를 허용하거나 제한하는 역할을 수행한다.
- 누가(주체), 무엇을(동사), 어디에(네임스페이스) 실행할 수 있는지 결정하는 권한 또는 템플릿 집합을 수반하는 아이덴디티 및 액세스 관리 형식이다.
3. 바인딩
- 바인딩에는 역할 바인딩과 클러스터 역할 바인딩이 있다.
- 역할 바인딩(Role Binding)을 통해 사용자, 사용자 그룹, 서비스 계정 이름을 하나의 역할로 통합하여 특정 네임스페이스에 접근할 수 있도록 한다. (롤 ↔ 사용자)
- 클러스터 역할 바인딩(Cluster Role Binding)은 한 클러스터에 있는 모든 네임스페이스에 클러스터 역할을 연결한다. (클러스터롤 ↔ 사용자)