이벤트 필드
Activity Tracking 이벤트는 CADF(Cloud Auditing Data Federation) 표준을 기반으로 합니다.
CADF 표준은 클라우드 환경에서 애플리케이션의 보안을 인증, 관리 및 감사하는 데 필요한 정보가 포함된 전체 이벤트 모델을 정의합니다.
CADF 이벤트 모델에는 다음과 같은 컴포넌트가 포함됩니다.
| 컴포넌트 | 설명 |
|---|---|
Action |
조치는 개시자가 수행하거나, 수행하려고 시도하거나, 완료되기를 대기 중인 오퍼레이션 또는 활동입니다. |
Initiator |
개시자는 API 호출을 수행하고 CADF 이벤트를 생성하는 리소스입니다. 트리거되는 이벤트는 API 호출에서 요청하는 조치에 따라 달라집니다. |
Observer |
관찰자는 CADF 이벤트에서 사용 가능한 정보로부터 CADF 레코드를 작성하고 저장하는 리소스입니다. |
Outcome |
결과는 대상에 대한 조치의 상태입니다. |
Target |
대상은 조치가 수행되거나, 수행하려고 시도되거나, 완료 보류 중인 리소스입니다. |
다음 필드는 각 Activity Tracker 이벤트에 포함됩니다.
action(문자열)
이 필드는 이벤트를 트리거하는 조치를 나타냅니다.
이 필드의 형식은 다음과 같습니다.
serviceName.objectType.action
여기서,
-
servicename은 서비스의 이름입니다.VPC 인프라가 보고하는 조치에 대해 설정된
servicename에는 예외가 있습니다.servicename의 형식은 점(.)으로 구분된 두 개의 파트로 구성됩니다. -
objectType은 조치가 요청되는 리소스 또는 리소스 속성을 나타냅니다. -
action은 개시자가 요청하는 태스크를 정의합니다.유효한 작업은 다음과 같습니다:
activate,add,apply,approve,authorize,bulkdelete,create,copy,read,update,delete,backup,build,capture,clear,commit,configure,deploy,disable,enable,end,get,import,init,inspect,list,monitor,notify,pull,push,provision,restore,start,stop,undeploy,update,receive,reimport,remove,send,set,setkeyfordeletion,unsetkeyfordeletion,set-on,set-off,authenticate,renew,revoke,allow,deny,evaluate,notify,reset,rotate,ack-delete,ack-restore,ack-disable,ack-enable,ack-expire,ack-restore-over,ack-rotate,ack-sync,edit,publish,write,pause,refresh,resume,unsetkeyfordeletion,failover,split,expire,unwrap,wrap,rewrap,head,expire,reapprove,export,start,stop,pause,resume,power-off,reboot,soft-reboot,hard-reboot,power-on,rename,rescue,reload,scale,search,,reject
서비스에서 생성되는 조치 값에 대한 자세한 정보는 서비스 생성 이벤트를 참조하십시오.
예를 들면, 샘플 action은 iam-am.policy.create입니다.
correlationId(문자열)
이 필드는 계정에서 여러 서비스 간에 이벤트의 상관에 사용할 수 있는 고유 GUID를 표시합니다.
dataEvent(부울)
이 필드는 이벤트의 유형(관리 이벤트 또는 데이터 이벤트)을 지정합니다.
- 관리 이벤트의 경우 이 필드는 false로 설정됩니다.
- 데이터 이벤트의 경우 이 필드는 true로 설정됩니다.
eventTime(문자열)
이 필드는 이벤트가 작성된 시간소인을 나타냅니다.
UI에서 이벤트에 대해 표시되는 시간소인은 eventTime으로부터 설정되며 이벤트가 작성된 시간을 나타냅니다.
날짜는 협정 세계시(UTC)로 표시됩니다.
이 필드의 형식은 다음과 같습니다.
YYYY-MM-DDTHH:mm:ss.SS+0000
예를 들면, 샘플 eventTime은 2017-10-19T19:07:50.32+0000입니다.
ID(문자열)
서비스 내에서 활동 추적 이벤트를 상호 연관시키는 데 사용할 수 있는 선택적 필드입니다.
개시자 필드
개시자 필드는 계정에서 조치를 실행하도록 요청하는 사용자, 서비스 또는 애플리케이션에 대한 정보를 제공합니다.
initiator.id(문자열)
이 필드는 조치를 요청하는 개시자의 ID에 대한 정보를 제공합니다.
다음과 같은 개시자를 볼 수 있습니다.
IBM ID- 계정에서 조치를 트리거하기 위해 IAM 토큰을 사용하는 사용자의 경우Service ID- 계정에서 조치를 트리거하는 서비스 또는 애플리케이션의 경우Certificate ID- 계정에서 조치를 트리거하기 위해 인증서가 사용되는 요청의 경우- 신뢰할 수 있는 프로파일을 사용하여 실행되는 요청의 경우
Profile ID
initiator.name(문자열)
이 필드는 조치 개시자의 사용자 이름에 대한 정보를 제공합니다.
이는 initiator.id 값에 대응하는, 사람이 읽을 수 있는 이름입니다.
개시자가 IBM Cloud 서비스인 경우, 필드는 IBM 또는 서비스의 이름으로 설정됩니다.
initiator.authnId(문자열)
IBM Cloud에 로그인하는 사용자의 ID입니다.
initiator.authnName(문자열)
IBM Cloud에 로그인하는 사용자의 사용자 이름입니다.
initiator.typeURI(문자열)
이 필드는 이벤트 소스의 유형을 정의합니다.
유효값은 다음과 같습니다.
service/security/account/userservice/security/account/serviceid,service/security/client/certificateidservice/security/clientid
initiator.credential.type(문자열)
이 필드는 개시자가 조치를 실행하는 데 사용하는 인증 정보의 유형을 정의합니다.
유효값은 다음과 같습니다.
tokenuserapikeycertificatepublic-accesshmaccompute-resourceinstance-identity-tokenapikey-serviceids2s-authorization
initiator.host.address(문자열)
이 필드는 요청을 보낸 주소에 대한 정보를 제공합니다. 예를 들어, UI 또는 CLI.
이 필드의 형식은 다음과 같습니다.
xxx.xxx.xxx.xxx
예를 들면, 샘플 initiator.host.address는 15.234.123.12입니다.
작업의 시작자가 IBM Cloud 서비스인 경우 이 필드는 비워 두도록 설정됩니다.
initiator.host.addressType(문자열)
이 필드는 요청이 시작된 IP 주소의 유형에 대한 정보를 제공합니다.
유효값은 다음과 같습니다.
IPv4IPv6CSEsubnet
기본값은 IPv4입니다.
initiator.host.agent(문자열)
이 필드는 요청이 시작된 위치를 식별하는 데 사용할 수 있는 정보를 제공합니다.
이 필드는 IPV4 및 IPv6 대한 요청의 원본 IP 주소로 설정됩니다. 의 경우 subnet CIDR 블록 IP가 포함됩니다. CSE 의 경우 값이 비워집니다.
logSourceCRN(문자열)
이 필드에는 이벤트를 생성하는 서비스 인스턴스의 클라우드 리소스 이름(CRN)을 지정합니다. CRN 형식에 대한 자세한 정보는 클라우드 자원 이름을 참조하십시오.
message(문자열)
이 필드는 이벤트에 대한, 사람이 읽을 수 있는 설명으로 설정됩니다.
이 필드의 형식은 다음과 같습니다.
serviceName: {event description} [outcome]
여기서,
servicename은 서비스 이름을 표시합니다.{event description}은 이벤트가 보고하는 항목을 사용자가 읽을 수 있는 버전으로 제공합니다.outcome은 선택사항이며 요청의 결과가failure인 경우에만 포함됩니다.
observer.name(문자열)
이 필드는 고정된 값인 ActivityTracker로 설정됩니다.
outcome(문자열)
이 필드는 조치의 결과를 나타냅니다.
올바른 값: success, pending 또는 failure.
이유 필드
이유 필드는 요청의 결과에 대한 정보를 제공합니다.
reason.reasonCode(숫자)
이 필드는 요청된 조치에 대한 HTTP 응답 코드를 리턴합니다.
예를 들어, reason.reasonCode 필드는 다음으로 설정됩니다.
- 차단된 액세스 또는 비인가를 보고하려면
403 - 충돌을 보고하려면
409
이유 코드 값은 HTTP 응답 코드에서 확인할 수 있습니다.
reason.reasonType(문자열)
이 필드는 요청된 조치의 결과에 대한 추가 정보를 제공합니다.
reason.reasonForFailure(문자열)
이 필드는 조치가 실패한 이유에 대한 추가적인 정보를 제공합니다.
requestData(JSON)
이 필드가 사용 가능한 경우, 이는 요청에 대한 추가 정보를 포함합니다.
requestData에 포함된 정보는 각각의 조치 유형에 특정합니다. 포함될 수 있는 일부 필드에 대해 알아보려면 요청의 API 문서를 확인하십시오.
responseData(JSON)
이 필드가 사용 가능한 경우, 이는 요청에 대한 추가 정보를 포함합니다.
responseData에 포함된 정보는 각각의 조치 유형에 특정합니다. 포함될 수 있는 일부 필드에 대해 알아보려면 요청의 API 문서를 확인하십시오.
saveServiceCopy(부울)
이 필드는 이벤트를 생성하는 IBM Cloud 서비스가 IBM Cloud 감사의 이벤트 사본을 저장하는지 여부를 판별합니다.
true로 설정된 경우에는 이벤트를 생성하는 서비스가 사본을 저장합니다.
severity(문자열)
이 필드는 조치가 IBM Cloud에 미칠 수 있는 위협의 레벨을 정의합니다.
올바른 값: normal, warning 및 critical.
다음 표에는 조치의 유형에 따라 이 필드가 어떻게 설정되는지 설명되어 있습니다.
| 값 | 조치 유형 | 조치 샘플 |
|---|---|---|
normal |
IBM Cloud에서 루틴 조치 | 인스턴스 시작 |
warning |
실패한 조치 리소스가 업데이트되거나 해당 메타데이터가 수정된 조치 |
서비스 인스턴스 이름 바꾸기 |
critical |
사용자의 신임 정보 변경 또는 데이터 삭제와 같이 IBM Cloud의 보안에 영향을 주는 조치 개시자가 IBM Cloud 리소스에 대해 작업할 수 있도록 권한 부여되지 않은 조치 |
보안 키 삭제 |
API 호출의 reasonCode가 다음 값 중 하나이면 심각도 값은 다음으로 설정됩니다.
| reasonCode | 설명 | severity |
|---|---|---|
400 |
Bad Request |
warning |
401 |
Unauthorized |
critical |
403 |
Forbidden |
critical |
409 |
Conflict |
warning |
424 |
Failed Dependency |
warning |
500 |
Internal Server Error |
warning |
502 |
Bad Gateway |
warning |
503 |
Service Unavailable |
critical |
504 |
Gateway Timeout |
warning |
505 |
HTTP Version Not Supported |
warning |
507 |
Insufficient Storage |
critical |
대상 필드
대상 필드는 계정에서 개시자의 조치에 의해 액세스되거나, 작성되거나, 업데이트되거나 삭제된 리소스에 대한 정보를 제공합니다.
다음 표에는 각 이벤트에 사용 가능한 공통 대상 필드가 나열되어 있습니다.
| 필드 이름 | 설명 | 값 |
|---|---|---|
target.id |
조치가 실행되는 리소스의 CRN(Cloud Resource Name)입니다. | 예를 들어, 다음과 같습니다. crn:v1:bluemix:public:cloud-object-storage:global:a/12345678e6232019c6567c9123456789:fr56et47-befb-440a-a223c-12345678dae1:bucket:bucket1 |
target.name |
조치가 실행되는 리소스의 사용자가 읽을 수 있는 이름입니다. | |
target.typeURI |
조치가 실행되는 클라우드 리소스의 유형입니다. | 예를 들어, iam-am/policy 또는 cloud-object-storage/bucket/acl입니다. |
target.host.address |
대상 서비스의 IP 주소 또는 URL |
target.id(문자열)
이 필드는 조치가 실행되는 IBM Cloud 리소스를 나타냅니다.
이 필드의 형식은 CRN입니다. 자세한 정보는 CRN 형식을 참조하십시오.
target.name(문자열)
이 필드는 조치가 실행되는 IBM Cloud 리소스의 사용자가 읽을 수 있는 이름을 나타냅니다.
리소스의 이름이 민감한 데이터 또는 PII 데이터를 포함하지 않도록 하십시오.
target.alias(문자열)
이 값을 요청에서 사용되고 조치가 실행되는 클라우드 자원의 별명으로 설정하십시오.
이 필드는 선택사항입니다.
target.typeURI(문자열)
이 필드는 이벤트 대상의 유형을 나타냅니다.
이 필드에는 작업 정보가 포함되어 있지 않습니다.
이 필드의 형식은 다음과 같습니다.
serviceName/objectType/attribute
여기서,
servicename은 서비스의 이름입니다.objectType은 조치가 실행되는 리소스입니다.
예를 들어, 다음과 같습니다.
| 조치 | target.typeURI |
|---|---|
| cloudcerts.certificate.import | cloudcerts/certificate |
| container-registry.namespace.create | container-registry/namespace |
| kms.secrets.read | kms/secrets |
| cloud-object-storage.instance.create | cloud-object-storage/instance |
| cloud-object-storage.object-multipart.create | cloud-object-storage/object/multipart |
target.resourceGroupId(문자열)
이 필드는 작업이 요청된 리소스와 연결된 리소스 그룹 CRN으로 설정됩니다.
이 필드는 자원이 자원 그룹과 연관된 서비스에서 생성되는 이벤트에만 적용됩니다. 예를 들어, 글로벌이며 자원 그룹의 컨텍스트 내에서 프로비저닝될 수 없는 서비스는 이 필드를 포함하지 않습니다.
target.host.address(문자열)
이 필드는 대상 서비스의 IP 주소 또는 URL을 정의합니다.
이 필드는 선택사항입니다.