1. 程式人生 > >Databricks 第7篇:管理Secret

Databricks 第7篇:管理Secret

有時,訪問資料要求您通過JDBC對外部資料來源進行身份驗證,可以使用Azure Databricks Secret來儲存憑據,並在notebook和job中引用它們,而不是直接在notebook中輸入憑據。

要配置一個Secret,需要分三步:

  • 建立secret scope,scope name是大小寫敏感的。
  • 把secret新增到secret scope中,secret name是大小寫敏感的。
  • 把許可權授予secret scope。

一,Secret Scope簡介

Secret Scope是Secret的集合,每一個Secret是由name唯一確定的。每一個Databricks 的workspace最多建立100個Secret Scope。Azure 支援兩種型別的Secret Scope:Azure Key Vault-backed 和 Databricks-backed。

1,基於Azure Key Vault的Secret Scope

要引用儲存在Azure Key Vault中的Secret,可以建立基於Azure Key Vault的Secret Scope,基於Azure Key Vault的Secret Scope對於Key Vault來說是隻讀的。 本文重點介紹基於Azure Key Vault的Secret Scope。

2,基於Databricks的Secret Scope

基於Databricks的Secret Scope儲存在由Azure Databricks擁有和管理的加密資料庫中,Secret Scope的name在工作空間中必須唯一,必須包含字母數字字元,破折號,下劃線和句點,並且不得超過128個字元。名稱被認為是不敏感的,並且工作空間中的所有使用者都可以讀取。 

二,建立基於Azure Key Vault的Secret Scope

使用 Azure Portal UI建立Azure Key Vault-backed 的 secret scope。首先,在建立該型別的Secret Scope之前,確保對Azure Key Vault例項具有Contributor許可權。

開啟網頁“https://<databricks-instance>#secrets/createScope”,這個URL是大小寫敏感的,注意URL中的“createScope”,其中的“Scope”首字母必須是大寫的。

主要的配置選項:

  • Scope Name:指定Secret Scope的name,該名稱是大小寫敏感的。
  • Manage Principal:用於定義該Secret Scope的Manage Principal(擁有管理許可權的安全主體),選項All Users表示所有的使用者都有MANAGE許可權,選項Creator表示只有Secret Scope的建立者擁有MANAGE許可權。MANAGE許可權擁有對Secret Scope的讀寫許可權,推薦選項是Creator,把MANAGE許可權只授權給Creator。但是,使用者的賬戶必須具有Azure Databricks Premium Plan ,才可以選擇Creator。
  • DNS Name:是Vault URI,從Key Vault的Properties面板中可以檢視到。
  • Resource ID:從Azure Key Valut的屬性面板中可以檢視到Resource ID。

三,個人訪問Token

如果要訪問Databricks REST API,可以使用Databricks personal access tokens來進行許可權驗證。

點選Databricks 工作區右上角的user profile icon

點選“User Settings”,進入到“User Settings”頁面,在該頁面中點選“Generage New Token”生成新的Token。

注意:要把Token儲存起來,再次進入該頁面,Token不再可見。

四:配置Databricks CLI

使用Databricks CLI  (command-line interface)命令來驗證Secret Scope是否建立成功。

Step1:安裝Databricks CLI

pip install databricks-cli

檢視Databricks CLI是否安裝成功,可以執行Databricks CLI -h獲得help文件:

databricks -h

Step2:配置驗證資訊

輸入Databricks Host,並輸入生成的個人訪問Token

databricks configure --token

Step3:檢視Secret Scope列表

databricks secrets list-scopes

 

 

參考穩定:

Authentication using Azure Databricks personal access tokens

Secret management

Databricks CLI&n