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:

  • Surfaces the secrets the connection can list : Every secret that the connection is allowed to list appears as a Unity Catalog secret in Catalog Explorer, dbutils, and the Unity Catalog REST API. Naming restrictions apply. See Naming restrictions.
  • Lê valores sob demanda : O Databricks não armazena o valor do segredo no Unity Catalog. Cada recuperação lê o valor atual diretamente do gerenciador de segredos externo, o que adiciona latência e pode gerar custos para o provedor de cloud. Os valores recuperados podem ser armazenados em cache no compute que os solicitou, assim como outros segredos.
  • Governs access with Unity Catalog privileges : READ SECRET and REFERENCE SECRET, and privilege inheritance, apply the same way they do for Databricks-managed secrets. Because external secrets are read-only, Unity Catalog rejects CREATE SECRET, WRITE SECRET, and delete operações. See Limitations. All access to the external secret manager goes through the connection's service credential, so cloud-side audit logs attribute access to that identity, while Unity Catalog audit logs still record the Databricks user.

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 : Não é possível criar, atualizar, renomear ou excluir segredos em um esquema com backup externo do Databricks. Gerencie esses segredos no gerenciador de segredos externo.

  • One backend per schema : All secrets in a schema use the same backend. A schema cannot mix Databricks-managed and externally backed secrets.

  • Switching the backend removes imported secrets : Changing a schema's backend or pointing it at a different connection removes the previously imported external secrets from the schema, including their Unity Catalog metadata, permissions, and tags.

  • Cross-cloud access is not supported : Back schemas with the secret manager native to the workspace's cloud.

  • Read latency and cost : Every read fetches the value from the external secret manager, which adds latency and can incur cloud provider costs.

  • Eventually consistent listing : Secrets added to or removed from the external secret manager can take a few minutes to appear in Unity Catalog, especially for large secret stores.

  • Tag filtering is AWS-only : The tag_key and tag_value options apply to AWS Secrets Manager connections.

nota

Data residency. If the external secret manager that backs a schema is in a different region from the metastore or workspace that reads it, secret values and their metadata cross regions. Databricks does not guarantee in-region processing of external secrets.

nota

Personal data in secrets. External secret names and values can contain personal data. You are responsible for keeping personal data out of them unless your use case requires it.

Recursos adicionais