4장. 승인 컨트롤러 적용 사용
Red Hat Advanced Cluster Security for Kubernetes는 Kubernetes 승인 컨트롤러 및 OpenShift Container Platform 승인 플러그인과 함께 작동하므로 Kubernetes 또는 OpenShift Container Platform에서 워크로드를 생성하기 전에 보안 정책을 적용할 수 있습니다(예: 배포, 데몬 세트 또는 작업). Red Hat Advanced Cluster Security for Kubernetes 승인 컨트롤러는 사용자가 Red Hat Advanced Cluster Security for Kubernetes에서 구성한 정책을 위반하는 워크로드를 생성하지 못하도록 합니다. Kubernetes 버전 3.0.41용 Red Hat Advanced Cluster Security부터 정책을 위반하는 워크로드 업데이트를 방지하도록 승인 컨트롤러를 구성할 수도 있습니다.
Red Hat Advanced Cluster Security for Kubernetes는 ValidatingAdmissionWebhook 컨트롤러를 사용하여 프로비저닝 중인 리소스가 지정된 보안 정책을 준수하는지 확인합니다. 이를 처리하기 위해 Red Hat Advanced Cluster Security for Kubernetes는 여러 웹 후크 규칙이 포함된 ValidatingWebhookConfiguration 을 생성합니다. Kubernetes 또는 OpenShift Container Platform API 서버에서 웹 후크 규칙 중 하나와 일치하는 요청을 수신하면 API 서버에서 AdmissionReview 요청을 Red Hat Advanced Cluster Security for Kubernetes에 보냅니다. Red Hat Advanced Cluster Security for Kubernetes는 구성된 보안 정책을 기반으로 요청을 수락하거나 거부합니다.
OpenShift Container Platform에서 승인 컨트롤러 적용을 사용하려면 Red Hat Advanced Cluster Security for Kubernetes 버전 3.0.49 이상이 필요합니다.
4.1. 승인 컨트롤러 적용 이해
승인 컨트롤러 적용을 사용하려면 다음을 고려하십시오.
- API 대기 시간: 승인 컨트롤러 적용을 사용하면 추가 API 검증 요청이 포함되므로 Kubernetes 또는 OpenShift Container Platform API 대기 시간이 증가합니다. fabric8과 같은 많은 표준 Kubernetes 라이브러리에는 기본적으로 짧은 Kubernetes 또는 OpenShift Container Platform API 시간이 있습니다. 또한 사용 중인 사용자 지정 자동화에서 API 시간 초과를 고려하십시오.
이미지 스캔: 클러스터 구성 패널에서 연락처 이미지 스캐너 옵션을 설정하여 요청을 검토하면서 승인 컨트롤러가 이미지 를 스캔하는지 여부를 선택할 수 있습니다.
- 이 설정을 활성화하면 검사 또는 이미지 서명 확인 결과를 사용할 수 없는 경우 Red Hat Advanced Cluster Security for Kubernetes에 이미지 스캐너에 연결하여 상당한 대기 시간이 추가됩니다.
- 이 설정을 비활성화하면 캐시된 검사 및 서명 검증 결과를 사용할 수 있는 경우에만 시행 결정에서는 이미지 검사 기준만 고려합니다.
다음을 위해 승인 컨트롤러 적용을 사용할 수 있습니다.
-
Pod
securityContext의 옵션. - 배포 구성.
- 이미지 구성 요소 및 취약점.
-
Pod
다음을 위해 허용 컨트롤러 적용을 사용할 수 없습니다.
- 프로세스와 같은 런타임 동작입니다.
- 포트 노출을 기반으로 하는 모든 정책입니다.
-
Kubernetes 또는 OpenShift Container Platform API 서버와 Red Hat Advanced Cluster Security for Kubernetes Sensor 간에 연결 문제가 있는 경우 허용 컨트롤러가 실패할 수 있습니다. 이 문제를 해결하려면 승인 컨트롤러 적용 섹션에 설명된 대로
ValidatingWebhookConfiguration오브젝트를 삭제합니다. - 정책에 대한 배포 시간 적용이 활성화되고 승인 컨트롤러를 활성화하면 Red Hat Advanced Cluster Security for Kubernetes가 정책을 위반하는 배포를 차단하려고 합니다. 승인 컨트롤러에서 비호환 배포를 거부하지 않는 경우(예: 타임아웃이 발생하는 경우 Red Hat Advanced Cluster Security for Kubernetes는 복제본 스케일링과 같은 기타 배포 실행 메커니즘을 적용합니다.