Pular para o conteúdo principal

Segredos externos no Unity Catalog

info

Beta

Esse recurso está em Beta. Os administradores do workspace podem controlar o acesso a esse recurso na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.

Segredos externos conectam um esquema do Unity Catalog a um gerenciador de segredos externo. Em vez de o Databricks armazenar os valores dos segredos, os segredos permanecem no seu gerenciador de segredos na cloud e aparecem no Unity Catalog como objetos protegíveis que você pode governar e referenciar.

Como funcionam os segredos externos

Você configura o backend de segredos por esquema. Por default, o Databricks armazena e gerencia cada segredo em um esquema, a menos que um gerenciador de segredos externo o suporte. Um esquema não pode misturar ambos.

Quando um esquema tem suporte de um gerenciador de segredos externo, o Databricks faz o seguinte:

  • Revela os segredos que a conexão pode listar. Cada segredo que a conexão tem permissão para listar aparece como um segredo do Unity Catalog no Catalog Explorer, dbutils e na API REST do Unity Catalog. Restrições de nomenclatura se aplicam. Consulte Restrições de nomenclatura.
  • Lê valores sob demanda. O Databricks não armazena o valor secreto no Unity Catalog; cada recuperação lê o valor atual diretamente do gerenciador de segredos externo, o que adiciona latência e pode acarretar custos do provedor de cloud. Os valores recuperados podem ser armazenados em cache no compute que os solicitou, assim como outros segredos.
  • Regula o acesso com privilégios do Unity Catalog. READ SECRET e REFERENCE SECRET, e a herança de privilégios, aplicam-se da mesma forma que para segredos gerenciados pelo Databricks. Como os segredos externos são somente leitura, o Unity Catalog rejeita as operações CREATE SECRET, WRITE SECRET e de exclusão. Consulte Limitações. Todo acesso ao gerenciador de segredos externo passa pela credencial de serviço da conexão, portanto, os logs de auditoria do lado da cloud atribuem o acesso a essa identidade, enquanto os logs de auditoria do Unity Catalog ainda registram o usuário do Databricks.

Listar os segredos de um esquema Trigger a importação. Não é uma sincronização contínua em segundo plano. A importação é executada de forma assíncrona, portanto, o Unity Catalog reflete um segredo adicionado ou removido do gerenciador de segredos externo apenas após uma listagem subsequente Trigger uma importação, o que pode levar alguns minutos para armazenamentos com muitos segredos. A leitura de um segredo específico importa ou faz o refresh apenas desse segredo, e cada leitura busca o valor mais recente. Quando você exclui permanentemente um segredo no gerenciador de segredos externo, o Databricks remove o segredo correspondente do Unity Catalog, incluindo seus metadados, permissões e tags.

Restrições de nomenclatura

Os nomes de segredos externos devem estar em conformidade com as convenções de nomenclatura do Unity Catalog para serem importados:

  • O Unity Catalog não importa nomes com mais de 248 caracteres.
  • Os nomes de segredos do Unity Catalog não diferenciam maiúsculas de minúsculas. Se dois segredos externos diferirem apenas por maiúsculas e minúsculas, o Unity Catalog usa apenas o primeiro importado e ignora o restante.
  • O Unity Catalog substitui caracteres que não suporta: . torna-se : e / torna-se |. O Databricks recomenda evitar esses caracteres em nomes de segredos externos.

Gerenciar cotas de segredos

O Unity Catalog limita quantos segredos um esquema e um metastore podem conter. Consulte Limitações. Se um esquema tiver mais segredos do que a cota permite, o Databricks importa primeiro os segredos mais antigos pela data de criação no gerenciador de segredos externo, até o limite da cota, e não importa o restante. Exponha apenas os segredos de que você precisa no Databricks para que o esquema permaneça dentro da cota:

Adicione um filtro de tag à conexão para que o Unity Catalog exiba apenas segredos com tags. Consulte Filtrar segredos importados por tag.

Limitações

Além das limitações que se aplicam a todos os segredos do Unity Catalog, os segredos com suporte externo têm as seguintes limitações:

  • Somente leitura no Unity Catalog. Você não pode criar, atualizar, renomear ou excluir segredos em um esquema com suporte externo do Databricks. Gerencie esses segredos no gerenciador de segredos externo.

  • Um backend por esquema. Todos os segredos em um esquema usam o mesmo backend. Um esquema não pode misturar segredos gerenciados pelo Databricks e segredos com suporte externo.

  • A alteração do backend remove segredos importados. Alterar o backend de um esquema ou apontá-lo para uma conexão diferente remove os segredos externos importados anteriormente do esquema, incluindo seus metadados, permissões e tags do Unity Catalog.

  • O acesso entre clouds não é suportado. Dê suporte aos esquemas com o gerenciador de segredos nativo da cloud do Workspace.

  • Latência de leitura e custo. Cada leitura busca o valor no gerenciador de segredos externo, o que adiciona latência e pode acarretar custos do provedor de cloud.

  • Listagem eventualmente consistente. Segredos adicionados ou removidos do gerenciador de segredos externo podem levar alguns minutos para aparecer no Unity Catalog, especialmente para grandes armazenamentos de segredos.

  • A filtragem de tags é exclusiva da AWS. As opções tag_key e tag_value aplicam-se a conexões do AWS Secrets Manager.

Recursos adicionais