Athena가 Lake Formation에 등록된 데이터에 액세스하는 방식
이 단원에서 설명하는 액세스 워크플로는 Lake Formation에 등록된 Amazon S3 위치 및 메타데이터 객체에 대해 Athena 쿼리를 실행할 때만 적용됩니다. 자세한 내용은 AWS Lake Formation 개발자 안내서의 데이터 레이크 등록을 참조하세요. Lake Formation 관리자는 데이터 등록 이외에도 Data Catalog의 메타데이터 및 Amazon S3의 데이터 위치에 대한 액세스 권한을 부여하거나 취소하는 Lake Formation 권한을 적용합니다. 자세한 내용은 AWS Lake Formation 개발자 안내서의 메타데이터 및 데이터에 대한 보안 및 액세스 제어를 참조하세요.
Athena 보안 주체(사용자, 그룹 또는 역할)가 Lake Formation을 사용하여 등록된 데이터에 대해 쿼리를 실행할 때마다 Lake Formation은 해당 보안 주체가 쿼리에 적합한 데이터베이스, 테이블 및 Amazon S3 위치에 대한 적절한 Lake Formation 권한을 가지고 있는지 확인합니다. 보안 주체에 액세스 권한이 있으면 Lake Formation이 일시적인 자격 증명을 Athena에 발급(vend)하고 쿼리가 실행됩니다.
다음 다이어그램은 위에서 설명한 흐름을 보여 줍니다.
다음 다이어그램은 Lake Formation에 등록된 Amazon S3 위치가 있는 테이블에서 Athena의 자격 증명 발급이 가상 SELECT
쿼리에 대해 쿼리별로 작동하는 방식을 보여 줍니다.
-
보안 주체가 Athena에서
SELECT
쿼리를 실행합니다. -
Athena는 쿼리를 분석하고 Lake Formation 권한을 검사하여 보안 주체에게 테이블 및 테이블 열에 대한 액세스 권한이 부여되었는지 확인합니다.
-
보안 주체에게 액세스 권한이 있는 경우 Athena는 Lake Formation으로부터 자격 증명을 요청합니다. 보안 주체에게 액세스 권한이 없는 경우 Athena에서 액세스 거부 오류가 발생합니다.
-
Lake Formation은 Amazon S3에서 데이터를 읽을 때 사용할 자격 증명을, 허용된 열 목록과 함께 Athena에게 발급합니다.
-
Athena는 Lake Formation 임시 자격 증명을 사용하여 Amazon S3에서 데이터를 쿼리합니다. 쿼리가 완료되면 Athena가 자격 증명을 삭제합니다.