教程:创建和使用 Databricks 机密

在本教程中,你将使用 Databricks 机密来设置用于连接到 Azure Data Lake Storage 帐户的 JDBC 凭据。

步骤 1:创建机密范围

创建名为 jdbc 的机密范围。

databricks secrets create-scope jdbc

若要创建 Azure Key Vault 支持的机密范围,请按照管理机密范围中的说明进行操作。

步骤 2:向机密范围添加机密

添加机密 usernamepassword。 运行以下命令,然后在打开的编辑器中输入机密值。

databricks secrets put-secret jdbc username
databricks secrets put-secret jdbc password

步骤 3:在笔记本中使用机密

使用 dbutils.secrets 实用工具访问笔记本中的机密。

下面的示例读取存储在机密范围 jdbc 中的机密以配置 JDBC 读取操作:

Python

username = dbutils.secrets.get(scope = "jdbc", key = "username")
password = dbutils.secrets.get(scope = "jdbc", key = "password")

df = (spark.read
  .format("jdbc")
  .option("url", "<jdbc-url>")
  .option("dbtable", "<table-name>")
  .option("user", username)
  .option("password", password)
  .load()
)

Scala

val username = dbutils.secrets.get(scope = "jdbc", key = "username")
val password = dbutils.secrets.get(scope = "jdbc", key = "password")

val df = spark.read
  .format("jdbc")
  .option("url", "<jdbc-url>")
  .option("dbtable", "<table-name>")
  .option("user", username)
  .option("password", password)
  .load()

将从笔记本输出编修从范围提取的值。 请参阅机密编修

步骤 4:授予对机密范围的组权限

注意

此步骤需要高级计划

在确认凭据已正确配置后,可以向工作区中的其他用户和组授予对机密范围的权限。

datascience 组授予对机密范围的读取权限:

databricks secrets put-acl jdbc datascience READ

有关机密访问控制的详细信息,请参阅机密 ACL