Amazon EMR의 보안 - Amazon EMR

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

Amazon EMR의 보안

보안 및 규정 준수는 귀사의 책임입니다. AWS이 공동 책임 모델은 호스트 운영 체제 및 가상화 계층부터 EMR 클러스터가 AWS 운영되는 시설의 물리적 보안에 이르기까지 구성 요소를 운영, 관리 및 제어할 때 운영 부담을 줄이는 데 도움이 될 수 있습니다. Amazon EMR 클러스터를 관리하고 업데이트하는 것은 물론 애플리케이션 소프트웨어와 AWS 제공된 보안 제어를 구성하는 일도 책임집니다. 이러한 책임 차별화를 일반적으로 클라우드의 보안과 클라우드에서의 보안이라고 합니다.

  • 클라우드 보안 — AWS 실행되는 AWS 서비스 인프라를 보호하는 역할을 합니다. AWS AWS 또한 안전하게 사용할 수 있는 서비스를 제공합니다. 서드 파티 감사원은 정기적으로 AWS 규정 준수 프로그램의 일환으로 보안 효과를 테스트하고 검증합니다. Amazon EMR에 적용되는 규정 준수 프로그램에 대해 알아보려면 규정 준수 프로그램별 적용 범위를 참조하십시오AWS 서비스 .

  • 클라우드에서의 보안 — Amazon EMR 클러스터를 보호하는 데 필요한 모든 보안 구성 및 관리 작업을 수행할 책임도 있습니다. Amazon EMR 클러스터를 배포하는 고객은 인스턴스에 설치된 애플리케이션 소프트웨어를 관리하고, 요구 사항, 관련 법률 및 규정에 따른 보안 그룹, 암호화 및 액세스 제어와 같이 AWS제공된 기능을 구성할 책임이 있습니다.

이 설명서는 Amazon EMR을 사용할 때 공동 책임 모델을 적용하는 방법을 이해하는 데 도움이 됩니다. 이 장의 주제에서는 Amazon EMR을 구성하고 다른 AWS 서비스 항목을 사용하여 보안 및 규정 준수 목표를 달성하는 방법을 보여줍니다.

네트워크 및 인프라 보안

관리형 서비스인 Amazon EMR은 Amazon Web Services: 보안 프로세스 개요 백서에 설명된 AWS 글로벌 네트워크 보안 절차에 따라 보호됩니다. AWS 네트워크 및 인프라 보호 서비스는 호스트와 네트워크 수준의 경계 모두에서 세밀한 보호를 제공합니다. Amazon EMR은 네트워크 보호 AWS 서비스 및 규정 준수 요구 사항을 해결하는 애플리케이션 기능을 지원합니다.

  • Amazon EC2 보안 그룹은 Amazon EMR 클러스터 인스턴스의 가상 방화벽 역할을 하여 인바운드 및 아웃바운드 네트워크 트래픽을 제한합니다. 자세한 내용은 보안 그룹을 통한 네트워크 트래픽 제어를 참조하십시오.

  • Amazon EMR BPA (Block Public Access) 를 사용하면 클러스터에 포트의 퍼블릭 IP 주소로부터 들어오는 인바운드 트래픽을 허용하는 보안 구성이 있는 경우 퍼블릭 서브넷에서 클러스터를 시작할 수 없습니다. 자세한 내용은 Amazon EMR 퍼블릭 액세스 차단 사용을 참조하십시오.

  • SSH (Secure Shell) 는 사용자가 클러스터 인스턴스의 명령줄에 안전하게 연결할 수 있는 방법을 제공합니다. 또한 SSH를 사용하여 애플리케이션이 클러스터의 마스터 노드에서 호스팅하는 웹 인터페이스를 볼 수 있습니다. 자세한 내용은 SSH 자격 증명에 EC2 키 쌍 사용클러스터에 연결을 참조하십시오.

Amazon EMR의 기본 Amazon Linux AMI에 대한 업데이트

중요

Amazon Linux 또는 Amazon Linux 2 Amazon Machine Image(AMI)를 실행하는 EMR 클러스터는 기본 Amazon Linux 동작을 사용하며, 재부팅이 필요한 중요한 핵심 커널 업데이트를 자동으로 다운로드하여 설치하지는 않습니다. 이는 기본 Amazon Linux AMI를 실행하는 다른 Amazon EC2 인스턴스와 동일한 동작입니다. Amazon EMR 릴리스가 출시된 후 재부팅이 필요한 새로운 Amazon Linux 소프트웨어 업데이트(예: 커널, NVIDIA, CUDA 업데이트)를 사용할 수 있게 되면 기본 AMI를 실행하는 EMR 클러스터 인스턴스는 해당 업데이트를 자동으로 다운로드하여 설치하지 않습니다. 커널 업데이트를 받으려면 최신 Amazon Linux AMI를 사용하도록 Amazon EMR AMI를 사용자 지정할 수 있습니다.

애플리케이션의 보안 상태 및 클러스터가 실행되는 기간에 따라 클러스터를 주기적으로 다시 부팅하여 보안 업데이트를 적용하거나 패키지 설치 및 업데이트를 사용자 지정하기 위한 부트스트랩 작업을 만들 수 있습니다. 실행 중인 클러스터 인스턴스에서 선택 보안 업데이트를 테스트하고 설치하도록 선택할 수도 있습니다. 자세한 정보는 Amazon EMR용 기본 Amazon Linux AMI 사용을 참조하세요. 단, 네트워킹 구성은 Amazon S3의 Linux 리포지토리로의 HTTP 및 HTTPS 송신을 허용해야 합니다. 그렇지 않으면 보안 업데이트가 성공하지 못합니다.

AWS Identity and Access Management 아마존 EMR과 함께

AWS Identity and Access Management (IAM) 은 관리자가 리소스에 대한 액세스를 안전하게 제어할 수 있도록 지원하는 AWS 서비스입니다. AWS IAM 관리자는 어떤 사용자가 Amazon EMR 리소스를 사용할 수 있도록 인증(로그인)되고 권한이 부여(권한 있음)될 수 있는지 제어합니다. IAM 자격 증명에 사용자, 그룹 및 역할이 포함됩니다. IAM 역할은 IAM 사용자와 비슷하지만 특정인과 관련이 없으며 권한이 필요한 모든 사용자가 맡을 수 있도록 고안되었습니다. 자세한 AWS Identity and Access Management 내용은 Amazon EMR을 참조하십시오. Amazon EMR은 여러 IAM 역할을 사용하여 Amazon EMR 클러스터에 대한 액세스 제어를 구현하는 데 도움을 줍니다. IAM은 추가 비용 AWS 없이 사용할 수 있는 서비스입니다.

  • Amazon EMR용 IAM 역할 (EMR 역할) — Amazon EMR 서비스가 사용자를 대신하여 AWS 서비스 다른 사용자에 액세스할 수 있는 방법을 제어합니다. 예를 들어, Amazon EMR 클러스터가 시작될 때 Amazon EC2 인스턴스를 프로비저닝할 수 있습니다. 자세한 내용은 Amazon EMR 권한 AWS 서비스 및 리소스에 대한 IAM 서비스 역할 구성을 참조하십시오.

  • 클러스터 EC2 인스턴스의 IAM 역할 (EC2 인스턴스 프로필) — 인스턴스 시작 시 Amazon EMR 클러스터의 모든 EC2 인스턴스에 할당되는 역할입니다. 클러스터에서 실행되는 애플리케이션 프로세스는 이 역할을 사용하여 Amazon S3와 같은 다른 AWS 서비스프로세스와 상호 작용합니다. 자세한 내용은 클러스터 EC2 인스턴스의 IAM 역할을 참조하십시오.

  • 애플리케이션용 IAM 역할 (런타임 역할) — Amazon EMR 클러스터에 작업 또는 쿼리를 제출할 때 지정할 수 있는 IAM 역할입니다. Amazon EMR 클러스터에 제출하는 작업 또는 쿼리는 런타임 역할을 사용하여 Amazon S3의 객체와 같은 AWS 리소스에 액세스합니다. Spark 및 Hive용 Amazon EMR 작업에서 런타임 역할을 지정할 수 있습니다. 하지만 런타임 역할을 사용하면 다른 IAM 역할을 사용하여 동일한 클러스터에서 실행되는 작업을 격리할 수 있습니다. 자세한 내용은 Amazon EMR에서 IAM 역할을 런타임 역할로 사용을 참조하십시오.

워크포스 ID는 워크로드를 구축하거나 운영하는 사용자를 말합니다. AWS Amazon EMR은 다음과 같은 직원 ID를 지원합니다.

  • AWS AWS 서비스 리소스에 대한 사용자 액세스를 관리하려면 IAM ID 센터 (Idc) 를 사용하는 것이 좋습니다. AWS 한 곳에서 직원 ID를 할당하고 여러 AWS 계정 및 애플리케이션에 일관되게 액세스할 수 있습니다. Amazon EMR은 신뢰할 수 있는 ID 전파를 통해 직원 ID를 지원합니다. 신뢰할 수 있는 ID 전파 기능을 통해 사용자는 애플리케이션에 로그인할 수 있으며, 애플리케이션은 데이터 또는 리소스에 대한 액세스를 승인하기 AWS 서비스 위해 사용자의 ID를 다른 사람에게 전달할 수 있습니다. 자세한 내용은 Amazon EMR을 통한AWS IAM ID 센터 지원 활성화를 참조하십시오.

    경량 디렉터리 액세스 프로토콜 (LDAP) 은 네트워크를 통해 사용자, 시스템, 서비스 및 애플리케이션에 대한 정보에 액세스하고 유지 관리하기 위한 벤더 중립적인 개방형 업계 표준 애플리케이션 프로토콜입니다. LDAP는 일반적으로 액티브 디렉터리 (AD) 및 OpenLDAP와 같은 기업 ID 서버에 대한 사용자 인증에 사용됩니다. EMR 클러스터에서 LDAP를 활성화하면 사용자가 기존 자격 증명을 사용하여 클러스터를 인증하고 액세스할 수 있습니다. 자세한 내용은 Amazon EMR을 통한 LDAP 지원 활성화를 참조하십시오.

    Kerberos는 비밀 키 암호화를 사용하여 클라이언트/서버 애플리케이션에 강력한 인증을 제공하도록 설계된 네트워크 인증 프로토콜입니다. Kerberos를 사용하는 경우 Amazon EMR은 클러스터에 설치하는 애플리케이션, 구성 요소 및 하위 시스템에 대해 Kerberos를 구성하여 서로 인증합니다. Kerberos가 구성된 클러스터에 액세스하려면 Kerberos 도메인 컨트롤러 (KDC) 에 Kerberos 보안 주체가 있어야 합니다. 자세한 내용은 Amazon EMR을 통한 Kerberos 지원 활성화를 참조하십시오.

단일 테넌트 및 다중 테넌트 클러스터

클러스터는 기본적으로 EC2 인스턴스 프로필을 IAM ID로 사용하는 단일 테넌시에 맞게 구성됩니다. 단일 테넌트 클러스터에서는 모든 작업이 클러스터에 대한 완전하고 완전한 액세스 권한을 가지며 EC2 인스턴스 프로필을 기반으로 모든 AWS 서비스 리소스에 대한 액세스가 이루어집니다. 멀티테넌트 클러스터에서는 테넌트가 서로 격리되므로 테넌트는 클러스터의 클러스터와 EC2 인스턴스에 대한 완전한 액세스 권한을 갖지 못합니다. 멀티테넌트 클러스터의 ID는 런타임 역할 또는 인력이 식별하는 ID입니다. 멀티테넌트 클러스터에서는 Apache Ranger를 통해 세분화된 액세스 제어 (FGAC) 지원을 활성화할 수도 있습니다. AWS Lake Formation 런타임 역할 또는 FGAC가 활성화된 클러스터에서는 iptables를 통해 EC2 인스턴스 프로필에 대한 액세스도 비활성화됩니다.

중요

단일 테넌트 클러스터에 액세스할 수 있는 모든 사용자는 Linux 운영 체제 (OS) 에 소프트웨어를 설치하고, Amazon EMR에서 설치한 소프트웨어 구성 요소를 변경 또는 제거하고, 클러스터에 속한 EC2 인스턴스에 영향을 미칠 수 있습니다. 사용자가 Amazon EMR 클러스터를 설치하거나 구성을 변경할 수 없도록 하려면 클러스터에 멀티 테넌시를 활성화하는 것이 좋습니다. 런타임 역할, AWS IAM ID 센터, Kerberos 또는 LDAP에 대한 지원을 활성화하여 클러스터에서 멀티 테넌시를 활성화할 수 있습니다.

데이터 보호

를 사용하면 데이터를 보호하는 방법과 데이터에 액세스할 수 있는 AWS 서비스 사용자를 결정하는 도구를 사용하여 데이터를 제어할 수 있습니다. AWS AWS Identity and Access Management (IAM) 과 같은 서비스를 사용하면 리소스에 대한 액세스 AWS 서비스 및 리소스를 안전하게 관리할 수 있습니다. AWS CloudTrail 탐지 및 감사를 활성화합니다. Amazon EMR을 사용하면 사용자가 AWS 관리하거나 완전히 관리하는 키를 사용하여 Amazon S3에 저장된 데이터를 쉽게 암호화할 수 있습니다. Amazon EMR은 전송 중인 데이터에 대한 암호화 활성화도 지원합니다. 자세한 내용은 저장된 데이터 및 전송 중 데이터 암호화를 참조하십시오.

데이터 액세스 제어

데이터 액세스 제어를 사용하면 IAM ID 또는 직원 ID가 액세스할 수 있는 데이터를 제어할 수 있습니다. Amazon EMR은 다음과 같은 액세스 제어를 지원합니다.

  • IAM 자격 증명 기반 정책 — Amazon EMR에서 사용하는 IAM 역할에 대한 권한을 관리합니다. IAM 정책을 태깅과 결합하여 액세스를 기반으로 제어할 수 있습니다. cluster-by-cluster 자세한 AWS Identity and Access Management 내용은 Amazon EMR을 참조하십시오.

  • AWS Lake Formation데이터의 권한 관리를 중앙 집중화하고 조직 전체와 외부에서 쉽게 공유할 수 있도록 합니다. Lake Formation을 사용하면 Glue Data Catalog의 데이터베이스와 테이블에 열 단위로 세밀하게 액세스할 수 있습니다. AWS 자세한 내용은 Amazon AWS Lake Formation EMR과 함께 사용을 참조하십시오.

  • Amazon S3 액세스는 Active Directory 또는 AWS Identity and Access Management (IAM) 보안 주체와 같은 디렉터리의 맵 ID를 S3의 데이터 세트에 맵 ID를 부여합니다. 또한 S3 액세스는 로그 최종 사용자 ID와 S3 데이터에 액세스하는 데 사용되는 애플리케이션에 권한을 부여합니다. AWS CloudTrail자세한 내용은 Amazon EMR에서 Amazon S3 액세스 권한 사용을 참조하십시오.

  • Apache Ranger는 하둡 플랫폼 전반에서 포괄적인 데이터 보안을 지원, 모니터링 및 관리하는 프레임워크입니다. Amazon EMR은 아파치 하이브 메타스토어 및 Amazon S3에 대한 아파치 레인저 기반의 세분화된 액세스 제어를 지원합니다. 자세한 내용은 아파치 레인저와 Amazon EMR 통합을 참조하십시오.