AWS Config에서 관리 규칙을 정기적으로 평가하는 방법
3802 단어 람다awsconfigCloudWatchAWS
경위
AWS Config에는 AWS 리소스가 올바른 설정인지 확인하는 기능이 있습니다.
다음은 예입니다.
첫 번째 비 호환 이메일을 놓치면
위의 규칙을 준수하지 않는 상태가 계속됩니다.
꽤 끔찍하네요.
그 때문에, 룰을 정기적으로 평가시켜 보게 되었습니다.
착각
AWS Config의 관리형 규칙에 대해 착각하고,
룰의 상세의 트리거 타입을 「설정의 변경」→「정기적」으로 하면
누구나 정기 실행이 가능하다고 생각했습니다.
하지만 규칙을 Edit에서 열어도 "정기적"이 회색으로되어 체크할 수없는 것이 있습니다.
AWS 지원에서 가르쳐 준 조치
StartConfigRulesEvaluation을 Lambda로 구현하고 CloudWatch Events에서 Lambda를 정기적으로 실행하면
요구를 충족시킬 수 있었다는 것이었습니다.
Lambda용 Role
이하의 Policy를 작성해 지금부터 작성하는 Lambda용의 Role에 첨부하면 OK입니다.
JSON의 경우
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "config:StartConfigRulesEvaluation",
"Resource": "*"
}
]
}
관리 콘솔의 경우

Lambda(Python3.6)
파이썬 참고 페이지 을 참조하면서 작성한 코드가 여기입니다.
import boto3
client = boto3.client('config')
def lambda_handler(event, context):
response = client.start_config_rules_evaluation(
ConfigRuleNames=[
's3-bucket-public-read-prohibited',
'cloudtrail-enabled',
'rds-multi-az-support'
]
)
ConfigRuleNames의 위치에 관리 규칙의 항목 이름을 기재하면 됩니다.
위에서 만든 Role을 선택하면 Lambda 화면에서 Config가 연동됩니다.

CloudWatch 이벤트
스케줄에서 확인하고 싶은 간격을 설정하고 Lambda를 지정하면 연계가 완료됩니다.

확인 방법
규칙의 항목에서 평가 상태를 확인합니다.
마지막으로 성공한 호출과 마지막으로 성공한 평가가 지정된 간격으로 업데이트되면 성공입니다.

함정
AWS Config는 사양에 따라 규칙 준수 및 비준수 상태 변경 시에만 알려줍니다.
즉, 비준수가 계속되는 경우에는 메일 통지가 없습니다.
서포트로부터 상기의 회답을 받았으므로 2019년 2월 말 시점에서는 대체 수단도 없어서
「운용으로 커버」를 하지 않으면 안 되는 것 같습니다・・・
■ 공식 링크
공식 페이지
블랙 벨트
AWS Config 관리형 규칙 목록
■ AWS Config 과거 기사
AWS Config의 알림 내용을 Lambda로 성형
Reference
이 문제에 관하여(AWS Config에서 관리 규칙을 정기적으로 평가하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tomoki_s/items/a5c16db2f97059304d44
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "config:StartConfigRulesEvaluation",
"Resource": "*"
}
]
}
import boto3
client = boto3.client('config')
def lambda_handler(event, context):
response = client.start_config_rules_evaluation(
ConfigRuleNames=[
's3-bucket-public-read-prohibited',
'cloudtrail-enabled',
'rds-multi-az-support'
]
)
규칙의 항목에서 평가 상태를 확인합니다.
마지막으로 성공한 호출과 마지막으로 성공한 평가가 지정된 간격으로 업데이트되면 성공입니다.

함정
AWS Config는 사양에 따라 규칙 준수 및 비준수 상태 변경 시에만 알려줍니다.
즉, 비준수가 계속되는 경우에는 메일 통지가 없습니다.
서포트로부터 상기의 회답을 받았으므로 2019년 2월 말 시점에서는 대체 수단도 없어서
「운용으로 커버」를 하지 않으면 안 되는 것 같습니다・・・
■ 공식 링크
공식 페이지
블랙 벨트
AWS Config 관리형 규칙 목록
■ AWS Config 과거 기사
AWS Config의 알림 내용을 Lambda로 성형
Reference
이 문제에 관하여(AWS Config에서 관리 규칙을 정기적으로 평가하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tomoki_s/items/a5c16db2f97059304d44
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(AWS Config에서 관리 규칙을 정기적으로 평가하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tomoki_s/items/a5c16db2f97059304d44텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)