Kubernetes는 감사 로그를 수집하고 기록합니다. Kubernetes 감사 기능은 클러스터의 작업 순서를 문서화하는 보안 관련 시간순 레코드 집합을 제공합니다.
JSON 표현
{
"kind": string,
"apiVersion": string,
"level": string,
"auditID": string,
"stage": string,
"requestURI": string,
"verb": string,
"user": {
object
},
"sourceIPs": [
string array
],
"userAgent": string,
"objectRef": {
object
},
"requestReceivedTimestamp": string,
"stageTimestamp": string,
"hostname": string
}
필드 | |
---|---|
kind |
다른 리소스의 변경사항에 따라 자동으로 생성되는 Kubernetes 객체 유형입니다. 예를 들면 |
apiVersion |
참조된 객체를 포함하는 API 그룹의 버전입니다. 예를 들면 |
level |
이벤트가 발생한 감사 수준입니다. 예를 들면 |
auditID |
각 요청에 대해 생성된 고유 감사 식별 값입니다. 예를 들면 |
stage |
이벤트 인스턴스가 생성되었을 때의 요청 처리 단계입니다. 예를 들면 |
requestURI |
클라이언트가 서버에 전송하는 요청 URI입니다. 예를 들면 |
verb |
요청과 연결된 Kubernetes 동사입니다. 리소스가 아닌 요청의 경우 이 값은 소문자 HTTP 메서드입니다.
|
user |
인증된 사용자의 사용자 이름 및 그룹에 관한 정보입니다. 예를 들면 다음과 같습니다. { "username": "kubernetes-admin", "groups": [ "system:masters", "system:authenticated" ] } |
sourceIPs |
요청이 시작된 IP와 모든 중간 프록시의 배열입니다. 소스 IP는 다음 순서가 지정된 목록에 표시됩니다.
마지막 IP를 제외한 모든 IP는 클라이언트가 임의로 설정할 수 있습니다. 예를 들면 |
userAgent |
클라이언트가 보고하는 사용자 에이전트 문자열입니다. 예를 들면 |
objectRef |
요청이 타겟팅하는 객체 참조에 관한 정보입니다. 예를 들면 다음과 같습니다. { "resource": "fleets", "namespace": "gpc-system", "name": "root", "apiGroup": "fleet.gpc.gke.io", "apiVersion": "v1" } |
requestReceivedTimestamp |
요청이 Kubernetes apiserver에 도달한 시간입니다. 예를 들면 |
stageTimestamp |
요청이 현재 감사 단계에 도달한 시간입니다. 예를 들면 |
hostname |
감사 로그 호스트의 이름입니다. 예를 들면 |