5.6. 管理 Compliance Operator
本节介绍安全性内容的生命周期,包括如何使用合规性内容的更新版本以及如何创建自定义 ProfileBundle
对象。
5.6.1. 更新安全性内容
安全性内容作为 ProfileBundle
对象引用的容器镜像提供。要准确跟踪从捆绑包(如 Rules 或 Profiles)解析的 ProfileBundles
和 CustomResources 的更新,请使用摘要而不是标签来识别包含合规性内容的容器镜像:
输出示例
apiVersion: compliance.openshift.io/v1alpha1
kind: ProfileBundle
metadata:
name: rhcos4
spec:
contentImage: quay.io/user/ocp4-openscap-content@sha256:a1749f5150b19a9560a5732fe48a89f07bffc79c0832aa8c49ee5504590ae687 1
contentFile: ssg-rhcos4-ds.xml
- 1
- 安全性容器镜像。
每个 ProfileBundle
都由一个部署来支持。当 Compliance Operator 检测到容器镜像摘要已更改时,会更新部署来反映内容的变化并再次解析内容。使用摘要而不是标签可确保您使用稳定且可预测的配置集集合。
5.6.2. 使用镜像流
contentImage
引用指向一个有效的 ImageStreamTag
,而 Compliance Operator 可确保内容自动更新。
ProfileBundle
对象还接受 ImageStream
引用。
镜像流示例
$ oc get is -n openshift-compliance
输出示例
NAME IMAGE REPOSITORY TAGS UPDATED openscap-ocp4-ds image-registry.openshift-image-registry.svc:5000/openshift-compliance/openscap-ocp4-ds latest 32 seconds ago
流程
确保将查询策略设置为 local:
$ oc patch is openscap-ocp4-ds \ -p '{"spec":{"lookupPolicy":{"local":true}}}' \ --type=merge imagestream.image.openshift.io/openscap-ocp4-ds patched -n openshift-compliance
通过检索
istag
名称,对ProfileBundle
使用ImageStreamTag
的名称:$ oc get istag -n openshift-compliance
输出示例
NAME IMAGE REFERENCE UPDATED openscap-ocp4-ds:latest image-registry.openshift-image-registry.svc:5000/openshift-compliance/openscap-ocp4-ds@sha256:46d7ca9b7055fe56ade818ec3e62882cfcc2d27b9bf0d1cbae9f4b6df2710c96 3 minutes ago
创建
ProfileBundle
:$ cat << EOF | oc create -f - apiVersion: compliance.openshift.io/v1alpha1 kind: ProfileBundle metadata: name: mybundle spec: contentImage: openscap-ocp4-ds:latest contentFile: ssg-rhcos4-ds.xml EOF
这个 ProfileBundle
将跟踪镜像,对其应用的所有更改,如更新标签以指向其他散列,将立即反映在 ProfileBundle
中。
5.6.3. ProfileBundle CR 示例
捆绑包对象需要两条信息:包含 contentImage
的容器镜像的 URL 和包含合规性内容的文件。contentFile
参数相对于文件系统的根目录。内置的 rhcos4
ProfileBundle
对象可以在以下示例中定义:
apiVersion: compliance.openshift.io/v1alpha1 kind: ProfileBundle metadata: name: rhcos4 spec: contentImage: quay.io/complianceascode/ocp4:latest 1 contentFile: ssg-rhcos4-ds.xml 2
用于内容镜像的基础镜像必须包含 coreutils
。
5.6.4. 其他资源
- Compliance Operator 在受限网络环境中被支持。如需更多信息,请参阅在受限网络中使用 Operator Lifecycle Manager。