AWS Config를 사용하여 Amazon Redshift 보안 구성 모니터링 - AWS 권장 가이드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS Config를 사용하여 Amazon Redshift 보안 구성 모니터링

작성자: Lucas Kauffman(AWS) 및 abhishek sengar(AWS)

코드 리포지토리: awslabs/ aws-config-rules

환경: 프로덕션

기술: 보안, 자격 증명, 규정 준수

AWS 서비스: AWS Config, Amazon Redshift, AWS Lambda

요약

AWS Config를 사용하여 AWS 리소스의 보안 구성을 평가할 수 있습니다. AWS Config는 리소스를 모니터링할 수 있으며, 구성 설정이 정의된 규칙을 위반하는 경우 AWS Config는 해당 리소스를 비준수로 표시합니다.

AWS Config를 사용하여 Amazon Redshift 클러스터와 데이터베이스를 평가하고 모니터링할 수 있습니다. 보안 권장 사항 및 기능에 대한 자세한 내용은 Amazon Redshift의 보안을 참조하십시오. 이 패턴에는 AWS Config에 대한 사용자 지정 AWS Lambda 규칙이 포함됩니다. 계정에 이러한 규칙을 배포하여 Amazon Redshift 클러스터 및 데이터베이스의 보안 구성을 모니터링할 수 있습니다. 이 패턴의 규칙은 AWS Config를 사용하여 다음을 확인하는 데 도움이 됩니다.

  • Amazon Redshift 클러스터의 데이터베이스에 대해 감사 로깅 활성화

  • Amazon Redshift 클러스터에 연결하려면 SSL 필요

  • Federal Information Processing Standards(FIPS) 사용됨

  • Amazon Redshift 클러스터의 데이터베이스는 암호화됨

  • 사용자 활동 모니터링 활성화

사전 조건 및 제한 사항

사전 조건

제품 버전

  • Python 버전 3.9 이상.

아키텍처

대상 기술 스택

  • AWS Config

대상 아키텍처

대상 아키텍처의 작업 시퀀스
  1. AWS Config는 사용자 지정 규칙을 주기적으로 실행합니다.

  2. 사용자 지정 규칙은 Lambda 함수를 간접적으로 호출합니다.

  3. Lambda 함수는 Amazon Redshift 클러스터에서 규정을 준수하지 않는 구성이 있는지 확인합니다.

  4. Lambda 함수는 각 Amazon Redshift 클러스터의 규정 준수 상태를 AWS Config에 보고합니다.

자동화 및 규모 조정

AWS Config 사용자 지정 규칙은 계정 내 모든 Amazon Redshift 클러스터를 평가하도록 규모를 조정합니다. 이 솔루션의 규모를 조정하기 위한 추가 조치는 필요하지 않습니다.

도구

서비스

  • AWS Config는 사용자의 AWS 계정에 있는 리소스와 그 구성 방식을 자세히 보여줍니다. 리소스가 서로 관련되는 방식과 리소스의 구성이 시간이 지남에 따라 변경된 방식을 식별하는 데 도움이 됩니다.

  • AWS Identity and Access Management(IAM)를 사용하면 AWS 리소스를 사용하도록 인증받고 권한이 부여된 사용자를 통제함으로써 AWS 리소스에 대한 액세스를 안전하게 관리할 수 있습니다.

  • AWS Lambda는 서버를 프로비저닝하거나 관리할 필요 없이 코드를 실행하는 데 도움이 되는 컴퓨팅 서비스입니다. 필요할 때만 코드를 실행하며 자동으로 확장이 가능하므로 사용한 컴퓨팅 시간만큼만 비용을 지불합니다.

  • Amazon Redshift는 AWS 클라우드에서 관리되는 페타바이트급 데이터 웨어하우스 서비스입니다.

코드 리포지토리

이 패턴의 코드는 리포지토리에서 사용할 수 있습니다. GitHub aws-config-rules 이 리포지토리의 사용자 지정 규칙은 Python 프로그래밍 언어의 Lambda 규칙입니다. 이 리포지토리에는 AWS Config에 대한 많은 사용자 지정 규칙이 포함되어 있습니다. 이 패턴에는 다음 규칙만 사용됩니다.

  • REDSHIFT_AUDIT_ENABLED – Amazon Redshift 클러스터에서 감사 로깅이 활성화되어 있는지 확인합니다. 사용자 활동 모니터링이 활성화되어 있는지도 확인하려면 REDSHIFT_USER_ACTIVITY_MONITORING_ENABLED 규칙을 대신 배포하십시오.

  • REDSHIFT_SSL_REQUIRED – Amazon Redshift 클러스터에 연결하는 데 SSL이 필요한지 확인합니다. 연방 정보 처리 표준(FIPS) 암호도 사용 중인지 확인하려면 REDSHIFT_FIPS_REQUIRED 규칙을 대신 배포하십시오

  • REDSHIFT_FIPS_REQUIRED – SSL이 필요하고 FIPS 암호가 사용 중인지 확인하십시오.

  • REDSHIFT_DB_ENCRYPTED – Amazon Redshift 클러스터의 데이터베이스가 암호화되어 있는지 확인합니다.

  • REDSHIFT_USER_ACTIVITY_MONITORING_ENABLED – 감사 로깅 및 사용자 활동 모니터링이 활성화되어 있는지 확인합니다.

에픽

작업설명필요한 기술

IAM 정책을 구성합니다.

  1. Lambda 실행 역할이 Amazon Redshift 클러스터 구성을 읽을 수 있도록 허용하는 사용자 지정 IAM 자격 증명 기반 정책을 생성합니다. 자세한 내용은 리소스에 대한 액세스 관리(Amazon Redshift 설명서) 및 IAM 정책 생성(IAM 설명서)을 참조하십시오.

    {     "Version": "2012-10-17",     "Statement": [       {         "Effect": "Allow",         "Action": [             "redshift:DescribeClusterParameterGroups",             "redshift:DescribeClusterParameters",             "redshift:DescribeClusters",             "redshift:DescribeClusterSecurityGroups",             "redshift:DescribeClusterSnapshots",             "redshift:DescribeClusterSubnetGroups",             "redshift:DescribeEventSubscriptions",             "redshift:DescribeLoggingStatus"         ],         "Resource": "*"       }     ] }
  2. AWSLambdaExecuteAWSConfigRulesExecutionRole관리형 정책을 Lambda 실행 역할에 대한 권한 정책으로 할당합니다. 지침은 IAM 자격 증명 권한 추가(IAM 설명서)를 참조하십시오.

AWS 관리자

리포지토리를 복제합니다.

Bash 쉘에서 다음 명령을 실행합니다. 이렇게 하면 리포지토리가 복제됩니다 aws-config-rules. GitHub

git clone https://github.com/awslabs/aws-config-rules.git
일반 AWS
작업설명필요한 기술

AWS Config에서 규칙을 배포합니다.

사용자 지정 Lambda 규칙 생성(AWS Config 설명서)의 지침에 따라 계정에 다음 규칙 중 하나 이상을 배포합니다.

  • REDSHIFT_AUDIT_ENABLED

  • REDSHIFT_SSL_REQUIRED

  • REDSHIFT_FIPS_REQUIRED

  • REDSHIFT_DB_ENCRYPTED

  • REDSHIFT_USER_ACTIVITY_MONITORING_ENABLED

AWS 관리자

규칙이 제대로 작동하는지 확인합니다.

규칙을 배포한 후에는 리소스 평가(AWS Config 설명서)의 지침에 따라 AWS Config가 Amazon Redshift 리소스를 올바르게 평가하고 있는지 확인합니다.

일반 AWS

관련 리소스

AWS 서비스 설명서

AWS 권장 가이드

추가 정보

AWS Config에서 다음과 같은 AWS 관리형 규칙을 사용하여 Amazon Redshift의 다음과 같은 보안 구성을 확인할 수 있습니다.

  • redshift-cluster-configuration-check— 이 규칙을 사용하여 Amazon Redshift 클러스터의 데이터베이스에 감사 로깅이 활성화되었는지 확인하고 데이터베이스가 암호화되었는지 확인합니다.

  • redshift-require-tls-ssl— 이 규칙을 사용하여 Amazon Redshift 클러스터에 연결하는 데 SSL이 필요한지 확인할 수 있습니다.