Privilégios e objetos protegíveis no Catálogo Unity
Aplica-se a: SQL do Databricks Databricks Runtime Somente Catálogo Unity
Um privilégio é um direito concedido a uma entidade de segurança para operar em um objeto protegível no metastore. O modelo de privilégio e os objetos protegíveis diferem dependendo se você está usando um metastore do Catálogo Unity ou o metastore do Hive herdado. Este artigo descreve o modelo de privilégio do Unity Catalog. Se você estiver usando o metastore do Hive, consulte Privilégios e objetos protegíveis no metastore do Hive.
Para obter informações detalhadas sobre como gerenciar privilégios no Catálogo do Unity, consulte Gerenciar privilégios no Catálogo do Unity.
Observação
Este artigo refere-se aos privilégios do Catálogo do Unity e ao modelo de herança no Modelo de Privilégios versão 1.0. Se você criou seu metastore do Catálogo do Unity durante a versão prévia pública (antes de 25 de agosto de 2022), talvez você esteja em um modelo de privilégio anterior que não dá suporte ao modelo de herança atual. Você pode atualizar para o Modelo de Privilégio versão 1.0 para obter herança de privilégio. Confira Atualizar para herança de privilégios.
Objetos protegíveis
Um objeto protegível é um objeto definido no metastore do Unity Catalog, no qual os privilégios podem ser concedidos a uma entidade de segurança. Para obter uma lista completa de objetos protegíveis do Catálogo do Unity e os privilégios que podem ser concedidos a eles, consulte Privilégios e objetos protegíveis do Catálogo do Unity.
Para gerenciar privilégios em qualquer objeto, você deve ser o proprietário.
Sintaxe
securable_object
{ CATALOG [ catalog_name ] |
CONNECTION connection_name |
CLEAN ROOM clean_room_name |
EXTERNAL LOCATION location_name |
FUNCTION function_name |
METASTORE |
SCHEMA schema_name |
SHARE share_name |
[ STORAGE | SERVICE ] CREDENTIAL credential_name |
[ TABLE ] table_name |
MATERIALIZED VIEW view_name |
VIEW view_name |
VOLUME volume_name
}
Você também pode especificar SERVER
em vez de CONNECTION
e DATABASE
em vez de SCHEMA
.
Parâmetros
CATALOG
Catalog_NAMEControla o acesso ao catálogo de dados inteiro.
CLEAN ROOM
clean_room_nameControla o acesso a uma sala limpa.
CONNECTION
connection_nameControla o acesso à conexão.
EXTERNAL LOCATION
location_nameControla o acesso a um local externo.
FUNCTION
function_nameControla o acesso a uma função definida pelo usuário ou a um modelo registrado do MLflow.
MATERIALIZED VIEW
view_nameControla o acesso a uma exibição materializada.
METASTORE
Controla o acesso ao metastore do Unity Catalog anexado ao workspace. Ao gerenciar privilégios em um metastore, você não inclui o nome do metastore em um comando SQL. O Unity Catalog concede ou revoga o privilégio no metastore anexado ao workspace.
SCHEMA
schema_nameControla o acesso a um esquema.
[ STORAGE | SERVICE ] CREDENTIAL
credential_nameControla o acesso a uma credencial.
As palavras-chave
STORAGE
eSERVICE
( Databricks Runtime 15.4 e posterior) são opcionais.SHARE
share_nameControla o acesso em um compartilhamento a um destinatário.
TABLE
table_nameControla o acesso a uma tabela gerenciada ou externa. Se a tabela não puder ser encontrada, o Azure Databricks gerará um erro TABLE_OR_VIEW_NOT_FOUND.
VIEW
view_nameControla o acesso a uma exibição. Se a exibição não puder ser encontrada, o Azure Databricks gerará um erro TABLE_OR_VIEW_NOT_FOUND.
VOLUME
volume_nameControla o acesso a um volume. Se o volume não puder ser encontrado, o Azure Databricks gerará um erro.
Tipos de privilégio
Para obter uma lista de tipos de privilégios, consulte Privilégios do Catálogo do Unity e objetos protegíveis.
Exemplos
-- Grant a privilege to the user alf@melmak.et
> GRANT SELECT ON TABLE t TO `alf@melmak.et`;
-- Revoke a privilege from the general public group.
> REVOKE USE SCHEMA ON SCHEMA some_schema FROM `alf@melmak.et`;