Exemplo de fluxo de trabalho de segredo
Neste exemplo de fluxo de trabalho, usamos segredos para configurar as credenciais do JDBC para conexão com um Azure Data Lake Store.
Criar um escopo de segredo
Crie um escopo de segredo chamado jdbc
.
Para criar um escopo de segredo com suporte do Databricks:
databricks secrets create-scope jdbc
Para criar um escopo de segredo com backup do Azure Key Vault, siga as instruções descritas em Criar um escopo de segredo com backup do Azure Key Vault.
Observação
Se a sua conta não tiver o plano Premium, você precisará criar o escopo com a permissão MANAGE concedida a todos os usuários (“usuários”). Por exemplo:
databricks secrets create-scope jdbc --initial-manage-principal users
Criar segredos
O método usado para criar os segredos depende do fato de você estar usando um escopo com suporte do Azure Key Vault ou um escopo com suporte do Databricks.
Criar os segredos em um escopo com suporte do Azure Key Vault
Adicione os segredos username
e password
usando a API REST Set Secret do Azure ou a interface do usuário do portal do Azure:
Criar os segredos em um escopo com suporte do Databricks
Adicione os segredos username
e password
. Execute os comandos a seguir e insira os valores secretos no editor aberto.
databricks secrets put-secret jdbc username
databricks secrets put-secret jdbc password
Usar os segredos em um bloco de anotações
Em um notebook, leia os segredos que estão armazenados no escopo de segredo jdbc
para configurar um conector JDBC:
val driverClass = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
val connectionProperties = new java.util.Properties()
connectionProperties.setProperty("Driver", driverClass)
val jdbcUsername = dbutils.secrets.get(scope = "jdbc", key = "username")
val jdbcPassword = dbutils.secrets.get(scope = "jdbc", key = "password")
connectionProperties.put("user", s"${jdbcUsername}")
connectionProperties.put("password", s"${jdbcPassword}")
Você já pode usar estas ConnectionProperties
com o conector JDBC para se comunicar com sua fonte de dados.
Os valores buscados no escopo nunca são exibidos no notebook (confira Edição de segredos).
Conceder acesso a outro grupo
Observação
Esta etapa exige que a sua conta tenha o plano Premium.
Após verificar se as credenciais foram configuradas corretamente, compartilhe essas credenciais com o grupo datascience
para usá-las na sua análise, concedendo-lhes permissões para a leitura do escopo do segredo e listar os segredos disponíveis.
Conceda ao grupo datascience
a permissão READ para essas credenciais, fazendo a seguinte solicitação:
databricks secrets put-acl jdbc datascience READ
Para obter mais informações sobre o controle de acesso do segredo, confira ACLs de Segredo.