ObjectCreated 알림 작성

버킷에서 모니터할 폴더에 대해 ObjectCreated 알림을 구성하십시오.

프로시저

  1. AWS 관리 콘솔에 관리자로 로그인하십시오.
  2. 서비스를 클릭하고 S3로 이동한 후 버킷을 선택하십시오.
  3. 특성 탭을 클릭하고 이벤트 분할창에서 알림 추가를 클릭하십시오. 새 이벤트의 매개변수를 구성하십시오.
    다음 표는 ObjectCreated 알림 매개변수 구성의 예제를 표시합니다.
    표 1. 예제: 새 ObjectCreated 알림 매개변수 구성
    매개변수
    이름 선택한 이름을 입력하십시오.
    이벤트 모든 오브젝트 작성 이벤트를 선택하십시오.
    접두부 AWSLog/
    팁: 데이터가 있는 위치 및 큐로 이동하려는 데이터에 따라 찾으려는 데이터를 포함하는 접두부를 선택할 수 있습니다. 예를 들어, AWSLogs/, CustomPrefix/AWSLogs/, AWSLogs/123456789012/입니다.
    접미부 json.gz
    전송 위치 SQS 큐
    팁: 콜렉션 또는 QRadar 테넌트 요구에 맞게 다른 폴더의 데이터를 동일한 큐 또는 다른 큐로 전송할 수 있습니다. 다음 방법 중 하나 이상을 선택하십시오.
    • 다른 큐로 이동하는 다른 폴더
    • 동일한 큐로 이동하는 다른 버킷의 다른 폴더
    • 단일 큐로 이동하는 단일 버킷의 모든 항목
    • 단일 큐로 이동하는 여러 버킷의 모든 항목
    SQS ObjectCreated 알림을 수신하는 데 사용되는 SQS큐 작성의 4단계에 있는 큐 이름 .
    그림 1. 예제: 이벤트
    이미지 예는 NewS3ObjectToSQS 라는 제목의 새 이벤트 및 정보로 채워진 여러 매개변수를 표시합니다. 예를 들어, 접두부는 해당 정보 AWSLogs/로 채워집니다.

    그림: © 2019 Amazon.com Inc. 또는 자회사. All Rights Reserved.

    매개변수 구성의 그림 1에 있는 예제에서는 버킷의 루트에서 AWSLogs/ 에 대한 알림이 작성됩니다. 이 구성을 사용하면 모든 ObjectCreated 이벤트가 알림을 트리거합니다. 버킷에 여러 계정 및 지역이 있는 경우 모든 항목이 처리됩니다. 이 예제에서는 json.gz 가 사용됩니다. 이 파일 유형은 수집 중인 데이터에 따라 변경될 수 있습니다. 버킷의 컨텐츠에 따라 확장을 생략하거나 이벤트가 설정된 폴더에서 찾고 있는 데이터와 일치하는 확장을 선택할 수 있습니다.

    약 5분후에 데이터를 포함하는 큐가 표시됩니다. 사용 가능한 메시지 컬럼에서 메시지 수를 볼 수 있습니다.
    그림 2. 사용 가능한 메시지 수
    이미지는 2,799개의 사용 가능한 메시지를 표시합니다.

    그림: © 2019 Amazon.com Inc. 또는 자회사. All Rights Reserved.

  4. 서비스를 클릭한 후 단순 큐 서비스로 이동하십시오.
  5. ObjectCreated 알림을 수신하는 데 사용되는 SQS큐 작성의 4단계에서 큐 이름 을 마우스 오른쪽 단추로 클릭한 후 메시지 보기/삭제 를 선택하여 메시지를 보십시오.
    그림 3. SecureQueue TEST 목록
    이미지는 메시지를 보거나 삭제하는 방법을 사용자에게 표시합니다. 이미지에서 메시지 보기/삭제 단추가 강조표시됩니다.

    그림: © 2019 Amazon.com Inc. 또는 자회사. All Rights Reserved.

    예: 샘플 메시지
    {
       "Records":[
          {
             "eventVersion":"2.1",
             "eventSource":"aws:s3",
             "awsRegion":"us-east-2",
             "eventTime":"2018-12-19T01:51:03.251Z",
             "eventName":"ObjectCreated:Put",
             "userIdentity":{
                "principalId":"AWS:AIDAIZLCFC5TZD36YHNZY"
             },
             "requestParameters":{
                "sourceIPAddress":"52.46.82.38"
             },
             "responseElements":{
                "x-amz-request-id":"6C05F1340AA50D21",
                "x-amz-id-2":"9e8KovdAUJwmYu1qnEv+urrO8T0vQ+UOpkPnFYLE6agmJSn745
    /T3/tVs0Low/vXonTdATvW23M="
             },
             "s3":{
                "s3SchemaVersion":"1.0",
                "configurationId":"test_SQS_Notification_1",
                "bucket":{
                   "name":"myBucketName",
                   "ownerIdentity":{
                      "principalId":"A2SGQBYRFBZET"
                   },
                   "arn":"arn:aws:s3:::myBucketName"
                },
                "object":{
                   "key":"AWSLogs/123456789012/CloudTTrail/eu-west-
    3/2018/12/19/123456789012_CloudTrail_eu-west-3_TestAccountTrail
    _us-east-2_20181219T014838Z.json.gz",
                   "size":713,
                   "eTag":"1ff1209e4140b4ff7a9d2b922f57f486",
                   "sequencer":"005C19A40717D99642"
                }
             }
          }
       ]
    }
    
    팁: 값에 DSM 이름이 표시됩니다.
  6. 서비스를 클릭한 후 IAM으로 이동하십시오.
  7. SQS 큐에 액세스하고 대상 버킷에서 다운로드할 수 있는 권한에 대해 사용자 또는 역할 권한을 설정하십시오. 사용자 또는 사용자 역할에는 SQS큐에서 읽고 삭제할 수 있는 권한이 있어야 합니다. IAM 사용자의 권한 추가, 관리 및 변경에 대한 정보는 IAM 사용자 문서를 참조하십시오. QRadar 가 알림을 읽은 후 대상 파일을 다운로드하여 처리하고 나면 큐에서 메시지를 삭제해야 합니다.
    샘플 정책:
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "sqs:DeleteMessage",
                    "sqs:ReceiveMessage",
                    "s3:GetObject"
                ],
                "Resource": [
                    "arn:aws:s3:::<bucket_name>/AWSLogs/*",
                    "arn:aws:sqs:us-east-2:<AWS_account_number>:<queue_name>"
                ]
            }
        ]
    }
    

    S3 큐에 여러 버킷을 추가할 수 있습니다. 모든 오브젝트가 액세스되도록 하려면 추가한 폴더 경로의 끝에 후미 /* 가 있어야 합니다.

    이 정책을 사용자 또는 사용자 역할에 직접 추가하거나 sts:AssumeRole 권한만 있는 최소 액세스 사용자를 만들 수 있습니다. QRadar에서 로그 소스를 구성할 때 QRadar 가 역할을 가정하도록 역할 ARN 가정 매개변수를 구성하십시오. 한 번의 실행 (큐 비우기) 으로 처리되기를 기다리는 모든 파일이 재시도하지 않고 완료될 수 있도록 하려면 API 세션 지속 기간 매개변수에 기본값 1시간을 사용하십시오.

    가정된 역할을 사용하는 경우 역할을 가정하는 사용자의 ARN이 해당 역할의 신뢰할 수 있는 엔티티 에 있는지 확인하십시오. IAM 역할신뢰 관계 탭에서 규칙을 가정할 수 있는 신뢰할 수 있는 엔티티를 볼 수 있습니다. 또한 사용자는 해당 (또는 임의) 계정에서 역할을 가정할 수 있는 권한을 가지고 있어야 합니다. 다음 예제는 샘플 신뢰 정책을 보여줍니다.
    특정 AWS 계정 내의 모든 IAM 사용자가 역할을 맡도록 허용
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "AWS": "arn:aws:iam::YOUR_ACCOUNT_ID:root"
                },
                "Action": "sts:AssumeRole",
                "Resource": "arn:aws:iam::YOUR_ACCOUNT_ID:role/ROLE_NAME"
            }
        ]
    }
    특정 사용자가 역할을 가정하도록 허용
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "AWS": "arn:aws:iam::YOUR_ACCOUNT_ID:user/USERNAME"
                },
                "Action": "sts:AssumeRole",
                "Resource": "arn:aws:iam::YOUR_ACCOUNT_ID:role/ROLE_NAME"
            }

    다음 이미지 예제는 QRadar의 샘플 Amazon AWS CloudTrail 로그 소스 구성을 보여줍니다.

    팁: 로그 소스를 구성할 때 DSM에 아마존 AWS S3 REST API 로그 소스 매개변수 값을 사용하십시오.
    그림 4. 예: QRadar 의 Amazon AWS CloudTrail 로그 소스 구성
    이미지는 매개변수가 채워진 로그 소스 구성의 예를 표시합니다.