클라우드 ID를 자신의 것으로 거래하기: 관리형 컴퓨팅... 노트

클라우드 ID를 자신의 것으로 거래하기: 관리형 컴퓨팅에서의 워크로드 증명

조직은 종종 클라우드 제공업체(AWS 등)의 시스템과 내부 서비스용 시스템이라는 두 개의 병렬 ID 시스템을 유지합니다. 이 게시물은 Amazon EMR의 Apache Spark 워크로드가 이 간극을 어떻게 해소하여 초기 클라우드 ID에서 일급 내부 ID를 얻을 수 있도록 하는지 자세히 설명합니다. Netflix는 서비스 간 상호 TLS 인증을 위해 Metatron이라는 비공개 PKI를 사용하며, 워크로드 ID를 확인하기 위한 증명 프로세스가 필요합니다. 또한 데이터 소유 및 자체 ID를 갖는 "데이터 프로젝트" 개념을 사용하여 액세스 제어 및 감사 일관성을 보장합니다.핵심 과제는 관리형 컴퓨팅에서 Spark 작업에 필요한 내부 ID로 클라우드 기반 AWS 실행 역할을 변환하는 것입니다. 이 솔루션은 각 데이터 프로젝트 ID와 전용 IAM 역할 간에 일대일 직접 매핑을 설정하며, 데이터 프로젝트 서비스가 이 매핑에 대한 권한자 역할을 합니다. 이 매핑은 클라우드 제공업체의 어휘에서 조직의 내부 어휘로 문장을 변환하는 데 중요합니다. 수많은 IAM 역할을 관리하는 확장성 문제를 해결하기 위해 이러한 역할은 전용 AWS 계정의 작은 풀에 결정론적으로 샤딩됩니다.다섯 가지 구성 요소가 포함됩니다. 제어 평면(작업을 시작하고 메타데이터에 서명), 데이터 프로젝트 서비스(ID-역할 매핑 관리), ID 서비스(증명을 확인하고 인증서 발급), Spark 플러그인(프로세스 부트스트래핑에 후킹), AWS STS(공증인 역할). 프로세스는 제어 평면이 워크로드 세부 정보가 포함된 메타데이터 페이로드에 서명하는 것으로 시작됩니다. 이후 Spark 드라이버 플러그인은 AWS STS에서 사전 서명된 URL을 생성하기 위해 AWS 자격 증명을 사용하여 클라우드 ID 소유권을 증명합니다.그런 다음 ID 서비스는 사전 서명된 URL에서 식별된 역할과 제어 평면의 서명된 메타데이터라는 두 가지 독립적인 주장을 모두 확인합니다. 일치하는 경우 워크로드에 대한 인증서가 발급됩니다. 제공업체의 주장은 위조할 수 없지만 불완전하고 제어 평면의 주장은 완전하지만 잠재적으로 재현 가능하므로 이 두 주장만으로는 충분하지 않기 때문에 이 확인이 중요합니다. 이 시스템은 드라이버가 한 번 증명하고 자격 증명을 안전하게 배포함으로써 실행자에 대한 팬아웃 문제를 해결합니다. 인증서는 수명이 짧으며 드라이버 JVM 내의 반복 가능한 증명 프로세스를 통해 갱신됩니다. 신뢰 모델은 단일 참가자가 독립적으로 ID를 발급할 수 없도록 보장하며, 워크로드 자체는 자신의 합법성을 보증할 필요가 없습니다.
CdXz5zHNQW_E3OfGUk31B.png