5.7. コンプライアンス Operator の調整
コンプライアンス Operator には、追加の設定なしで使用できるプロファイルが同梱されますが、それらは組織のニーズおよび要件を満たすために変更される必要があります。プロファイルを変更するプロセスは、テーラリング と呼ばれます。
コンプライアンス Operator は、TailoredProfile
というプロファイルを簡単に調整できるオブジェクトを提供します。これは、既存のプロファイルを拡張していることを前提とし、ProfileBundle
からのルールおよび値を有効/無効を可能にします。
拡張する必要のあるプロファイルが属する ProfileBundle
の一部として利用できるルールおよび変数のみを使用できます。
5.7.1. 調整されたプロファイルの使用
TailoredProfile
CR は最も一般的なテーラリング操作を有効にする一方で、XCCDF 標準は OpenSCAP プロファイルの調整におけるより多くの柔軟性を提供します。さらに、組織が以前に OpenScap を使用していた場合、既存の XCCDF テーラリングファイルが存在し、これを再利用できる可能性があります。
ComplianceSuite
オブジェクトには、カスタムのテーラリングファイルにポイントできるオプションの TailoringConfigMap
属性が含まれます。TailoringConfigMap
属性の値は設定マップの名前です。これには、tailoring.xml
というキーが含まれる必要があり、このキーの値はテーラリングのコンテンツです。
手順
Red Hat Enterprise Linux CoreOS (RHCOS)
ProfileBundle
の利用可能なルールを参照します。$ oc get rules.compliance -n openshift-compliance -l compliance.openshift.io/profile-bundle=rhcos4
同じ
ProfileBundle
で利用可能な変数を参照します。$ oc get variables.compliance -n openshift-compliance -l compliance.openshift.io/profile-bundle=rhcos4
nist-moderate-modified
という名前の調整されたプロファイルを作成します。調整されたプロファイル
nist-moderate-modified
に追加するルールを選択します。この例では、2 つのルールを無効にし、1 つの値を変更することにより、rhcos4-moderate
プロファイルを拡張します。rationale
値を使用して、これらの変更が加えられた理由を記述します。new-profile-node.yaml
の例apiVersion: compliance.openshift.io/v1alpha1 kind: TailoredProfile metadata: name: nist-moderate-modified spec: extends: rhcos4-moderate description: NIST moderate profile title: My modified NIST moderate profile disableRules: - name: rhcos4-file-permissions-var-log-messages rationale: The file contains logs of error messages in the system - name: rhcos4-account-disable-post-pw-expiration rationale: No need to check this as it comes from the IdP setValues: - name: rhcos4-var-selinux-state rationale: Organizational requirements value: permissive
表5.2 スペック変数の属性 属性 説明 extends
この
TailoredProfile
がビルドされるProfile
オブジェクトの名前。title
人間が判読できる
TailoredProfile
のタイトル。disableRules
名前および理論的根拠のペアの一覧。名前ごとに、無効にするルールオブジェクトの名前を参照します。理論的根拠の値は、人間が判読できるテキストで、ルールが無効になっている理由を記述します。
enableRules
名前および理論的根拠のペアの一覧。名前ごとに、有効にするルールオブジェクトの名前を参照します。理論的根拠の値は、人間が判読できるテキストで、ルールが有効になっている理由を記述します。
description
TailoredProfile
を記述する人間が判読できるテキスト。setValues
名前、理論的根拠、および値のグループ化の一覧。各名前は値セットの名前を参照します。この理論的根拠は、値セットを記述する、人間が判読できるテキストです。この値は実際の設定です。
TailoredProfile
オブジェクトを作成します。$ oc create -n openshift-compliance -f new-profile-node.yaml 1
- 1
TailoredProfile
オブジェクトは、デフォルトのopenshift-compliance
namespace で作成されます。
出力例
tailoredprofile.compliance.openshift.io/nist-moderate-modified created
ScanSettingBinding
オブジェクトを定義して、新しい調整されたプロファイルnist-moderate-modified
をデフォルトのScanSetting
オブジェクトにバインドします。new-scansettingbinding.yaml
の例apiVersion: compliance.openshift.io/v1alpha1 kind: ScanSettingBinding metadata: name: nist-moderate-modified profiles: - apiGroup: compliance.openshift.io/v1alpha1 kind: Profile name: ocp4-moderate - apiGroup: compliance.openshift.io/v1alpha1 kind: TailoredProfile name: nist-moderate-modified settingsRef: apiGroup: compliance.openshift.io/v1alpha1 kind: ScanSetting name: default
ScanSettingBinding
オブジェクトを作成します。$ oc create -n openshift-compliance -f new-scansettingbinding.yaml
出力例
scansettingbinding.compliance.openshift.io/nist-moderate-modified created