1.24. 정책 규정 준수 내역 (기술 프리뷰) (더 이상 사용되지 않음)


1.24.1. 개요

정책 준수 기록 API는 쿼리 가능한 형식으로 Red Hat Advanced Cluster Management for Kubernetes 정책 준수 이벤트의 장기 스토리지를 원하는 경우 선택적 기술 프리뷰 기능입니다. API를 사용하여 spec 필드와 같은 추가 세부 정보를 가져와서 정책을 감사하고 문제를 해결하고 클러스터에서 정책을 비활성화하거나 제거할 때 규정 준수 이벤트를 가져올 수 있습니다. 정책 준수 기록 API는 또한 감사 및 문제 해결에 도움이 되도록 CSV(콤마로 구분된 값) 정책 준수 이벤트의 요약을 생성할 수도 있습니다.

1.24.1.1. 버전 정보

버전 : 2.12.0

1.24.2. API 끝점

1.24.2.1. 정책 규정 준수 이벤트 나열

/api/v1/compliance-events

이렇게 하면 기본적으로 액세스할 수 있는 모든 정책 준수 이벤트가 나열됩니다. 응답 형식은 다음과 같으며 기본적으로 내림차순으로 event.timestamp 에 따라 정렬됩니다.

{
  "data": [
    {
      "id": 2,
      "cluster": {
        "name": "cluster1",
        "cluster_id": "215ce184-8dee-4cab-b99b-1f8f29dff611"
      },
      "parent_policy": {
        "id": 3,
        "name": "configure-custom-app",
        "namespace": "policies",
        "catageories": ["CM Configuration Management"],
        "controls": ["CM-2 Baseline Configuration"],
        "standards": ["NIST SP 800-53"]
      },
      "policy": {
        "apiGroup": "policy.open-cluster-management.io",
        "id": 2,
        "kind": "ConfigurationPolicy",
        "name": "configure-custom-app",
        "namespace": "",
        // Only shown with `?include_spec`
        "spec": {}
      },
      "event": {
        "compliance": "NonCompliant",
        "message": "configmaps [app-data] not found in namespace default",
        "timestamp": "2023-07-19T18:25:43.511Z",
        "metadata": {}
      }
    },
    {
      "id": 1,
      "cluster": {
        "name": "cluster2",
        "cluster_id": "415ce234-8dee-4cab-b99b-1f8f29dff461"
      },
      "parent_policy": {
        "id": 3,
        "name": "configure-custom-app",
        "namespace": "policies",
        "catageories": ["CM Configuration Management"],
        "controls": ["CM-2 Baseline Configuration"],
        "standards": ["NIST SP 800-53"]
      },
      "policy": {
        "apiGroup": "policy.open-cluster-management.io",
        "id": 4,
        "kind": "ConfigurationPolicy",
        "name": "configure-custom-app",
        "namespace": "",
        // Only shown with `?include_spec`
        "spec": {}
      },
      "event": {
        "compliance": "Compliant",
        "message": "configmaps [app-data] found as specified in namespace default",
        "timestamp": "2023-07-19T18:25:41.523Z",
        "metadata": {}
      }
    }
  ],
  "metadata": {
    "page": 1,
    "pages": 7,
    "per_page": 20,
    "total": 123
  }
}
Copy to Clipboard Toggle word wrap

다음과 같은 선택적 쿼리 매개변수가 허용됩니다. 설명이 없는 사용자는 참조하는 필드에만 필터링합니다. 매개변수 값 null 은 값을 나타내지 않습니다. 또한 쉼표로 여러 값을 지정할 수 있습니다. 예를 들어 ?cluster.name=cluster1,cluster2 는 "또는" 필터링입니다. 필요한 경우 쉼표를 \ 로 이스케이프할 수 있습니다.

Expand
표 1.1. 쿼리 매개변수 표
쿼리 인수설명

cluster.cluster_id

 

cluster.name

 

방향

정렬할 방향입니다. 기본값은 내림차순 입니다. 지원되는 값은 ascdesc 입니다.

event.compliance

 

event.message_includes

입력 문자열이 포함된 규정 준수 메시지에 대한 필터입니다. 단일 값만 지원됩니다.

event.message_like

SQL LIKE 필터는 규정 준수 메시지를 필터링합니다. 백분율 기호(%)는 0개 이상의 문자 와일드카드를 나타냅니다. 밑줄 기호(_)는 단일 문자의 와일드카드를 나타냅니다. 예를 들어 %configmaps [%my-configmap%]% 는 구성 맵 my-configmap 을 참조하는 모든 구성 정책 준수 메시지와 일치합니다.

event.reported_by

 

event.timestamp

 

event.timestamp_after

이 시간 이후의 규정 준수 이벤트만 나타내는 RFC 3339 타임스탬프가 표시됩니다. 예를 들면 2024-02-28T16:32:57Z 입니다.

event.timestamp_before

이 시간 이전에 규정 준수 이벤트만 나타내는 RFC 3339 타임스탬프입니다. 예를 들면 2024-02-28T16:32:57Z 입니다.

id

 

include_spec

정책의 spec 필드를 반환 값에 포함하는 플래그입니다. 이는 기본적으로 설정되어 있지 않습니다.

page

쿼리의 페이지 번호입니다. 기본값은 1 입니다.

parent_policy.categories

 

parent_policy.controls

 

parent_policy.id

 

parent_policy.name

 

parent_policy.namespace

 

parent_policy.standards

 

per_page

페이지당 반환된 규정 준수 이벤트 수입니다. 기본값은 20 이며 100 보다 클 수 없습니다.

policy.apiGroup

 

policy.id

 

policy.kind

 

policy.name

 

policy.namespace

 

policy.severity

 

sort

정렬할 필드입니다. 기본값은 event.timestamp 입니다. policy.specevent.metadata 를 제외한 모든 필드는 점 표기법을 사용하여 정렬할 수 있습니다. 여러 정렬 옵션을 지정하려면 ?sort=policy.name,policy.namespace 와 같은 쉼표를 사용합니다.

1.24.2.2. 단일 정책 준수 이벤트 선택

/api/v1/compliance-events/<id>

데이터베이스 ID를 지정하여 단일 정책 규정 준수 이벤트를 선택할 수 있습니다. 예를 들어 /api/v1/compliance-events/1 은 ID가 1인 규정 준수 이벤트를 선택합니다. 반환 값의 형식은 다음 JSON입니다.

{
  "id": 1,
  "cluster": {
    "name": "cluster2",
    "cluster_id": "415ce234-8dee-4cab-b99b-1f8f29dff461"
  },
  "parent_policy": {
    "id": 2,
    "name": "etcd-encryption",
    "namespace": "policies",
    "catageories": ["CM Configuration Management"],
    "controls": ["CM-2 Baseline Configuration"],
    "standards": ["NIST SP 800-53"]
  },
  "policy": {
    "apiGroup": "policy.open-cluster-management.io",
    "id": 4,
    "kind": "ConfigurationPolicy",
    "name": "etcd-encryption",
    "namespace": "",
    "spec": {}
  },
  "event": {
    "compliance": "Compliant",
    "message": "configmaps [app-data] found as specified in namespace default",
    "timestamp": "2023-07-19T18:25:41.523Z",
    "metadata": {}
  }
}
Copy to Clipboard Toggle word wrap

1.24.2.3. 기술 자료 생성

/api/v1/reports/compliance-events

감사 및 문제 해결을 위해 쉼표로 구분된 값(CSV)의 규정 준수 이벤트 기록을 생성할 수 있습니다. 동일한 쿼리 인수를 출력하고 /api/v1/compliance-events API 끝점과 동일한 쿼리 인수를 허용합니다. 기본적으로 per_page 제한은 설정되어 있지 않으며 per_page 쿼리 인수에는 최대값이 없습니다. 모든 CSV 헤더는 /api/v1/compliance-events API 끝점과 JSON 오브젝트를 분리하는 밑줄과 동일합니다. 예를 들어 이벤트 타임스탬프에는 event_timestamp 의 헤더가 있습니다.

1.24.3. 인증 및 권한 부여

정책 규정 준수 기록 API는 인증 및 권한 부여를 위해 Red Hat Advanced Cluster Management Hub 클러스터에서 사용하는 OpenShift 인스턴스를 사용합니다. HTTPS 요청의 인증 헤더에 OpenShift 토큰을 제공해야 합니다.

토큰을 찾으려면 다음 명령을 실행합니다.

oc whoami --show-token
Copy to Clipboard Toggle word wrap

1.24.3.1. 규정 준수 이벤트 보기

관리형 클러스터에 대한 규정 준수 이벤트를 보려면 Red Hat Advanced Cluster Management Hub 클러스터에서 ManagedCluster 오브젝트에 대한 get 동사 를 완료하려면 액세스할 수 있어야 합니다. 예를 들어 local-cluster 클러스터의 규정 준수 이벤트를 보려면 open-cluster-management:view:local-cluster ClusterRole 을 사용하거나 다음 예와 같이 자체 리소스를 생성할 수 있습니다.

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
 name: local-cluster-view
rules:
- apiGroups:
 - cluster.open-cluster-management.io
 resources:
 - managedclusters
 resourceNames:
 - local-cluster
 verbs:
 - get
Copy to Clipboard Toggle word wrap

특정 관리 클러스터에 대한 액세스를 확인하려면 oc auth can-i 명령을 사용합니다. 예를 들어 local-cluster 관리 클러스터에 액세스할 수 있는지 확인하려면 다음 명령을 실행합니다.

oc auth can-i get managedclusters.cluster.open-cluster-management.io/local-cluster
Copy to Clipboard Toggle word wrap

1.24.3.2. 컴플라이언스 이벤트 기록

해당 관리 클러스터 네임스페이스의 policies.policy.open-cluster-management.io/status 리소스에서 패치 동사 액세스 권한이 있는 사용자 또는 서비스 계정은 정책 준수 이벤트를 기록할 수 있습니다. 관리형 클러스터의 governance-policy-framework Pod는 Red Hat Advanced Cluster Management Hub 클러스터의 해당 관리형 클러스터 네임스페이스의 open-cluster-management-compliance-history-api-recorder 서비스 계정을 사용하여 규정 준수 이벤트를 기록합니다. 각 서비스 계정에는 open-cluster-management:compliance-history-api-recorder ClusterRole 이 관리 클러스터 네임스페이스에 바인딩되어 있습니다. 정책 준수 기록 API에 저장된 데이터의 신뢰성을 보장하기 위해 정책 상태에 대한 사용자 및 서비스 계정 패치 동사 액세스를 제한합니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동