7.6.19. 고급 감사


고급 감사 기능은 세부적인 이벤트 필터링 및 여러 출력 백엔드를 포함하여 기본 감사 기능에 비해 몇 가지 개선 사항을 제공합니다.

고급 감사 기능을 활성화하려면 감사 정책 파일을 생성하고 openshift_master_audit_ config 및 openshift_master_audit _policyfile 매개변수에 다음 값을 지정합니다.

openshift_master_audit_config={"enabled": true, "auditFilePath": "/var/log/origin/audit-ocp.log", "maximumFileRetentionDays": 14, "maximumFileSizeMegabytes": 500, "maximumRetainedFiles": 5, "policyFile": "/etc/origin/master/adv-audit.yaml", "logFormat":"json"}
openshift_master_audit_policyfile="/<path>/adv-audit.yaml"
중요

클러스터를 설치하고 클러스터 인벤토리 파일에 위치를 지정하기 전에 adv-audit.yaml 파일을 생성해야 합니다.

다음 테이블에는 사용할 수 있는 추가 옵션이 나와 있습니다.

표 7.19. 고급 감사 구성 매개변수
매개변수 이름설명

policyFile

감사 정책 구성을 정의하는 파일의 경로입니다.

policyConfiguration

포함된 감사 정책 구성.

logFormat

저장된 감사 로그의 형식을 지정합니다. 허용되는 값은 legacy (기본 감사에 사용되는 형식) 및 json 입니다.

webHookKubeConfig

이벤트가 전송되는 감사 Webhook 구성을 정의하는 .kubeconfig-formatted 파일의 경로입니다.

webHookMode

감사 이벤트를 보내는 전략을 지정합니다. 허용되는 값은 블록 (이전이 완전히 처리될 때까지 다른 이벤트를 처리하는 블록) 및 배치 (버퍼 이벤트 및 배치로 전달)입니다.

중요

고급 감사 기능을 활성화하려면 감사 정책 규칙을 설명하는 policyFile 또는 policyConfiguration 을 제공해야 합니다.

감사 정책 구성 샘플

apiVersion: audit.k8s.io/v1beta1
kind: Policy
rules:

  # Do not log watch requests by the "system:kube-proxy" on endpoints or services
  - level: None 1
    users: ["system:kube-proxy"] 2
    verbs: ["watch"] 3
    resources: 4
    - group: ""
      resources: ["endpoints", "services"]

  # Do not log authenticated requests to certain non-resource URL paths.
  - level: None
    userGroups: ["system:authenticated"] 5
    nonResourceURLs: 6
    - "/api*" # Wildcard matching.
    - "/version"

  # Log the request body of configmap changes in kube-system.
  - level: Request
    resources:
    - group: "" # core API group
      resources: ["configmaps"]
    # This rule only applies to resources in the "kube-system" namespace.
    # The empty string "" can be used to select non-namespaced resources.
    namespaces: ["kube-system"] 7

  # Log configmap and secret changes in all other namespaces at the metadata level.
  - level: Metadata
    resources:
    - group: "" # core API group
      resources: ["secrets", "configmaps"]

  # Log all other resources in core and extensions at the request level.
  - level: Request
    resources:
    - group: "" # core API group
    - group: "extensions" # Version of group should NOT be included.

  # A catch-all rule to log all other requests at the Metadata level.
  - level: Metadata 8

  # Log login failures from the web console or CLI. Review the logs and refine your policies.
  - level: Metadata
    nonResourceURLs:
    - /login* 9
    - /oauth* 10

1 8
모든 이벤트를 로깅할 수 있는 네 가지 레벨은 다음과 같습니다.
  • none - 이 규칙과 일치하는 이벤트를 기록하지 마십시오.
  • 메타데이터 - 요청 메타데이터(사용자, 타임스탬프, 리소스, 동사 등)를 로그하지만 요청 또는 응답 본문은 제공하지 않습니다. 이 수준은 기본 감사에서 사용되는 것과 동일한 수준입니다.
  • request - 이벤트 메타데이터 및 요청 본문을 기록하지만 응답 본문은 기록하지 않습니다.
  • RequestResponse - 이벤트 메타데이터, 요청 및 응답 본문을 기록합니다.
2
규칙이 적용되는 사용자 목록입니다. 빈 목록은 모든 사용자를 의미합니다.
3
이 규칙이 적용되는 동사 목록입니다. 빈 목록은 모든 동사를 의미합니다. API 요청( get,list,watch,create,update,patch, delete,delete collection, proxy 등 )과 관련된 Kubernetes 동사입니다.
4
규칙이 적용되는 리소스 목록입니다. 빈 목록은 모든 리소스를 의미합니다. 각 리소스는 Kubernetes 코어 API, 배치, build.openshift.io 등에 대한 빈 및 해당 그룹의 리소스 목록(예: Kubernetes 코어 API의 빈)에 할당되는 그룹으로 지정됩니다.
5
규칙이 적용되는 그룹 목록입니다. 빈 목록은 모든 그룹을 의미합니다.
6
규칙이 적용되는 리소스가 아닌 URL 목록입니다.
7
규칙이 적용되는 네임스페이스 목록입니다. 빈 목록은 모든 네임스페이스를 의미합니다.
9
웹 콘솔에서 사용하는 엔드포인트.
10
CLI에서 사용하는 엔드포인트입니다.

고급 감사에 대한 자세한 내용은 Kubernetes 문서를 참조하십시오.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.