5.7.3. プラットフォームチェックの手動による修復

通常、プラットフォームスキャンをチェックする場合、以下の 2 つの理由のために管理者が手動で修復する必要があります。

  • 設定する必要のある値は、常に自動的に判別できる訳ではありません。チェックのいずれかで許可されたレジストリーの一覧が指定されることが必要になりますが、スキャナー側が組織が許可する必要のあるレジストリーを認識する方法はありません。
  • 異なるチェックで異なる API オブジェクトが変更されるため、クラスター内のオブジェクトを変更するために自動化された修復で root またはスーパーユーザーアクセスを所有することが要求されますが、これは推奨されていません。

手順

  1. 以下の例では、ocp4-ocp-allowed-registries-for-import ルールを使用します。これはデフォルトの OpenShift Container Platform のインストール時に失敗します。ルール oc get rule.compliance/ocp4-ocp-allowed-registries-for-import -oyaml を検査します。このルールは、allowedRegistriesForImport 属性を設定して、ユーザーのイメージのインポートを許可するレジストリーを制限します。さらに、ルールの warning 属性はチェックされた API オブジェクトを表示するため、これを変更し、問題を修復できます。

    $ oc edit image.config.openshift.io/cluster

    出力例

    apiVersion: config.openshift.io/v1
    kind: Image
    metadata:
      annotations:
        release.openshift.io/create-only: "true"
      creationTimestamp: "2020-09-10T10:12:54Z"
      generation: 2
      name: cluster
      resourceVersion: "363096"
      selfLink: /apis/config.openshift.io/v1/images/cluster
      uid: 2dcb614e-2f8a-4a23-ba9a-8e33cd0ff77e
    spec:
      allowedRegistriesForImport:
      - domainName: registry.redhat.io
    status:
      externalRegistryHostnames:
      - default-route-openshift-image-registry.apps.user-cluster-09-10-12-07.devcluster.openshift.com
      internalRegistryHostname: image-registry.openshift-image-registry.svc:5000

  2. スキャンを再実行します。

    $ oc annotate compliancescans/<scan_name> compliance.openshift.io/rescan=