5.5. コンプライアンス Operator の調整

コンプライアンス Operator には、追加の設定なしで使用できるプロファイルが同梱されますが、それらは組織のニーズおよび要件を満たすために変更される必要があります。プロファイルを変更するプロセスは、テーラリング と呼ばれます。

コンプライアンス Operator は、TailoredProfile というプロファイルを簡単に調整できるオブジェクトを提供します。これは、既存のプロファイルを拡張していることを前提とし、ProfileBundle からのルールおよび値を有効/無効を可能にします。

注記

拡張する必要のあるプロファイルが属する ProfileBundle の一部として利用できるルールおよび変数のみを使用できます。

5.5.1. 調整されたプロファイルの使用

TailoredProfile CR は最も一般的なテーラリング操作を有効にする一方で、XCCDF 標準は OpenSCAP プロファイルの調整におけるより多くの柔軟性を提供します。さらに、組織が以前に OpenScap を使用していた場合、既存の XCCDF テーラリングファイルが存在し、これを再利用できる可能性があります。

ComplianceSuite オブジェクトには、カスタムのテーラリングファイルにポイントできるオプションの TailoringConfigMap 属性が含まれます。TailoringConfigMap 属性の値は設定マップの名前です。これには、tailoring.xml というキーが含まれる必要があり、このキーの値はテーラリングのコンテンツです。

手順

  1. Red Hat Enterprise Linux CoreOS (RHCOS) ProfileBundle の利用可能なルールを参照します。

    $ oc get rules.compliance -l compliance.openshift.io/profile-bundle=rhcos4
  2. 同じ ProfileBundle で利用可能な変数を参照します。

    $ oc get variables.compliance -l compliance.openshift.io/profile-bundle=rhcos4
  3. TailoredProfile に追加するルールを選択します。この TailoredProfile 例は、2 つのルールを無効にし、1 つの値を変更します。rationale 値を使用して、これらの変更が加えられた理由を記述します。

    出力例

    apiVersion: compliance.openshift.io/v1alpha1
    kind: TailoredProfile
    metadata:
      name: nist-moderate-modified
    spec:
      extends: rhcos4-moderate
      title: My modified NIST moderate profile
      disableRules:
      - name: rhcos4-file-permissions-node-config
        rationale: This breaks X application.
      - 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.1 仕様変数の属性

    属性詳細

    extends

    この TailoredProfile が構築された Profile オブジェクトの名前。

    title

    TailoredProfile の人間が判読できるタイトル。

    disableRules

    名前と比率の一覧。各 name は、無効にされるルールオブジェクトの名前を参照します。rationale 値は、ルールを無効にする理由を説明する人間が判読できるテキストです。

    enableRules

    名前と比率の一覧。各 name は、有効にするルールオブジェクトの名前を参照します。rationale 値は、ルールが有効になっている理由を説明する人間が判読できるテキストです。

    説明

    TailoredProfile を記述する人間が判読できるテキスト。

    setValues

    名前、比率、および値のグループ化のリスト。各名前は、値セットの名前を参照します。この比率は、人が判読できるテキストで、セットを説明するものです。この値は実際の設定です。

  4. プロファイルを ScanSettingsBinding オブジェクトに追加します。

    $ cat nist-moderate-modified.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

  5. TailoredProfile を作成します。

    $ oc create -n <namespace> -f <file-name>.yaml

    出力例

    scansettingbinding.compliance.openshift.io/nist-moderate-modified created