Azure Container Instances의 기밀 컨테이너

이 문서에서는 Azure Container Instances의 기밀 컨테이너를 사용하여 클라우드에서 실행되는 워크로드를 보호하는 방법을 소개합니다. 이 문서에서는 기능 집합, 시나리오, 제한 사항 및 리소스에 대한 백그라운드 정보를 제공합니다.

Azure Container Instances의 기밀 컨테이너를 통해 고객은 하드웨어 기반의 증명된 TEE(신뢰할 수 있는 실행 환경) 내에서 Linux 컨테이너를 실행할 수 있습니다. 고객은 TEE에서 기밀성의 이점을 얻기 위해 특수 프로그래밍 모델을 채택할 필요 없이 컨테이너화된 Linux 애플리케이션을 리프트 앤 시프트하거나 새로운 기밀 컴퓨팅 애플리케이션을 빌드할 수 있습니다. Azure Container Instances의 기밀 컨테이너는 사용 중인 데이터를 보호하고 메모리에서 사용 중인 데이터를 암호화합니다. Azure Container Instances는 확인 가능한 실행 정책과 게스트 증명을 통한 확인 가능한 하드웨어 신뢰할 수 있는 루트 보장을 통해 이 기능을 확장합니다.

Screenshot of a confidential container group on Azure Container Instances.

Azure Container Instances의 기밀 컨테이너 기능

리프트 앤 시프트 애플리케이션

고객은 TEE에서 기밀성의 이점을 얻기 위해 특수 프로그래밍 모델을 채택할 필요 없이 컨테이너화된 Linux 애플리케이션을 리프트 앤 시프트하거나 새로운 기밀 컴퓨팅 애플리케이션을 빌드할 수 있습니다.

하드웨어 기반의 신뢰할 수 있는 실행 환경

Azure Container Instances의 기밀 컨테이너는 AMD SEV-SNP 지원 프로세서에서 생성 및 관리되는 메모리 암호화 키를 포함하는 Hyper-V 격리 TEE가 있는 컨테이너 그룹에 배포됩니다. 메모리에서 사용 중인 데이터는 이 키로 암호화되어 데이터 재생, 손상, 다시 매핑 및 앨리어싱 기반 공격으로부터 보호합니다.

확인 가능한 실행 정책

Azure Container Instances의 기밀 컨테이너는 고객이 TEE 내에서 실행할 수 있는 소프트웨어 및 작업을 제어할 수 있도록 하는 확인 가능한 실행 정책을 통해 실행될 수 있습니다. 이러한 실행 정책은 잠재적으로 중요한 데이터를 유출할 수 있는 예기치 않은 애플리케이션 수정을 만드는 악의적인 행위로부터 보호하는 데 도움이 됩니다. 실행 정책은 제공된 도구를 통해 고객이 작성하고 암호화 증명을 통해 확인됩니다.

원격 게스트 증명

ACI의 기밀 컨테이너는 신뢰 당사자와 보안 채널을 만들기 전에 컨테이너 그룹의 신뢰성을 확인하는 데 사용되는 원격 게스트 증명을 지원합니다. 컨테이너 그룹은 하드웨어에서 서명하고 하드웨어 및 소프트웨어에 대한 정보를 포함하는 SNP 하드웨어 증명 보고서를 생성할 수 있습니다. 이렇게 생성된 하드웨어 증명 보고서는 중요한 데이터가 TEE에 공개되기 전에 오픈 소스 사이드카 애플리케이션을 통해 Microsoft Azure Attestation 서비스 또는 다른 증명 서비스를 통해 확인할 수 있습니다.

기밀 컴퓨팅 적용 정책

기밀 컨테이너는 CCE(기밀 컴퓨팅 적용) 정책을 통해 컨테이너 수준 무결성 및 증명을 지원합니다. 기밀 컴퓨팅 적용 정책은 컨테이너 그룹 내에서 실행이 허용되고 컨테이너 런타임에 의해 적용되는 구성 요소를 규정합니다.

Azure CLI confcom 확장

Azure CLI confcom 확장을 통해 고객은 ARM 템플릿을 입력으로 사용하고 기본 64 문자열 정책을 출력으로 제공하여 기밀 컴퓨팅 적용 정책을 생성할 수 있습니다. 이 출력은 실행이 허용되는 구성 요소를 적용하기 위해 컨테이너 그룹 정의에 포함됩니다. 기밀 컴퓨팅 실행 정책 작성에 대한 자세한 내용은 Azure CLI confcom 확장을 참조하세요.

보안 키 릴리스 및 암호화된 파일 시스템 사이드카

Azure Container Instances의 기밀 컨테이너는 두 개의 오픈 소스 사이드카와 통합되어 컨테이너 그룹 내의 기밀 기능을 지원합니다. 기밀 사이드카 리포지토리에서 이러한 사이드카와 자세한 정보를 찾을 수 있습니다.

보안 키 릴리스 사이드카

Azure Container Instances의 기밀 컨테이너는 증명 및 보안 키 릴리스를 위한 사이드카 오픈 소스 컨테이너를 제공합니다. 이 사이드카는 다른 컨테이너가 POST 메서드를 통해 하드웨어 증명 보고서 또는 Microsoft Azure Attestation 토큰을 검색할 수 있도록 REST API를 노출하는 웹 서버를 인스턴스화합니다. 사이드카는 유효성 검사가 완료된 후 컨테이너 그룹에 키를 릴리스하기 위해 Azure Key Vault와 통합됩니다.

암호화된 파일 시스템 사이드카

Azure Container Instances의 기밀 컨테이너는 이전에 Azure Blob Storage에 업로드된 원격 암호화 파일 시스템을 탑재하기 위한 사이드카 컨테이너를 제공합니다. 사이드카 컨테이너는 하드웨어 증명과 증명의 서명 키를 보증하는 인증서 체인을 투명하게 검색합니다. 그런 다음 관리되는 HSM에서 파일 시스템의 암호화 키를 안전하게 해제하는 데 필요한 증명 토큰을 권한 부여하도록 Microsoft Azure Attestation을 요청합니다. 증명 토큰이 예상 기관에 의해 서명되고 증명 클레임이 키의 릴리스 정책과 일치하는 경우에만 키가 사이드카 컨테이너에 릴리스됩니다. 사이드카 컨테이너는 키를 투명하게 사용하여 원격 암호화 파일 시스템을 탑재합니다. 이 프로세스는 컨테이너 그룹 내에서 실행되는 컨테이너의 모든 작업 시 파일 시스템의 기밀성과 무결성을 유지합니다.

시나리오

다자간 데이터 분석 및 기계 학습 교육을 위한 데이터 클린 룸

비즈니스 트랜잭션 및 프로젝트 협업을 위해서는 여러 당사자 간에 기밀 데이터를 공유해야 하는 경우가 많습니다. 이 데이터에는 무단 액세스로부터 보호해야 하는 개인 정보, 재무 정보, 의료 기록이 포함될 수 있습니다. Azure Container Instances의 기밀 컨테이너는 고객이 입력 데이터를 다른 당사자에게 노출하지 않고 여러 원본의 학습 데이터를 처리하는 데 필요한 기능(하드웨어 기반 TEE, 원격 증명)을 제공합니다. 이를 통해 조직은 중요한 정보에 대한 액세스를 제어하면서 파트너의 데이터 세트에서 더 많은 가치를 가져올 수 있습니다. 따라서 Azure Container Instances의 기밀 컨테이너는 기밀 기계 학습과 같은 다자간 데이터 분석 시나리오에 이상적입니다.

Screenshot of a ML training model on Azure Container Instances.

기밀 유추

ACI는 빠르고 쉬운 배포, 유연한 리소스 할당, 종량제 가격 책정을 제공하므로 기밀 유추 워크로드를 위한 훌륭한 플랫폼으로 자리매김합니다. Azure Container Instances의 기밀 컨테이너를 사용하면 모델 개발자와 데이터 소유자가 협업하면서 모델 개발자의 지적 재산을 보호하고 유추에 사용되는 데이터를 안전하게 프라이빗으로 유지할 수 있습니다. Azure Container Instances에서 기밀 컨테이너를 사용하는 기밀 유추의 샘플 배포를 확인합니다.

Screenshot of a ML inference model on Azure Container Instances.

지원되지 않는 시나리오

  • 기밀 컴퓨팅 적용 정책은 Azure CLI confcom 확장을 통해 만들어져야 하며 수동으로 만들 수 없습니다.

리소스

다음 단계