다음을 통해 공유


Unity 카탈로그 개체 소유권 관리

Unity 카탈로그의 각 보안 개체에는 소유자가 있습니다. 소유자는 사용자, 서비스 주체 또는 계정 그룹 등 모든 보안 주체가 될 수 있습니다. 개체를 만드는 보안 주체는 초기 소유자가 됩니다. 개체의 소유자는 개체에 대한 모든 권한을 소유하고 있으며, 예를 들어 테이블 상의 SELECTMODIFY과 같은 권한이 포함됩니다. 또한, 다른 보안 주체에게 권한을 부여할 수 있는 권한도 갖습니다. 개체의 소유자는 개체를 삭제할 수 있습니다.

소유자 권한

개체 소유자에게 해당 개체에 대한 모든 권한이 자동으로 부여됩니다. 또한 개체 소유자는 개체 자체 및 모든 자식 개체에 대한 권한을 부여할 수 있습니다. 즉, 스키마 소유자가 스키마의 테이블에 대한 모든 권한을 자동으로 가지지는 않지만 스키마의 테이블에 대한 권한을 부여할 수 있습니다.

참고 항목

소유자가 개체에 대한 모든 권한을 갖는 규칙에는 한 가지 예외가 있습니다. 실수로 인한 데이터 반출을 방지하기 위해 스키마 소유자는 기본적으로 EXTERNAL USE SCHEMA 권한이 없습니다. Unity 카탈로그에 대한 외부 데이터 액세스 활성화 를 참조하세요.

Metastore 및 카탈로그 소유권

Metastore 관리자는 metastore의 소유자입니다. metastore 관리자 역할은 선택 사항입니다. Metastore 관리자는 metastore 관리자 역할을 전송하여 metastore의 소유권을 다시 할당할 수 있습니다. 메타스토어 관리자 할당을 참조하세요.

Unity 카탈로그를 위해 작업 영역이 자동으로 활성화된 경우, 해당 작업 영역은 기본적으로 메타스토어에 연결되며 메타스토어 내에서 해당 작업 영역을 위한 작업 영역 카탈로그가 생성됩니다. 작업 영역 관리자는 기본 소유자이며 작업 영역 카탈로그의 소유권을 다시 할당할 수 있습니다. 이러한 작업 영역에는 기본적으로 할당된 metastore 관리자가 없지만 계정 관리자는 필요한 경우 metastore 관리자 역할을 부여할 수 있습니다. Metastore 관리자를 참조하세요.

Unity 카탈로그의 관리자 권한에 대한 자세한 내용은 Unity 카탈로그관리자 권한을 참조하세요.

소유권과 MANAGE 권한

MANAGE(공개 미리 보기)는 개체 소유권과 유사한 권한입니다. 사용자에게 개체에 대한 권한을 편집, 삭제 및 관리할 수 있는 권한을 부여합니다. 그러나 개체에 대한 MANAGE 권한이 있는 사용자에게 해당 개체에 대한 모든 권한이 자동으로 부여되지는 않습니다. 다른 권한과 마찬가지로 사용자는 개체의 부모 카탈로그에 대한 USE CATALOG 및 개체의 부모 스키마에 대한 USE SCHEMA이 필요합니다. 예를 들어 테이블에 대한 권한을 부여하려면 사용자는 해당 테이블에 대한 MANAGE 권한과 부모 카탈로그에 대한 USE CATALOG 권한과 부모 스키마에 대한 USE SCHEMA 권한이 있어야 합니다.

개체의 소유자는 그룹을 포함한 단일 보안 주체만 될 수 있는 반면, 여러 보안 주체에게 MANAGE을 부여할 수 있습니다.

우발적인 권한 상승 방지를 위해 ALL PRIVILEGESMANAGE 권한을 포함하지 않습니다.

개체의 소유자 보기

카탈로그 탐색기 또는 SQL 문을 사용하여 개체의 소유자를 볼 수 있습니다.

필요한 권한 : 개체 또는 개체의 부모에 대한 BROWSE 권한이 있는 모든 사용자는 개체 소유자를 볼 수 있습니다.

카탈로그 탐색기

  1. Azure Databricks 작업 영역에서 카탈로그 아이콘을 클릭하여 카탈로그를 확인합니다.

  2. 카탈로그, 스키마, 테이블, 뷰, 볼륨, 외부 위치 또는 스토리지 자격 증명과 같은 개체를 선택합니다.

    개체로 이동하는 방법은 개체에 따라 달라집니다. 카탈로그, 스키마 및 스키마의 내용(예: 테이블 및 볼륨)은 왼쪽 카탈로그 창에서 선택할 수 있습니다. 카탈로그 창 위의 기어 아이콘 기어 아이콘을 클릭하고 메뉴에서 개체 범주를 선택하여 외부 위치 또는 델타 공유 공유와 같은 다른 개체를 찾을 수 있습니다.

    대부분의 개체의 경우 소유자는 개체 세부 정보 페이지의 개요 탭에 표시됩니다. 외부 위치와 같은 일부 개체의 경우 개체 세부 정보 페이지의 맨 위에 표시됩니다.

SQL

Notebook 또는 SQL 쿼리 편집기에서 다음 SQL 명령을 실행합니다. 자리 표시자 값을 바꿉다.

  • <securable-type>: 보안 개체의 형식입니다(예: CATALOG 또는 TABLE).
  • <catalog>: 스키마 또는 스키마의 내용을 보고 있을 때의 부모 카탈로그입니다.
  • <schema>: 테이블 또는 뷰와 같은 스키마의 내용을 보는 경우 부모 스키마입니다.
  • <securable-name>: 보안 개체의 이름입니다.
DESCRIBE <securable-type> EXTENDED <catalog>.<schema>.<securable-name>;

소유권 이전

카탈로그 탐색기 또는 SQL 문을 사용하여 개체의 소유자를 볼 수 있습니다.

권한이 필요한: 현재 소유자, 메타데이터 저장소 관리자, 컨테이너(스키마의 카탈로그, 테이블의 스키마)의 소유자 또는 객체에 대한 MANAGE 권한이 있는 사용자인 경우 객체 소유권을 이전할 수 있습니다. 델타 공유 공유 개체는 예외로, USE SHARESET SHARE PERMISSION 권한을 가진 주체는 공유 소유권을 이전할 수도 있습니다.

참고 항목

권한 상승 방지를 위해 metastore 관리자만 보기, 함수 또는 모델의 소유권을 계정의 모든 사용자, 서비스 주체 또는 그룹으로 이전할 수 있습니다. MANAGE 권한이 있는 현재 소유자 및 사용자는 자신의 사용자 이름 또는 구성원 그룹에 소유권을 이전하도록 제한됩니다.

카탈로그 탐색기

  1. Azure Databricks 작업 영역에서 카탈로그 아이콘을 클릭하여 카탈로그를 확인합니다.

  2. 카탈로그, 스키마, 테이블, 뷰, 외부 위치 또는 스토리지 자격 증명과 같은 개체를 선택합니다.

    개체로 이동하는 방법은 개체에 따라 달라집니다. 카탈로그, 스키마 및 스키마의 내용(예: 테이블 및 볼륨)은 왼쪽 카탈로그 창에서 선택할 수 있습니다. 카탈로그 창 위의 기어 아이콘 기어 아이콘을 클릭하고 메뉴에서 개체 범주를 선택하여 외부 위치 또는 델타 공유 공유와 같은 다른 개체를 찾을 수 있습니다.

    대부분의 개체의 경우 소유자는 개체 세부 정보 페이지의 개요 탭에 표시됩니다. 외부 위치와 같은 일부 개체의 경우 개체 세부 정보 페이지의 맨 위에 표시됩니다.

  3. Edit iconEdit icon소유자 옆에 있는 편집 아이콘을 클릭합니다.

  4. 그룹, 사용자 또는 서비스 주체를 검색하고 선택합니다.

  5. 저장을 클릭합니다.

SQL

Notebook 또는 SQL 쿼리 편집기에서 다음 SQL 명령을 실행합니다. 자리 표시자 값을 바꿉다.

  • <securable-type>: CATALOG 또는 TABLE과 같은 보안 개체의 형식입니다. METASTORE는 이 명령에서 보안 개체로 지원되지 않습니다.
  • <securable-name>: 보안 개체의 이름입니다. 스키마 또는 스키마의 내용을 수정하는 경우 부모 카탈로그 및/또는 스키마를 이미 지정하지 않은 한 전체 3개 수준 네임스페이스(catalog.schema.object)를 사용해야 합니다.
  • <principal>은 사용자, 서비스 주체(applicationId 값으로 표시됨) 또는 그룹입니다. 특수 문자가 포함된 사용자, 서비스 주체 및 그룹 이름은 백틱(` `)으로 묶어야 합니다. 보안 주체를 참조하세요.
ALTER <securable-type> <securable-name> OWNER TO <principal>;

예를 들어 orders 테이블의 소유권을 accounting 그룹으로 이전하려면 다음을 수행합니다.

ALTER TABLE mycatalog.myschema.orders OWNER TO `accounting`;