12.2. sigstore 지원 구성 정보
ClusterImagePolicy
및 ImagePolicy
CR(사용자 정의 리소스) 오브젝트를 사용하여 전체 클러스터 또는 특정 네임스페이스에 대한 sigstore 지원을 활성화하고 구성할 수 있습니다. 이러한 오브젝트에는 sigstore 툴을 사용하여 확인할 이미지 및 리포지토리와 서명을 확인하는 방법을 지정하는 정책이 포함되어 있습니다.
클러스터 이미지 정책. 클러스터 이미지 정책 오브젝트를 사용하면 클러스터 관리자가 전체 클러스터에 대한 sigstore 서명 확인 정책을 구성할 수 있습니다. 활성화된 경우 MCO(Machine Config Operator)는
ClusterImagePolicy
오브젝트를 감시하고 클러스터의 모든 노드에서/etc/containers/policy.json
및/etc/containers/registries.d/sigstore-registries.yaml
파일을 업데이트합니다.중요기본
openshift
클러스터 이미지 정책은 필요한 OpenShift Container Platform 이미지에 대한 sigstore 지원을 제공합니다. 이 클러스터 이미지 정책 오브젝트를 제거하거나 수정하지 않아야 합니다. 이 클러스터 이미지 정책은 기술 프리뷰이며 기술 프리뷰 기능을 활성화한 클러스터에서만 활성화됩니다.openshift
로 시작하는 클러스터 이미지 정책 이름은 향후 시스템 사용을 위해 예약되어 있습니다.기술 프리뷰 기능 세트를 활성화하기 전에 OpenShift Container Platform 릴리스 이미지 리포지토리,
quay.io/openshift-release-dev
에 레지스트리 미러가 구성된 경우 OpenShift Container Platform 릴리스 이미지의 sigstore 서명을 미러 레지스트리에 미러링해야 합니다. 그렇지 않으면 릴리스 리포지토리에 대한 서명 확인을 적용하는 기본/ocp-release
-dev/ocp-v4.0-art-devopenshift
클러스터 이미지 정책은 Cluster Version Operator가 CVO Pod를 새 노드로 이동하는 기능을 차단하여 기능 세트 변경을 초래하는 노드 업데이트를 방지합니다.oc image mirror
명령을 사용하여 서명을 미러링할 수 있습니다. 예를 들면 다음과 같습니다.oc image mirror quay.io/openshift-release-dev/ocp-release:sha256-1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef.sig \ mirror.com/image/repo:sha256-1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef.sig
$ oc image mirror quay.io/openshift-release-dev/ocp-release:sha256-1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef.sig \ mirror.com/image/repo:sha256-1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef.sig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이미지 정책. 이미지 정책을 사용하면 클러스터 관리자 또는 애플리케이션 개발자가 특정 네임스페이스에 대한 sigstore 서명 확인 정책을 구성할 수 있습니다. MCO는 다른 네임스페이스의
ImagePolicy
인스턴스를 감시하고 클러스터의 모든 노드에서/etc/crio/policies/<namespace>.json
및/etc/containers/registries.d/sigstore-registries.yaml
파일을 생성하거나 업데이트합니다.이미지 정책의 이미지 또는 리포지토리가 클러스터 이미지 정책의 이미지 또는 리포지토리 중 하나에 중첩된 경우 클러스터 이미지 정책의 정책만 적용됩니다. 예를 들어 이미지 정책에서
example.com/global/image
를 지정하고 클러스터 이미지 정책에서example.com/global
를 지정하는 경우 네임스페이스는 클러스터 이미지 정책의 정책을 사용합니다. 이미지 정책 오브젝트가 생성되고 다음 메시지와 유사한 오류가 표시됩니다.이미지 ID가 충돌하는 이미지 정책의 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.2.1. 클러스터 및 이미지 정책 매개변수 정보 링크 복사링크가 클립보드에 복사되었습니다!
다음 매개변수는 클러스터 및 이미지 정책에 적용됩니다. 이러한 매개변수 사용에 대한 자세한 내용은 "클러스터 이미지 정책 CR 생성" 및 "이미지 정책 CR 생성"을 참조하십시오.
범위
정책에 할당된 리포지토리 및 이미지 목록을 정의합니다. 다음 범위 중 하나 이상을 나열해야 합니다.
-
태그 또는 다이제스트(예:
example.com/namespace/image:latest
)를 사용하여 개별 이미지 -
태그 또는 다이제스트를 생략하는 리포지토리(예:
example.com
) -
리포지토리 네임스페이스(예:
example.com/namespace/
) -
호스트 이름 및 포트 번호만 지정하거나 *로 시작하는 와일드카드 식(예:
*.
example.com
)을 지정하여 레지스트리 호스트
여러 범위가 동일한 클러스터 또는 이미지 정책의 단일 범위와 일치하는 경우 가장 구체적인 범위에 대한 정책이 적용됩니다.
이미지 정책의 범위가 지정된 이미지 또는 리포지토리가 클러스터 이미지 정책의 범위 이미지 또는 리포지토리 중 하나에 중첩된 경우 클러스터 이미지 정책의 정책만 적용됩니다. 그러나 이미지 정책 오브젝트가 생성됩니다. 예를 들어 이미지 정책에서
example.com/global/image
를 지정하고 클러스터 이미지 정책이example.com/global
를 지정하는 경우 네임스페이스는 클러스터 이미지 정책에서 정책을 상속합니다.-
태그 또는 다이제스트(예:
policy
범위에
나열된 소스의 이미지를 확인하고 확인 정책과 일치하지 않는 이미지를 정의하는 구성이 포함되어 있습니다.rootOfTrust
및 필요한 경우signedIdentity
를 구성해야 합니다.rootOfTrust
: 정책에 대한 신뢰의 루트를 지정합니다. 공개 키, BYOPKI(Bring Your Own Public Key Infrastructure) 인증서 또는 Fulcio 인증서를 구성합니다.-
publickey
: 정책이 sigstore 공개 키에 의존함을 나타냅니다. base64로 인코딩된 PEM 형식의 공개 키를 지정해야 합니다. 선택 사항으로 Rekor 확인을 포함할 수 있습니다. PKI
정책이 BYOPKI(Cosign Bring Your Own Public Key Infrastructure) 확인과 호환되는 자체 PKI(공개 키 인프라)의 인증서에 의존합니다. base64로 인코딩된 PEM 형식의 공개 키를 지정해야 합니다. BYOPKI를 사용하면 Cosign의 고유한 PKI 서명 워크플로우에 맞춰 기존 X.509 인증서를 사용하여 컨테이너 이미지의 유효성을 검사할 수 있습니다.중요Sigstore BYOPKI 지원은 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
FulcioCAWithRekor
: 정책이 Fulcio 인증서를 기반으로 함을 나타냅니다. 다음 매개변수를 지정해야 합니다.- base64로 인코딩된 PEM 형식 Fulcio CA
- OpenID Connect (OIDC) 발행자
- Fulcio 인증 구성의 이메일
- Rekor 확인
-
signedIdentity
: 서명 및 실제 이미지 자체에서 이미지를 확인하는 데 사용되는 접근 방식을 지정합니다. 서명된 ID를 구성하려면 다음 매개변수 중 하나를 일치 정책으로 지정해야 합니다.-
MatchRepoDigestOrExact
. 서명에서 참조된 이미지는 이미지 자체와 동일한 리포지토리에 있어야 합니다. 이미지가 태그를 전달하는 경우 서명에서 참조하는 이미지가 정확히 일치해야 합니다. 이는 기본값입니다. -
MatchRepository
. 서명에서 참조된 이미지는 이미지 자체와 동일한 리포지토리에 있어야 합니다. 이미지가 태그를 전달하면 서명에서 참조하는 이미지가 정확히 일치할 필요가 없습니다. 이 기능은 이미지에 정확한 이미지 버전을 지정하는 태그로 서명되는 경우latest
태그가 포함된 이미지를 가져오는 데 유용합니다. -
ExactRepository
. 서명에서 참조된 이미지는exactRepository
매개변수로 지정된 것과 동일한 리포지토리에 있어야 합니다.exactRepository
매개변수를 지정해야 합니다. RemapIdentity
. 범위가 지정된 리포지토리 또는 이미지가 지정된접두사
와 일치하는 경우 해당 접두사는 지정된서명된 접두사로 교체됩니다
. 이미지 ID가 일치하지 않으면접두사
가 변경되지 않고 다시 매핑되지 않습니다. 이 옵션은 공급 업체의 리포지토리 구조를 유지하는 다른 리포지토리 네임스페이스의 미러에 대한 서명을 확인할 때 사용할 수 있습니다.접두사
및서명된
접두사는 정확한host[:port]
문자열, 리포지토리 네임스페이스 또는 리포지토리와 일치하는host[:port]
값일 수 있습니다.접두사
및서명된
접두사는 태그 또는 다이제스트를 포함하지 않아야 합니다. 예를 들어 단일 리포지토리를 지정하려면example.com/ Cryostat/busybox
를 사용하고busybox
를 사용합니다.example.com/ Cryostat/busybox
의 상위 네임스페이스를 지정하려면example.com/ Cryostat 를 사용하면 됩니다
.다음 매개변수를 지정해야 합니다.
-
prefix
: 일치시킬 이미지 접두사를 지정합니다. -
signedPrefix
: 필요한 경우 다시 매핑할 이미지 접두사를 지정합니다.
-
-
12.2.2. 이미지 정책 수정 또는 제거 정보 링크 복사링크가 클립보드에 복사되었습니다!
다른 CR(사용자 정의 리소스) 오브젝트와 동일한 명령을 사용하여 클러스터 이미지 정책 또는 이미지 정책을 수정하거나 제거할 수 있습니다.
정책 YAML을 편집하고 파일에서 oc apply
명령을 실행하거나 ClusterImagePolicy
또는 ImagePolicy
오브젝트를 직접 편집하여 기존 정책을 수정할 수 있습니다. 두 방법 모두 동일한 방식으로 변경 사항을 적용합니다.
클러스터 또는 네임스페이스에 대해 여러 정책을 생성할 수 있습니다. 이를 통해 다양한 이미지 또는 리포지토리에 대해 다양한 정책을 생성할 수 있습니다.
ClusterImagePolicy
및 ImagePolicy
오브젝트를 삭제하여 정책을 제거할 수 있습니다.