27.2.4.2. 사용자 ID
사용자 ID는 컨테이너 이미지 또는 포드 정의에 정의할 수 있습니다. 전체 볼륨 보안 주제에서는 사용자 ID를 기반으로 스토리지 액세스를 제어하는 작업을 다루며 NFS 영구 스토리지를 설정하려면 먼저 읽어야 합니다.
일반적으로 사용자 ID를 사용하는 대신 추가 그룹 ID 를 사용하여 영구 스토리지에 액세스하는 것이 좋습니다.
위에 표시된 예제 NFS 디렉터리에서 컨테이너에는 65534(지금 그룹 ID를 무시)로 설정된 UID가 있어야 하므로 다음을 포드 정의에 추가할 수 있습니다.
spec: containers: 1 - name: ... securityContext: runAsUser: 65534 2
기본 프로젝트 및 restricted SCC를 가정하면 Pod의 요청된 사용자 ID 65534가 허용되지 않으므로 Pod가 실패합니다. Pod는 다음과 같은 이유로 실패합니다.
- 65534를 사용자 ID로 요청합니다.
- Pod에서 사용할 수 있는 모든 SCC를 검사하여 65534의 사용자 ID를 허용하는 SCC를 확인합니다(실제로 SCC의 모든 정책이 확인되지만 여기에서 초점은 사용자 ID에 있음).
-
사용 가능한 모든 SCC는
runAsUser
전략에 MustRunAsRange 를 사용하므로 UID 범위 검사가 필요합니다. - 65534는 SCC 또는 프로젝트의 사용자 ID 범위에 포함되지 않습니다.
일반적으로 사전 정의된 SCC를 수정하지 않는 것이 좋습니다. 이 상황을 수정하는 기본 방법은 전체 볼륨 보안 항목에 설명된 대로 사용자 지정 SCC를 만드는 것입니다. 최소 및 최대 사용자 ID가 정의되고, UID 범위 검사가 계속 적용되며 65534의 UID가 허용되도록 사용자 지정 SCC를 만들 수 있습니다.
사용자 정의 SCC를 사용하려면 먼저 적절한 서비스 계정에 추가해야 합니다. 예를 들어 Pod 사양에 다른 값이 지정된 경우를 제외하고 지정된 프로젝트에서 기본
서비스 계정을 사용합니다. 자세한 내용은 사용자, 그룹 또는 프로젝트에 SCC 추가를 참조하십시오.