Partilhar via


Atualizar para herança de privilégios

Se você criou seu metastore do Unity Catalog durante a visualização pública (antes de 25 de agosto de 2022), poderá atualizar para o Privilege Model versão 1.0. para tirar proveito da herança de privilégios. As cargas de trabalho existentes continuarão a funcionar como estão até atualizar o modelo de privilégios. O Databricks recomenda a atualização para o Modelo de Privilégios versão 1.0 para obter os benefícios da herança de privilégios e novos recursos.

Diferenças no modelo de privilégios versão 1.0

O modelo de privilégio v1.0 no Unity Catalog tem as seguintes diferenças em relação ao modelo de privilégio de visualização pública:

  • Herança de privilégios: no Modelo de Privilégios v1.0, os privilégios são herdados em objetos protegíveis filho. Isso significa que conceder um privilégio no catálogo concede automaticamente o privilégio a todos os objetos atuais e futuros dentro do catálogo. Da mesma forma, os privilégios concedidos em um esquema são herdados por todos os objetos atuais e futuros dentro desse esquema. No modelo de visualização, os privilégios não são herdados em objetos protegíveis filho. Para obter mais informações sobre herança de privilégios, consulte Modelo de herança.

  • ALL PRIVILEGES é avaliado de forma diferente: no modelo de privilégio de visualização pública, ALL PRIVILEGES concede ao principal todos os privilégios disponíveis no momento da concessão de privilégio. No Privilege Model v1.0, a ALL PRIVILEGES permissão se expande para todos os privilégios disponíveis no momento em que uma verificação de permissão é feita.

    No Privilege Model v1.0, quando ALL PRIVILEGES é revogado, apenas o ALL PRIVILEGES privilégio em si é revogado. Os usuários mantêm quaisquer outros privilégios que lhes foram concedidos separadamente.

  • CREATE TABLE é atualizado para CREATE EXTERNAL TABLE: A CREATE TABLE permissão não se aplica mais a locais externos ou credenciais de armazenamento, que são necessárias para criar tabelas externas. No Modelo de Privilégios v1.0, você concede o CREATE EXTERNAL TABLE privilégio em locais externos e credenciais de armazenamento para permitir que um usuário crie tabelas externas usando esse local externo ou credencial de armazenamento.

  • CREATEé removida: a CREATE permissão é removida e substituída pelos seguintes privilégios mais específicos: CREATE CATALOG, CREATE EXTERNAL LOCATION, CREATE FUNCTION, , CREATE SCHEMACREATE TABLE, CREATE MANAGED STORAGE.

  • USAGE é removido: a USAGE permissão é removida e substituída pelos seguintes privilégios mais específicos: USE CATALOG e USE SCHEMA.

Atualizar para o Privilege Model Versão 1.0

Aviso

Não é possível desfazer essa ação.

  1. Atualize todas as cargas de trabalho que fazem referência ao Unity Catalog para usar o Databricks Runtime 11.3 LTS ou superior.

    Você deve atualizar todos os clusters para usar o Databricks Runtime 11.3 LTS ou superior e deve reiniciar todos os SQL warehouses em execução. Se você pular esta etapa, as cargas de trabalho em versões mais antigas do Databricks Runtime serão rejeitadas após a conclusão da atualização.

  2. Como administrador da conta, inicie sessão na consola da conta.

  3. Clique em Ícone do catálogo Catálogo.

  4. Clique no nome do metastore.

  5. Em Modelo de privilégio, clique em Atualizar

  6. Clique em Atualizar

Se você não vir a opção de atualização, seu metastore do Unity Catalog já está usando o Privilege Model 1.0.

Atualizar comandos SQL (opcional)

O Databricks continuará a dar suporte a subsídios expressos usando o antigo modelo de privilégio e mapeá-los automaticamente para a concessão equivalente no Privilege Model v1.0. No entanto, os privilégios retornados via SHOW GRANTS ou information_schema os dados continuarão a fazer referência ao Modelo de Privilégios v1.0. O Databricks recomenda que você atualize o código existente que executa concessões para fazer referência ao modelo de privilégios atualizado.

  • Substitua o CREATE TABLE privilégio em locais externos ou credenciais de armazenamento pelo CREATE EXTERNAL TABLE privilégio.
  • Substitua a CREATE permissão pelo privilégio CREATE CATALOGespecífico , CREATE EXTERNAL LOCATION, CREATE FUNCTION, CREATE SCHEMA, ou CREATE TABLE.
  • Substitua a USAGE permissão pelo privilégio USE CATALOG específico ou USE SCHEMA.

Para obter mais informações sobre o modelo de privilégio do Catálogo Unity, consulte Privilégios do Catálogo Unity e objetos protegíveis