View a markdown version of this page

전송 중 데이터 암호화 - AWS Glue

전송 중 데이터 암호화

AWS는 이동 중인 데이터에 대해 전송 계층 보안(TLS) 암호화를 제공합니다. AWS Glue의 보안 구성을 사용하여 크롤러, ETL 작업 및 개발 엔드포인트에 대한 암호화 설정을 구성할 수 있습니다. 데이터 카탈로그에 대한 설정을 통해 AWS Glue Data Catalog 암호화를 설정할 수 있습니다.

2018년 9월 4일부터 AWS Glue ETL 및 AWS Glue Data Catalog에 대한 AWS KMS(기존 보유 키 사용서버 측 암호화)가 지원됩니다.

전송 중 Spark Connect 암호화

AWS Glue 대화형 세션과 함께 Spark Connect를 사용하면 클라이언트 애플리케이션과 Spark Connect 엔드포인트 간의 모든 통신이 TLS 1.3을 사용하여 암호화됩니다. Spark Connect 데이터 경로는 HTTP/2를 통한 gRPC를 사용하고, 모든 트래픽은 다음 홉 전체에서 엔드 투 엔드로 암호화됩니다.

  • 클라이언트에서 엔드포인트로 - Spark Connect 클라이언트(pyspark 또는 spark-connect-go)는 TLS 암호화 gRPC(HTTP/2)를 통해 세션 엔드포인트에 연결합니다. 엔드포인트는 TLS 1.3 보안 정책이 적용된 Application Load Balancer를 사용하여 TLS를 종료합니다.

  • 프록시에서 컴퓨팅으로 - 역방향 프록시와 세션 워커에서 실행되는 Spark Connect 서버 간의 내부 트래픽은 전송 게이트웨이 연결을 통해 TLS를 사용하여 암호화됩니다.

Spark Connect 세션은 요청 인증에 수명이 짧은 Bearer 토큰을 사용합니다. 이 토큰은 AWS KMS 데이터 키를 사용하여 AES-256-GCM으로 암호화되며 유효 시간은 5분입니다. 토큰은 GetSessionEndpoint API에서 반환되며 Spark Connect 엔드포인트에 대한 각 gRPC 요청에 포함되어야 합니다.

고객 데이터(Spark 쿼리, DataFrames 결과)는 전송 중 프록시 체인을 통해서만 흐르며 프록시 인프라에서 유지되지 않습니다. 워커 볼륨에 유휴 세션 데이터를 저장할 때는 기본 Amazon EBS 암호화가 사용됩니다.