Contributor Insights 로그 그룹 액세스를 위한 조건 키
Contributor Insights에서 규칙을 생성하고 그 결과를 확인하려면 사용자에게 cloudwatch:PutInsightRule 권한이 있어야 합니다. 기본적으로 이 권한이 있는 사용자는 CloudWatch Logs의 로그 그룹을 평가하는 규칙을 생성한 다음, 결과를 확인할 수 있습니다. 결과에는 민감한 정보가 포함될 수 있는 해당 로그 그룹의 기여자 데이터가 포함될 수 있습니다.
조건 키를 통해 IAM 정책을 생성하여 사용자에게 특정 로그 그룹에 대한 Contributor Insights 규칙을 쓸 수 있는 권한을 부여하는 동시에 다른 로그 그룹에 대한 규칙을 쓰고 이 데이터를 보는 것을 방지할 수 있습니다.
IAM 정책의 Condition 요소에 대한 자세한 내용은 IAM JSON 정책 요소: Condition 단원을 참조하세요.
Contributor Insights 권한 모델 이해
Contributor Insights 작업은 cloudwatch: IAM 네임스페이스를 사용합니다. 로그 그룹 작업은 logs: 네임스페이스를 사용합니다. Contributor Insights는 로그 그룹 데이터를 처리할 때 logs: 권한을 요구하거나 평가하지 않습니다.
cloudwatch:PutInsightRule 및 cloudwatch:GetInsightRuleReport 권한이 있는 보안 주체는 로그 그룹에 대한 logs: 권한 없이도 모든 로그 그룹을 평가하고 결과를 검색하는 규칙을 생성할 수 있습니다.
중요
집계된 결과에는 기여자 키로 사용되는 로그 필드와 같은 민감한 정보가 포함될 수 있습니다. 참조된 모든 로그 그룹의 데이터에 액세스해야 하는 보안 주체에게만 cloudwatch:PutInsightRule 및 cloudwatch:GetInsightRuleReport 권한을 부여합니다.
교차 계정 액세스의 경우 소스 계정이 로그 그룹 액세스를 공유하는 AWS Organizations 링크를 구성한 경우 모니터링 계정의 보안 주체는 소스 계정 로그 그룹을 대상으로 하는 규칙을 생성하기 위해 cloudwatch:PutInsightRule만 필요합니다.
특정 로그 그룹에 대한 Contributor Insights 액세스 제한
다음 조건 키를 사용하여 Contributor Insights 규칙을 생성할 때 보안 주체가 지정할 수 있는 로그 그룹을 제한합니다.
-
cloudwatch:requestInsightRuleLogGroups- 규칙에 지정된 로그 그룹 이름과 일치 -
cloudwatch:requestInsightRuleLogGroupARNs- 규칙에 지정된 로그 그룹 ARN과 일치
중요
규칙이 생성된 후 cloudwatch:GetInsightRuleReport 권한이 있는 모든 보안 주체는 로그 그룹 제한에 관계없이 결과를 검색할 수 있습니다.
다음 정책은 이름이 AllowedLogGroup인 로그 그룹 및 이름이 AllowedWildCard로 시작하는 로그 그룹에 대한 Contributor Insights 규칙을 생성할 수 있는 권한을 부여합니다. 다른 로그 그룹에 대한 규칙을 생성할 수 있는 권한은 부여하지 않습니다.
다음 정책은 기본적으로 모든 로그 그룹에 대한 규칙 생성을 허용하지만 이름이 ExplicitlyDeniedLogGroup인 로그 그룹에 대한 규칙 생성은 명시적으로 거부합니다.
다음 정책은 ARN 경로에 /production/이 있는 로그 그룹을 대상으로 하는 규칙 생성을 거부합니다.
{ "Version": "", "Statement": [ { "Sid": "DenyProductionLogGroupsByARN", "Effect": "Deny", "Action": "cloudwatch:PutInsightRule", "Resource": "*", "Condition": { "ForAnyValue:StringLike": { "cloudwatch:requestInsightRuleLogGroupARNs": [ "arn:aws:logs:*:*:log-group:*/production/*" ] } } } ] }
참고
-
조건 키는 확인된 로그 그룹이 아닌 규칙 정의에 기록된 패턴 문자열과 일치합니다.
-
규칙이 로그 그룹을 전체 ARN으로 지정하는 경우 전체 ARN 문자열이 해당 접두사로 시작되지 않기 때문에
/production/*과 같은 조건 값이 일치하지 않습니다.*/production/*을 ARN 기반 로그 그룹 참조와 일치시키기 위한 와일드카드 접두사로 사용합니다.
Contributor Insights의 보안 모범 사례
다음 모범 사례를 따라 Contributor Insights 구성을 보호합니다.
-
최소 권한 적용 - 로그 그룹 데이터를 분석해야 하는 보안 주체에게
cloudwatch:PutInsightRule및cloudwatch:GetInsightRuleReport만 무여 -
조건 키를 사용하여 로그 그룹 제한 - 보안 주체가 Contributor Insights 규칙에서 참조할 수 있는 로그 그룹 제한
-
민감한 필드 보호 - CloudWatch Logs 데이터 보호를 사용하여 Contributor Insights가 처리하기 전에 민감한 로그 데이터를 마스킹합니다. 자세한 내용은 마스킹 처리를 통해 민감한 로그 데이터를 보호하도록 지원을 참조하세요.
-
기여자 키 민감도 고려 - 기여자 키는 규칙 결과에서 IP 주소 또는 사용자 식별자와 같은 값을 노출할 수 있습니다.
-
교차 계정 액세스 검토 - AWS Organizations 링크 구성을 감사하여 의도된 모니터링 계정만 소스 계정 로그 그룹에 대한 규칙을 생성할 수 있는지 확인합니다.