Databricks SQL의 보안 모델 및 데이터 액세스 개요

Databricks SQL security model and data access overview | Databricks on AWS[2021/9/14시]의 번역.
이 책은 발췌 번역으로 내용의 정확성을 보장하지 않는다.정확한 내용에 관해서는 원문을 참조하시오.
Databricks SQL의 안전 모델은 SQL 데이터베이스에 구축된 안전 모델을 바탕으로 GRANT,REVOKE 등 표준 SQL 문장에 상세한 접근권을 설정할 수 있다.다음 그림에서는 데이터를 안전하게 보호하는 방법에 대해 설명합니다.

노란색 사용자 그룹은 Table1 및 View1 질의를 허용합니다.이 표의 파일과 디렉터리는 서로 다른 데이터 집합으로 구성되어 있다.이 예에서 Table1의 데이터는 Dataset1과 Dataset2가 관리하고 View1의 데이터는 Dataseta에 존재한다.
단일 작업공간에서만 데이터를 액세스할 수 있는 간단한 스키마에서 파일 또는 디렉토리를 블록 파일 시스템(DBFS)에 직접 저장할 수 있습니다.이러한 파일, 디렉토리를 관리라고 합니다.관리 데이터에 대한 액세스를 관리할 때 추가 인증 정보를 설정할 필요가 없습니다.
그러나 보통 파일과 디렉터리는 클라우드 저장소에 저장된다.이 파일, 디렉터리를 마운트 해제라고 부른다.클라우드 저장소의 마운트 해제 데이터에 접근하기 위해 Databricks는 클라우드 저장소의 인증 정보를 사용하여 클라우드 저장소 제공자의 인증을 받아야 한다.다음 그림에서 Dataset1과 Dataset2는 Credential1을 사용하고 Dataseta는 Credential2를 사용하며 Databricks는 클라우드 제공자의 인증을 받는다.Databricks 관리자는 클라우드에 저장된 데이터에 접근하기 위해 Databricks에 적당한 인증 정보를 사용하도록 설정합니다.자세한 내용은 이 책의 뒷부분클라우드 스토리지에 대한 액세스 개요을 참조하시오.표, 보기 사용자는 일반적으로 인증 정보를 직접 보고 사용하지 않습니다.
사용자와 그룹은 일반적으로 SCIM 등을 사용하고 신분 공급자가 관리하며 Databricks와 동기화한다.

다음 부분에서는 데이터의 표 접근 제어, 클라우드 저장소의 접근 설정, 사용자와 그룹의 관리를 이용하여 데이터 접근을 관리하는 방법의 개요를 설명한다.
테이블 액세스 제어 요약
Databricks의 테이블 액세스 제어를 사용하여 다음 객체를 안전하게 보호할 수 있습니다.이것들은 안전 보호 대상이라고 불린다.
  • CATALOG: 전체 데이터 디렉토리에 대한 액세스를 제어합니다.
  • DATABASE: 데이터베이스에 대한 접근을 제어한다.
  • TABLE: 관리 및 외부 테이블 액세스를 제어합니다.
  • VIEW: SQL 뷰에 대한 액세스를 제어합니다.
  • ANY FILE: 백엔드 파일 시스템에 대한 액세스를 제어합니다.ANY FILE에 액세스할 수 있는 사용자는 디렉토리, 데이터베이스, 테이블, 뷰에 설정된 구속조건을 무시하고 파일 시스템을 직접 읽을 수 있습니다.
  • Databricks 관리자 및 객체 소유자만 보안 객체에 액세스할 수 있습니다.Databricks SQL 또는 Data Science 및 Engineering테이블 액세스 컨트롤 사용의 클러스터를 사용하여 사용자가 작성한 객체의 소유자로 만듭니다.소유자는 모든 권한을 얻고 다른 사용자에게 권한을 부여할 수 있다.객체에 소유자가 없으면 관리자는 객체의 소유자를 설정할 수 있습니다.다음 표에는 역할 및 액세스 권한을 추가할 수 있는 객체가 나열되어 있습니다.
    롤러
    허용된 객체
    Databricks 관리자
    디렉토리 및 파일 시스템에 존재하는 모든 객체
    디렉토리 소유자
    디렉토리의 모든 객체
    데이터베이스 소유자
    데이터베이스의 모든 객체
    테이블 소유자
    테이블만
    자세한 내용은 데이터 객체 액세스 관리를 참조하십시오.
    클라우드 스토리지에 대한 액세스 개요
    주의
    Databricks관리 테이블를 사용할 경우 클라우드 스토리지에 대한 액세스 설정이 필요하지 않습니다.
    클라우드 저장 데이터를 조회하려면 Databricks 관리자는 IAM 스크롤과 실례 설정 파일을 사용하여 Databricks SQL에서 클라우드 저장에 대한 접근을 설정합니다.다음 그림에서는 Cloud Storage1과 Cloud Storage2에 액세스하기 위해 인스턴스 구성 파일에 매핑된 IAM 역할을 사용합니다.

    다음 3단계에서 클라우드 저장소에 대한 접근을 설정합니다.
  • 인스턴스 프로파일을 생성하거나 기존 인스턴스 프로파일을 재사용합니다.
  • 인스턴스 구성 파일이 AWS에 액세스하는 S3 세그먼트를 설정합니다.
  • 클라우드 스토리지에 액세스할 수 있는 인스턴스 프로파일를 Databricks SQL 엔드포인트로 설정합니다.
  • 사용자, 그룹 프로필
    Databricks 관리자는 Data Science 및 Engineering 작업공간사용자 및 그룹 관리에서 수행합니다.Databricks SQL에서는 데이터 액세스 관리가 쉬우므로 사용자가 아닌 그룹을 사용하는 것이 좋습니다.그룹 설정에는 두 가지 옵션이 있습니다.
  • SCIM API데이터 bricks 및 ID 공급자(IdP) 동기화를 사용합니다.IdP는 유일하게 신뢰할 수 있는 정보원이지만 Databricks를 활용해 신분을 활용할 수 있기 때문에 추천한다.이 그림에서는 Azure Active Directory의 사용자 및 그룹이 Databricks SQL과 동기화되며, 데이터베이스 객체의 보안을 위해 GRANT 문을 사용합니다.
  • SQL, UI, APIDatabricks에 그룹 생성를 사용합니다.
  • Howto
    Databricks SQL 관리자는 설정된 데이터 과학 및 Engineering 작업공간을 사용하여 데이터 객체에 액세스할 수 있습니다.다음 문서에서는 클라우드 스토리지 액세스를 설정하고 데이터 과학 및 Engineering 보안 모델을 Databricks SQL에 매핑하는 방법에 대해 설명합니다.
  • Configure access to cloud storage
  • Map Data Science & Engineering security models to Databricks SQL
  • 무료 시험
    무료 시험

    좋은 웹페이지 즐겨찾기