Partilhar via


Gerenciar a propriedade do objeto Unity Catalog

Cada objeto protegível no Unity Catalog tem um proprietário. O proprietário pode ser qualquer entidade de segurança: um usuário, entidade de serviço ou grupo de contas. A entidade que cria um objeto torna-se seu proprietário inicial. O proprietário de um objeto tem todos os privilégios no objeto, como SELECT e MODIFY em uma tabela, além da permissão para conceder privilégios a outras entidades de segurança. O proprietário de um objeto tem a capacidade de soltá-lo.

Privilégios de proprietário

Os proprietários de um objeto recebem automaticamente todos os privilégios nesse objeto. Além disso, os proprietários de objetos podem conceder privilégios no próprio objeto e em todos os seus objetos filho. Isso significa que os proprietários de um esquema não têm automaticamente todos os privilégios nas tabelas no esquema, mas eles podem conceder a si mesmos privilégios nas tabelas no esquema.

Nota

Há uma exceção à regra de que os proprietários têm todos os privilégios em um objeto: para evitar a exfiltração acidental de dados, os proprietários do esquema não têm o EXTERNAL USE SCHEMA privilégio por padrão. Consulte Controlar o acesso externo aos dados no Catálogo Unity.

Propriedade de metastore e catálogo

Os administradores da Metastore são os proprietários da metastore. A função de administrador do metastore é opcional. Os administradores do metastore podem reatribuir a propriedade do metastore transferindo a função de administrador do metastore, consulte Atribuir um administrador do metastore.

Se seu espaço de trabalho foi habilitado para o Unity Catalog automaticamente, o espaço de trabalho é anexado a um metastore por padrão e um catálogo de espaço de trabalho é criado para seu espaço de trabalho no metastore. Os administradores do espaço de trabalho são os proprietários padrão e podem reatribuir a propriedade do catálogo do espaço de trabalho. Nesses espaços de trabalho, não há administrador de metastore atribuído por padrão, mas os administradores de conta podem conceder a função de administrador de metastore, se necessário. Consulte Administradores da Metastore.

Para obter mais informações sobre privilégios de administrador no Catálogo Unity, consulte Privilégios de administrador no Catálogo Unity.

Exibir o proprietário de um objeto

Você pode usar o Catalog Explorer ou instruções SQL para exibir o proprietário de um objeto.

Permissões necessárias: Qualquer usuário com o BROWSE privilégio no objeto ou um pai do objeto pode exibir o proprietário do objeto.

Explorador de Catálogos

  1. No seu espaço de trabalho do Azure Databricks, clique em Ícone do catálogo Catálogo.

  2. Selecione o objeto, como um catálogo, esquema, tabela, exibição, volume, local externo ou credencial de armazenamento.

    Como navegar para o objeto depende do objeto. Catálogos, esquemas e o conteúdo de esquemas (como tabelas e volumes) podem ser selecionados no painel esquerdo Catálogo . Você pode encontrar outros objetos, como locais externos ou compartilhamentos de Compartilhamento Delta, clicando no Ícone de engrenagem ícone de engrenagem acima do painel Catálogo e selecionando a categoria de objeto no menu.

    Para a maioria dos objetos, o proprietário é exibido na guia Visão geral na página de detalhes do objeto. Para alguns objetos, como locais externos, ele é exibido na parte superior da página de detalhes do objeto.

SQL

Execute o seguinte comando SQL em um bloco de anotações ou editor de consultas SQL. Substitua os valores de espaço reservado:

  • <securable-type>: O tipo de valores mobiliários, como CATALOG ou TABLE.
  • <catalog>: O catálogo pai se você estiver exibindo um esquema ou o conteúdo de um esquema.
  • <schema>: O esquema pai se você estiver exibindo o conteúdo de um esquema, como uma tabela ou exibição.
  • <securable-name>: O nome do objeto protegível.
DESCRIBE <securable-type> EXTENDED <catalog>.<schema>.<securable-name>;

Transferir propriedade

Você pode usar o Catalog Explorer ou instruções SQL para exibir o proprietário de um objeto.

Permissões necessárias: você pode transferir a propriedade do objeto se for o proprietário atual, um administrador de metastore ou o proprietário do contêiner (o catálogo de um esquema, o esquema de uma tabela). Os objetos de compartilhamento Delta Sharing são uma exceção: entidades com privilégios e SET SHARE PERMISSION também podem transferir a USE SHARE propriedade do compartilhamento.

Nota

Para evitar escalonamentos de privilégios, apenas um administrador da metstore pode transferir a propriedade de uma exibição, função ou modelo para qualquer usuário, entidade de serviço ou grupo na conta. Os proprietários atuais estão restritos a transferir a propriedade para seu nome de usuário ou para um grupo do qual são membros.

Explorador de Catálogos

  1. No seu espaço de trabalho do Azure Databricks, clique em Ícone do catálogo Catálogo.

  2. Selecione o objeto, como um catálogo, esquema, tabela, exibição, local externo ou credencial de armazenamento.

    Como navegar para o objeto depende do objeto. Catálogos, esquemas e o conteúdo de esquemas (como tabelas e volumes) podem ser selecionados no painel esquerdo Catálogo . Você pode encontrar outros objetos, como locais externos ou compartilhamentos de Compartilhamento Delta, clicando no Ícone de engrenagem ícone de engrenagem acima do painel Catálogo e selecionando a categoria de objeto no menu.

    Para a maioria dos objetos, o proprietário é exibido na guia Visão geral na página de detalhes do objeto. Para alguns objetos, como locais externos, ele é exibido na parte superior da página de detalhes do objeto.

  3. Clique no Ícone Editar ícone de edição ao lado do Proprietário.

  4. Pesquise e selecione um grupo, usuário ou entidade de serviço.

  5. Clique em Guardar.

SQL

Execute o seguinte comando SQL em um bloco de anotações ou editor de consultas SQL. Substitua os valores de espaço reservado:

  • <securable-type>: O tipo de objeto protegível, como CATALOG ou TABLE. METASTORE não é suportado como um objeto protegível neste comando.
  • <securable-name>: O nome do securable. Se você estiver modificando um esquema ou o conteúdo de um esquema, deverá usar o namespace completo de três níveis (catalog.schema.object), a menos que já tenha especificado o catálogo pai e/ou o esquema.
  • <principal> é um utilizador, principal de serviço (representado pelo respetivo valor applicationId) ou grupo. Você deve incluir usuários, entidades de serviço e nomes de grupo que incluam caracteres especiais em backticks (` `). Ver Principal.
ALTER <securable-type> <securable-name> OWNER TO <principal>;

Por exemplo, para transferir a orders propriedade da tabela para o accounting grupo:

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