4.11.3.2. 사용자 ID
사용자 ID는 컨테이너 이미지 또는 Pod
정의에 정의할 수 있습니다.
일반적으로 사용자 ID를 사용하는 대신 추가 그룹 ID를 사용하여 영구 스토리지에 대한 액세스 권한을 얻는 것이 좋습니다.
위에 표시된 예시 NFS 디렉터리에서 컨테이너는 UID가 65534
로 설정되고, 현재 그룹 ID를 무시해야 하므로 다음을 Pod
정의에 추가할 수 있습니다.
spec: containers: 1 - name: ... securityContext: runAsUser: 65534 2
프로젝트가 default
이고 SCC가 restricted
라고 가정하면 Pod에서 요청한 대로 65534
의 사용자 ID가 허용되지 않습니다. 따라서 Pod가 다음과 같은 이유로 실패합니다.
-
65534
가 사용자 ID로 요청되었습니다. -
Pod에 사용 가능한 모든 SCC를 검사하여 어떤 SCC에서
65534
의 사용자 ID를 허용하는지 확인합니다. SCC의 모든 정책을 확인하는 동안 여기에는 중요한 사항은 사용자 ID입니다. -
사용 가능한 모든 SCC는
runAsUser
전략에서MustRunAsRange
를 사용하므로 UID 범위 검사가 필요합니다. -
65534
는 SCC 또는 프로젝트의 사용자 ID 범위에 포함되어 있지 않습니다.
일반적으로 사전 정의된 SCC를 수정하지 않는 것이 좋습니다. 이 상황을 해결하기 위해 선호되는 방법은 사용자 정의 SCC를 생성하는 것입니다. 따라서 최소 및 최대 사용자 ID가 정의되고 UID 범위 검사가 여전히 적용되며, 65534
의 UID가 허용됩니다.
사용자 정의 SCC를 사용하려면 먼저 적절한 서비스 계정에 추가해야 합니다. 예를 들어, Pod
사양에 다른 값이 지정된 경우를 제외하고 지정된 프로젝트에서 기본
서비스 계정을 사용하십시오.