共用方式為


秘密工作流程範例

在此工作流程範例中,我們會使用秘密來設定 JDBC 認證,以聯機到 Azure Data Lake Store。

建立秘密範圍

建立名為 jdbc的秘密範圍。

若要建立 Databricks 支援的秘密範圍:

databricks secrets create-scope jdbc

若要建立 Azure 金鑰保存庫 支援的秘密範圍,請遵循建立 Azure 金鑰保存庫 支援的秘密範圍中的指示。

注意

如果您的帳戶沒有 進階版 方案,您必須使用授與所有使用者的 MANAGE 許可權來建立範圍(「使用者」)。 例如:

databricks secrets create-scope jdbc --initial-manage-principal users

建立祕密

建立秘密的方法取決於您使用的是 Azure 金鑰保存庫 支援的範圍或 Databricks 支援的範圍。

在 Azure 金鑰保存庫 支援的範圍內建立秘密

新增秘密username並使用 password Azure Set Secret REST API 或 Azure 入口網站 UI:

將秘密新增至 Azure 金鑰保存庫

在 Databricks 支援的範圍內建立秘密

新增秘密 usernamepassword。 執行下列命令,並在開啟的編輯器中輸入秘密值。

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

在筆記本中使用秘密

在筆記本中,讀取儲存在秘密範圍 jdbc 中的秘密,以設定 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}")

您現在可以搭配 JDBC 連接器使用這些 ConnectionProperties 連接器來與您的數據源交談。 從範圍擷取的值永遠不會顯示在筆記本中(請參閱 秘密修訂)。

授與另一個群組的存取權

注意

此步驟需要您的帳戶具有 進階版 方案

確認認證已正確設定之後,請將這些認證 datascience 授與群組以用於分析,方法是授與他們讀取秘密範圍的許可權,並列出可用的秘密。

datascience發出下列要求,將 READ 許可權授與群組給這些認證:

databricks secrets put-acl jdbc datascience READ

如需秘密訪問控制的詳細資訊,請參閱 秘密 ACL