다음을 통해 공유


Databricks 작업에 대한 ID, 사용 권한 및 권한 관리

이 문서에는 Databricks 작업에 대한 ID, 권한 및 권한을 관리하기 위한 권장 사항 및 지침이 포함되어 있습니다.

참고 항목

비밀은 클러스터의 Spark 드라이버 로그 stdoutstderr 스트림에서 수정되지 않습니다. 중요한 데이터를 보호하기 위해 기본적으로 Spark 드라이버 로그는 작업, 단일 사용자 액세스 모드 및 공유 액세스 모드 컴퓨팅에 대한 CAN MANAGE 권한이 있는 사용자만 볼 수 있습니다. CAN ATTACH TO 또는 CAN RESTART 권한이 있는 사용자가 이러한 클러스터의 로그를 볼 수 있도록 하려면 컴퓨팅 구성 spark.databricks.acl.needAdminPermissionToViewLogs false에서 다음 Spark 구성 속성을 설정합니다.

격리 없음 공유 액세스 모드 클러스터에서 CAN ATTACH TO 또는 CAN MANAGE 권한이 있는 사용자가 Spark 드라이버 로그를 볼 수 있습니다. CAN MANAGE 권한이 있는 사용자만 로그를 읽을 수 있도록 제한하려면 구성 spark.databricks.acl.needAdminPermissionToViewLogs을(를) true(으)로 설정하세요.

클러스터 구성에 Spark 속성을 추가하는 방법을 알아보려면 Spark 구성을 참조하세요.

작업에 대한 기본 권한

작업에는 기본적으로 다음과 같은 권한이 설정됩니다.

  • 작업 작성자에는 IS OWNER 권한이 부여됩니다.
  • 작업 영역 관리자에게는 CAN MANAGE 권한이 부여됩니다.
  • 작업의 작성자가 다음 권한으로 실행에 설정됩니다.

작업에 대한 관리자 권한

기본적으로 작업 영역 관리자는 작업 소유자 또는 다음 권한으로 실행 구성을 작업 영역의 모든 사용자 또는 서비스 주체로 변경할 수 있습니다. 계정 관리자는 이 동작을 변경하도록 RestrictWorkspaceAdmins 설정을 구성할 수 있습니다. 작업 영역 관리자 제한을 참조하세요.

작업은 Unity 카탈로그 권한과 어떻게 상호 작용합니까?

실행 형식 설정에서 사용자의 ID로 작업이 실행됩니다. 이 ID는 다음에 대한 권한 부여에 대해 평가됩니다.

  • 테이블, 볼륨, 모델 및 뷰를 포함한 Unity 카탈로그 관리 자산
  • 레거시 Hive 메타스토어에 등록된 자산에 대한 ACL(레거시 테이블 액세스 제어 목록)입니다.
  • 컴퓨팅, Notebook, 쿼리 및 기타 작업 영역 자산에 대한 ACL입니다.
  • Databricks 비밀입니다. 비밀 관리를 참조하세요.

참고 항목

Unity 카탈로그 권한 부여 및 레거시 테이블 ACL에는 호환되는 컴퓨팅 액세스 모드가 필요합니다. 작업용 컴퓨팅 구성을 참조하세요.

SQL 작업 및 권한

파일 작업은 다음으로 실행 ID를 완전히 준수하는 유일한 SQL 작업 유형입니다.

SQL 쿼리, 경고 및 레거시 대시보드 작업은 구성된 공유 설정을 준수합니다.

  • 소유자 권한으로 실행: 예약된 SQL 작업의 실행은 항상 구성된 SQL 자산의 소유자 ID를 사용합니다.
  • 뷰어로 실행: 예약된 SQL 작업의 실행은 항상 작업의 다음 권한으로 실행 필드에서 ID 집합을 사용합니다.

쿼리 공유 설정에 대한 자세한 내용은 쿼리 권한 구성을 참조하세요.

예시

다음 시나리오에서는 SQL 공유 설정과 작업의 다음 권한으로 실행 설정의 상호 작용을 보여 줍니다.

  • 사용자 A는 이름이 my_query인 SQL 쿼리의 소유자입니다.
  • 사용자 A는 공유 설정 소유자 권한으로 실행으로 my_query를 구성합니다.
  • 사용자 B는 이름이 my_query인 작업의 태스크로 my_job를 예약합니다.
  • 사용자 B는 이름이 my_job인 서비스 주체를 사용하여 실행하도록 prod_sp를 구성합니다.
  • my_job이 실행되면 사용자 A의 ID를 사용하여 my_query를 실행합니다.

이제 사용자 B가 이 동작을 원하지 않는다고 가정합니다. 기존 구성부터 다음이 발생합니다.

  • 사용자 A는 my_query에 대한 공유 설정을 뷰어로 실행으로 변경합니다.
  • my_job은 실행 시 prod_sp라는 ID를 사용합니다.

작업 실행에 대한 ID 구성

실행 형식 설정을 변경하려면 작업에 대해 CAN MANAGE 또는 IS OWNER 권한이 있어야 합니다.

실행 형식 설정을 자신 또는 서비스 주체 사용자 자격이 있는 작업 영역의 서비스 주체로 설정할 수 있습니다.

작업 영역 UI에서 작업에 대한 다음 권한으로 실행 설정을 구성하려면 다음 단계를 사용하여 기존 작업을 선택합니다.

  1. 사이드바에서 워크플로 아이콘 워크플로를 클릭합니다.
  2. 이름 열에서 작업 이름을 클릭합니다.
  3. 작업 세부 정보 가로 패널에서 실행 형식 필드 옆에 있는 연필 아이콘을 클릭합니다.
  4. 사용자 또는 서비스 주체를 검색하여 선택합니다.
  5. 저장을 클릭합니다.

서비스 주체 작업에 대한 자세한 내용은 다음을 참조하세요.

작업 거버넌스 모범 사례

Databricks는 모든 프로덕션 작업에 다음을 권장합니다.

  • 서비스 주체에 작업 소유권 할당

    작업을 소유한 사용자가 조직을 떠나는 경우 작업이 실패할 수 있습니다. 서비스 주체를 사용하여 직원 이탈에 대한 작업을 강력하게 만듭니다.

    기본적으로 작업 영역 관리자는 작업 권한을 관리하고 필요한 경우 소유권을 다시 할당할 수 있습니다.

  • 서비스 주체를 사용하여 프로덕션 작업 실행

    작업은 기본적으로 작업 소유자의 권한을 사용하여 실행됩니다. 서비스 주체에 소유권을 할당하는 경우 작업 실행은 서비스 주체의 권한을 사용합니다.

    프로덕션 작업에 서비스 주체를 사용하면 프로덕션 데이터에 대한 쓰기 권한을 제한할 수 있습니다. 사용자의 권한을 사용하여 작업을 실행하는 경우 해당 사용자에게 작업에 필요한 프로덕션 데이터를 편집하는 데 동일한 권한이 필요합니다.

  • 항상 Unity 카탈로그 호환 컴퓨팅 구성 사용

    Unity 카탈로그 데이터 거버넌스를 사용하려면 지원되는 컴퓨팅 구성을 사용해야 합니다.

    작업 및 SQL 웨어하우스에 대한 서버리스 컴퓨팅은 항상 Unity 카탈로그를 사용합니다.

    클래식 컴퓨팅을 사용하는 작업의 경우 Databricks는 지원되는 워크로드에 공유 액세스 모드를 권장합니다. 필요한 경우 단일 사용자 액세스 모드를 사용합니다.

    Unity 카탈로그를 사용하여 구성된 Delta Live Tables 파이프라인에는 몇 가지 제약 조건이 있습니다. 제한 사항 보기.

  • 프로덕션 작업에 대한 권한 제한

    작업 실행을 트리거, 중지 또는 다시 시작하는 사용자에게는 실행 관리 가능 권한이 필요합니다.

    작업 구성 또는 모니터 실행을 보는 사용자에게는 보기 가능 권한이 필요합니다.

    프로덕션 코드를 수정하도록 신뢰할 수 있는 사용자에게만 관리 가능 또는 소유자 권한을 부여합니다.

작업에 대한 액세스 제어

작업 액세스 제어를 사용하면 작업 소유자와 관리자가 해당 작업에 대한 세분화된 권한을 부여할 수 있습니다. 다음 권한을 사용할 수 있습니다.

참고 항목

각 권한에는 다음 표의 아래 사용 권한 부여가 포함됩니다.

Permission 허용
소유자 다음 권한으로 실행에 기본적으로 사용되는 ID입니다.
관리 가능 사용자는 권한을 포함하여 작업 정의를 편집할 수 있습니다. 사용자는 일정을 일시 중지하고 다시 시작할 수 있습니다.
실행 관리 가능 사용자는 작업 실행을 트리거하고 취소할 수 있습니다.
보기 가능 사용자는 작업 실행 결과를 볼 수 있습니다.

작업 권한 수준에 대한 자세한 내용은 작업 ACL을 참조하세요.

작업 권한 구성

작업 영역 UI에서 작업에 대한 권한을 구성하려면 다음 단계를 사용하여 기존 작업을 선택합니다.

  1. 사이드바에서 워크플로 아이콘 워크플로를 클릭합니다.
  2. 이름 열에서 작업 이름을 클릭합니다.
  3. 작업 세부 정보 패널에서 권한 편집을 클릭합니다. 권한 설정 대화 상자가 나타납니다.
  4. 사용자, 그룹 또는 서비스 주체 선택 필드를 클릭하고 사용자, 그룹 또는 서비스 주체 입력을 시작합니다. 이 필드는 작업 영역에서 사용 가능한 모든 ID를 검색합니다.
  5. 추가를 클릭합니다.
  6. 저장을 클릭합니다.

작업 소유자 관리

작업 영역 관리자만 작업 소유자를 편집할 수 있습니다. 정확히 하나의 작업 소유자를 할당해야 합니다. 작업 소유자는 사용자 또는 서비스 주체일 수 있습니다.