CloudWatch Logs 소스
Panther 콘솔에서 CloudWatch를 데이터 전송 로그 소스로 온보딩하기
개요
Panther는 CloudWatch를 데이터 전송(Data Transport)으로 구성하여 CloudWatch에서 보안 로그를 가져와 Panther 계정으로 전송하는 구성을 지원합니다.
활성화하려면 로그 데이터의 실시간 처리를 위해, Panther는 Firehose 전송 스트림 과 전송 스트림의 대상으로 사용될 S3 버킷을 생성합니다. 그런 다음 CloudWatch Logs 로그 그룹에 대해 Firehose 전송 스트림을 대상으로 사용하는 구독 필터 가 구성됩니다. Firehose가 새로 생성된 S3 버킷에 추가한 파일을 처리하기 위한 필요한 읽기 권한은 IAM 역할에 부여됩니다.
이 프로세스에 대한 자세한 내용은 Amazon 문서를 참조하세요: 구독에 대한 AWS CloudWatch Logs 문서.
만약 귀하가 Cloud Connected 고객이라면, Panther 배포가 존재하는 계정과는 별도의 AWS 계정에서 모든 로그 소스 인프라(예: S3 버킷 또는 IAM 역할)를 생성하세요.
아래 다이어그램을 보면 CloudWatch Logs를 사용하여 애플리케이션에서 Panther로 데이터가 흐르는 방식을 이해할 수 있습니다( SaaS):

Panther에서 CloudWatch 로그 소스를 설정하는 방법
1단계: Panther 콘솔에서 CloudWatch 구성
Panther 콘솔의 왼쪽 탐색 바에서 구성 > 로그 소스.
오른쪽 상단에서 새로 만들기.
를 클릭하세요. AWS CloudWatch Logs 타일을 클릭합니다.
페이지에서, 다음 필드를 채우세요: 구성 이름
: CloudWatch 로그 소스의 설명적인 이름을 입력하세요.로그 그룹 이름
: CloudWatch 로그 그룹의 고유 이름을 입력하세요.AWS 계정 ID
: CloudWatch 로그 그룹이 존재하는 AWS 계정 ID 번호를 입력하세요.패턴 필터(선택 사항)
: 이 필드를 사용하여 CloudWatch에서 수신된 로그 데이터를 필터링할 수 있습니다. 필터 및 패턴 문법에 대한 자세한 내용은Amazon의 필터 및 패턴 문법 문서 을 참조하세요..
로그 유형: Panther가 CloudWatch 로그를 파싱할 때 사용할 로그 유형을 선택하세요. 드롭다운 메뉴에서 최소 하나의 로그 유형을 선택해야 합니다.
클릭 설정.
2단계: IAM 역할 설정
소스에서 객체를 읽기 위해 Panther는 특정 권한을 가진 AWS IAM 역할이 필요합니다. 이 역할을 설정하려면 다음 옵션 중 선택할 수 있습니다:
AWS 콘솔 UI 사용
Panther에서 이 데이터 전송 소스를 처음 설정하는 경우 이 옵션을 선택하세요.
CloudFormation 또는 Terraform 파일
모든 것을 직접 설정하겠습니다

AWS 콘솔 UI 사용
AWS 콘솔을 사용하여 CloudFormation 스택을 시작하세요:
페이지에서, 다음 필드를 채우세요: IAM 역할 생성 페이지에서, AWS 콘솔 UI 사용 타일에서, 클릭 계속.
클릭 콘솔 시작.
템플릿 URL이 미리 채워진 상태로 새 브라우저 탭에서 AWS 콘솔로 리디렉션됩니다.
CloudFormation 스택은 소스에서 객체를 읽기 위해 필요한 최소 권한을 가진 AWS IAM 역할을 생성합니다.
AWS의 CloudFormation 스택에서 "Outputs" 탭을 클릭하고 Role ARN을 기록하세요.
Panther 콘솔로 돌아가서 다음 필드에 값을 입력하세요:
(S3 소스를 설정하는 경우 해당되지 않음) 버킷 이름 – 필수: 출력된 S3 버킷 이름을 입력하세요.
역할 ARN – 필수: 출력된 IAM 역할 ARN을 입력하세요.
클릭 설정.
CloudFormation 또는 Terraform 파일
Panther에서 제공하는 CloudFormation 또는 Terraform 템플릿을 사용하여 IAM 역할을 생성하세요:
페이지에서, 다음 필드를 채우세요: IAM 역할 생성 페이지에서, CloudFormation 또는 Terraform 파일 타일에서, 클릭 계속.
페이지에서, 다음 필드를 채우세요: CloudFormation 또는 Terraform 템플릿 파일 페이지에서, 사용하려는 IaC(Infrastructure as Code) 제공자에 따라 다음 중 하나를 선택하세요: CloudFormation 템플릿 또는 Terraform 템플릿.
클릭 템플릿 다운로드.
Terraform 템플릿은 다음에서 찾을 수도 있습니다: 이 GitHub 링크.
CLI에서, 워크플로 섹션의 명령을 실행하세요.
IaC 파이프라인에 템플릿을 배포한 후 다음 필드에 값을 입력하세요:
(S3 소스를 설정하는 경우 해당되지 않음) 버킷 이름 – 필수: 출력된 S3 버킷 이름을 입력하세요.
역할 ARN – 필수: 출력된 IAM 역할 ARN을 입력하세요.
클릭 설정.
모든 것을 직접 설정하겠습니다
IAM 역할을 수동으로 생성한 다음 Panther에 역할 ARN을 입력하세요. IAM 역할을 수동으로 설정할 때는 아래의 "수동 IAM 역할 생성: 추가 단계" 지침을 따라 새 데이터가 도착할 때 알림을 보내도록 S3 버킷을 구성해야 합니다.
페이지에서, 다음 필드를 채우세요: IAM 역할 생성 페이지에서 클릭 모든 것을 직접 설정하겠습니다.
수동으로 또는 자체 자동화를 통해 IAM 역할을 생성하세요.
역할에 연결될 IAM 정책은 아래에 정의된 문(statement)을 포함해야 합니다:
S3 버킷이 AWS KMS를 사용한 서버 측 암호화로 구성된 경우에는 Panther API가 해당 KMS 키에 접근할 수 있도록 추가 문(statement)을 포함해야 합니다. 이 경우 정책은 다음과 유사합니다:
위에 더해, Panther 콘솔에서 S3 버킷의 내용을 보려면(예: 과거 데이터에서 사용자 지정 스키마 유추 기능을 활용하기 위해) 다음
s3:ListBucket액션을 추가해야 합니다:
Panther가 이 역할을 맡을 수 있도록 역할에 다음의 신뢰 정책을 추가하세요:
AssumeRolePolicyDocument문(statement):다음을 채우세요
<AWS-PARTITION>Panther 백엔드를 실행하는 계정의 파티션(e.g.,aws)으로 채우세요. 참고로 우리는aws-cn또는aws-us-gov.다음을 채우세요
에 배포하지 않습니다.<PANTHER-MASTER-ACCOUNT-ID>
Panther가 배포된 12자리 계정 ID로 채우세요. AWS 계정 ID를 확인하려면: Panther 콘솔 오른쪽 상단의 톱니바퀴 아이콘을 클릭하여 설정에 접근하면 페이지 하단에 AWS 계정 ID가 표시됩니다.
(S3 소스를 설정하는 경우 해당되지 않음) 버킷 이름 – 필수: 출력된 S3 버킷 이름을 입력하세요.
역할 ARN – 필수: 출력된 IAM 역할 ARN을 입력하세요.
클릭 Panther 콘솔에서 다음 필드에 값을 입력하세요:
설정.
아래의 "수동 IAM 역할 생성: 추가 단계" 섹션으로 진행하세요.
3단계: 소스 설정 완료

성공 화면으로 이동됩니다: 선택적으로 하나 이상의.
디텍션 팩 을 활성화할 수 있습니다. "이벤트가 처리되지 않을 때 경고 트리거" 설정의 기본값은예

입니다. 데이터가 일정 기간 동안 로그 소스에서 흐르지 않으면 경고를 받도록 이 설정을 활성화된 상태로 두는 것을 권장합니다. 시간 범위는 구성 가능하며 기본값은 24시간입니다. 아직 수행하지 않았다면, 클릭하세요 스키마 연결 또는 유추
을 클릭하여 소스에 하나 이상의 스키마를 연결하세요.
엔벨로프 필드 보존 선택적으로 CloudWatch Logs의 엔벨로프 메타데이터(예:, ownerlogGroup 및logStream )를 각 처리된 이벤트의 p_header
필드에 보존할 수 있습니다. 이 옵션은 CloudWatch Logs 스트림 유형을 사용하는 모든 소스에서 사용 가능합니다.
기존 CloudWatch 로그 소스에 대한 엔벨로프 필드 구성
Panther 콘솔의 왼쪽 탐색 바에서 구성 > 로그 소스.
기존 CloudWatch 로그 소스가 있고 엔벨로프 필드 보존을 활성화하거나 비활성화하려는 경우, 소스가 생성된 후에 이 설정을 구성할 수 있습니다:
목록에서 CloudWatch 로그 소스를 찾아 클릭하세요. 클릭하세요 구성
를 클릭하세요. 탭을. 편집 아이콘 스트림 유형.
옆에 있는 "엔벨로프 필드 보존"
)를 각 처리된 이벤트의필드의 스위치를 켜세요.클릭 선택 적용 을 클릭하여 변경사항을 저장하세요.

CloudWatch Logs 엔벨로프 메타데이터
엔벨로프 필드 보존이 활성화되면, )를 각 처리된 이벤트의 필드에는 다음 CloudWatch 메타데이터를 포함한 JSON 객체가 들어 있습니다:
선택적으로 CloudWatch Logs의 엔벨로프 메타데이터(예:: 로그 그룹의 소유자 AWS 계정 ID
owner: CloudWatch 로그 그룹의 이름
및: CloudWatch 로그 스트림의 이름
subscriptionFilters: 로그 그룹에 구성된 구독 필터 이름의 배열
예시 )를 각 처리된 이벤트의 내용:
수집된 로그 보기
로그 소스가 구성된 후에는 다음을 사용하여 수집된 데이터를 검색할 수 있습니다: 검색 또는 데이터 탐색기.
수동 IAM 역할 생성: 추가 단계
로그 소스 생성 중 IAM 역할을 수동으로 설정하도록 선택한 경우, 새 데이터가 도착할 때 알림을 보내도록 S3 버킷을 구성하는 아래 지침도 따라야 합니다.
1단계: SNS 주제 생성 또는 수정
SNS 주제 생성 방법
참고: 이미 버킷이 모든 객체 생성 이벤트 를 SNS 주제로 전송하도록 구성되어 있다면, 대신 "기존 SNS 주제 수정" 탭을 따라 해당 주제를 Panther의 입력 데이터 큐에 구독시키십시오.
AWS 계정당 하나의 SNS 주제만 필요하므로 하나의 AWS 계정 내 여러 S3 버킷이 동일한 SNS 주제를 사용할 수 있습니다. 동일한 AWS 계정의 다른 S3 버킷용으로 이미 SNS 주제를 생성했다면 이 단계를 건너뛸 수 있습니다.
먼저 Panther에 새 데이터가 처리 준비가 되었음을 알리기 위해 SNS 주제와 SNS 구독을 생성해야 합니다.
S3 버킷을 소유한 계정의 AWS 콘솔에 로그인하세요.
S3 버킷이 위치한 AWS 리전을 선택하고 CloudFormation 콘솔로 이동하세요.
로 이동하여 스택 섹션에서 스택 생성 (새 리소스 포함)을 선택하세요.

"템플릿 지정" 섹션에 다음 Amazon S3 URL을 입력하세요:
다음 스택 세부 정보를 지정하세요:
스택 이름: 원하는 이름, 예:
panther-log-processing-notifications-<bucket-label>마스터계정ID: Panther가 배포된 12자리 AWS 계정 ID
Panther 리전: Panther가 배포된 리전
SnsTopicName: 알림을 수신할 SNS 주제의 이름. 기본값은
panther-notifications-topic
클릭 다음, 다음을 클릭한 다음 스택 생성 을 클릭하여 프로세스를 완료하세요.
이 스택에는 하나의 출력이 있습니다:
SnsTopicArn.
기존 SNS 주제 수정 방법
S3 버킷 알림 전송에 기존 SNS 주제를 사용하려는 경우 아래 단계를 따르세요. SNS 주제는 S3 버킷과 동일한 리전에 있어야 합니다.
1단계: SNS 주제에 대해 KMS 암호화 활성화
AWS 콘솔에 로그인하고 KMS로 이동하세요.
암호화에 사용할 KMS 키를 선택하세요.
해당 키 정책을 편집하여 SNS 주제와 S3 버킷 알림에 사용될 수 있도록 적절한 권한 이 포함되어 있는지 확인하세요.
예시 정책:
를 클릭하세요. 암호화 탭에서 SNS 주제를 선택하세요.
클릭 활성화하고 암호화에 사용할 KMS 키를 지정하세요.
2단계: SNS 주제 접근 정책 수정
SNS 주제와 Panther의 로그 처리 SQS 큐 사이에 구독을 생성하세요.
로 이동하여 SNS 콘솔 에서 현재 이벤트를 수신하는 SNS 주제를 선택하세요.
이 SNS 주제의 ARN을 기록하세요.
클릭 편집 을 클릭하고 아래로 스크롤하여 접근 정책 카드를 찾으세요.
주제의 정책에 다음 문(statement)을 추가하세요: 접근 정책:
다음을 채우세요
에 배포하지 않습니다.Panther가 배포된 12자리 계정 ID로 채우세요. 이 AWS 계정 ID는 Panther 콘솔에서 설정으로 이동한 후 페이지 하단에서 확인할 수 있습니다. 설정 으로 이동하여 톱니 아이콘을 클릭하세요..다음을 채우세요
SNS-TOPIC-ARN위 문서에서 기록한 ARN으로 대체하세요.
3단계: SQS로의 SNS 구독 생성
Panther 마스터 계정의 SQS 큐에 대한 구독을 생성하세요.
SNS 콘솔에서 클릭 구독.
클릭 구독 생성.
양식을 작성하세요:
주제 ARN: 사용하려는 SNS 주제를 선택하세요.
프로토콜: 를 선택하세요 Amazon SQS.
엔드포인트:
arn:aws:sqs:<PantherRegion>:<MasterAccountId>:panther-input-data-notifications-queue원시 메시지 전송 활성화: 이 체크박스를 선택하지 마세요. 원시 메시지 전송은 비활성화되어야 합니다.
클릭 구독 생성.
구독이 "대기 중(Pending)" 상태이고 즉시 확인되지 않으면 Panther 콘솔에서 이 로그 소스 설정을 완료해야 합니다. Panther는 SNS 주제의 AWS 계정에 대해 Panther 로그 소스가 존재할 경우에만 SNS 구독을 확인합니다.
2단계: S3 버킷에서 이벤트 알림 구성
SNS 주제가 생성되었으면 마지막 단계는 S3 버킷에서 알림을 활성화하는 것입니다.
AWS의 S3 콘솔로 이동하여 관련 버킷을 선택한 다음 속성 구성
을 클릭하세요. 에서 카드를 찾으세요.
클릭 이벤트 알림 생성 을 찾고 다음 설정을 사용하세요:
일반 구성 섹션에서: 이벤트 이름
PantherEventNotifications:
접두사(선택 사항): 객체 키가 특정 문자로 시작하는 경우에만 알림을 제한합니다. 접미사
(선택 사항): 객체 키가 특정 문자로 끝나는 경우에만 알림을 제한합니다. 이벤트 유형
일반 구성 카드에서, 다음 옆의 박스를 체크하세요 모든 객체 생성 이벤트.
중복되는 접두사와 접미사를 사용하는 여러 필터 생성 피하기 . 그렇지 않으면 구성은 유효하지 않은 것으로 간주됩니다.대상
일반 구성 카드: 에서
아래에서, 카드:SNS 주제 를 선택하세요..
대상으로 를 선택하세요.이전에 생성하거나 수정한 SNS 주제를 선택하세요.
제공된 CloudFormation 템플릿에서 기본 주제 이름을 사용한 경우 SNS 주제 이름은
panther-notifications-topic.입니다.

사용자 지정 SNS 주제를 사용하는 경우 올바른 정책이 설정되어 있고 Panther SQS 큐에 대한 구독이 있는지 확인하세요. 4. 클릭.
저장하세요(저장). 버튼을 클릭하세요. (원문: "Save")의 의미로 번역됨.)
마지막 업데이트
도움이 되었나요?

