身份驗證數據磚自動化

在磚,身份驗證指的是驗證一個磚身份(如用戶、服務主體或組)。磚使用憑證(如一個訪問令牌或用戶名和密碼)來驗證身份。

磚後驗證調用者的身份,然後磚使用這一過程被稱為授權驗證身份是否有足夠的訪問權限來執行指定的動作在給定的資源的位置。本文包含的細節隻有身份驗證。它不包括授權或訪問權限的詳細信息;看到訪問控製

使一個自動化工具或API請求時,它包括憑證,驗證身份磚。本文描述了典型的方法來創建、存儲和傳遞憑證和相關信息,磚需要進行身份驗證和授權請求。學習憑證類型、相關信息和存儲機製使用的工具,支持sdk,腳本,和應用程序,看看你的提供者的文檔。

磚賬戶和工作區REST api

磚組織其磚REST APIapi的分為兩類:賬戶的api工作區api。這些類別中的每一個都需要不同的信息對目標數據磚標識進行身份驗證。另外,每個支持磚驗證類型需要附加信息,惟一地標識目標磚的身份。

例如,驗證數據磚身份打電話給磚戶頭級別API的操作,您必須提供:

  • 目標數據磚賬戶登錄URL,這是典型的https://accounts.gcp.m.eheci.com

  • 目標磚帳戶ID的。定位您的帳戶ID

  • 信息的惟一地標識目標目標磚的磚的身份驗證類型。提供具體的信息,請參閱本文後麵部分的驗證類型。

驗證一個磚身份打電話給磚工作空間層API的操作,您必須提供:

  • 目標數據磚工作空間的URL例如,https://1234567890123456.7.gcp.m.eheci.com

  • 信息的惟一地標識目標目標磚的磚的身份驗證類型。提供具體的信息,請參閱本文後麵部分的驗證類型。

磚客戶端統一身份驗證

磚提供了一個統一和一致的architecural身份驗證和編程方法,稱為磚客戶端統一身份驗證。這種方法有助於使設置和自動化驗證磚更集中的和可預測的。它允許您配置數據磚身份驗證一次,然後使用該配置多個磚工具和sdk沒有進一步驗證配置更改。

參與磚工具和sdk包括:

所有參與工具和sdk接受特殊的環境變量以及磚配置概要文件進行身份驗證。磚起程拓殖的提供者和Python的磚sdk, Java,也接受直接內配置的身份驗證設置代碼。詳情,請參閱以下部分和工具或SDK文檔。

以下部分包含的例子如何配置您的機器進行身份驗證通過使用特殊的環境變量,磚配置概要文件,磚起程拓殖的供應商代碼,和磚sdk的Python代碼,Java和。對其他參與工具和sdk:

  • 磚CLI支持特殊的環境變量配置概要文件以及磚對許多的身份驗證類型。看到環境配置文件在下麵幾節中例子。另請參閱設置身份驗證在磚CLI的文檔。

  • 磚連接支持多個身份驗證配置選項磚特有的連接。看到配置連接屬性磚的連接文檔。

  • 磚擴展Visual Studio代碼提供了一個獨特的用戶界麵配置一些身份驗證類型和依賴於其與磚的集成連接其他的身份驗證類型。看到身份驗證需求在磚擴展Visual Studio代碼文檔。

磚個人訪問令牌認證

磚個人訪問令牌是最支持的類型的資源和業務的憑證磚工作空間的水平。許多存儲機製憑證和相關信息,如環境變量和數據磚配置概要文件,提供支持數據磚個人訪問令牌。雖然用戶可以有多個個人訪問令牌在磚工作區,每個個人訪問令牌隻適用於一個磚工作區。每個用戶的個人訪問令牌的數量限製在600 /工作區。

請注意

學習穀歌是否ID標記使用的工具,支持sdk,腳本和應用程序,看看你的提供者的文檔。

磚戶頭級別的自動化功能,您不能使用磚個人訪問令牌。相反,你使用Google ID磚戶頭級別的管理員帳戶級別的令牌。磚戶頭級別的管理員帳戶級別Google服務帳戶作為帳戶級別管理員用戶。有關更多信息,請參見與穀歌身份驗證ID標記賬戶API。參見:

磚的個人用戶訪問令牌

創建一個磚磚用戶個人訪問令牌,做到以下幾點:

  1. 在磚工作區,點擊你的磚用戶名在前的酒吧,然後選擇用戶設置從下拉。

  2. 訪問令牌選項卡上,單擊生成新的令牌

  3. (可選)輸入一個評論,有助於識別這個令牌在未來,和改變標記的默認的一生90天。創建一個令牌,沒有一生(不推薦),離開生命周期(天)盒子空(空白)。

  4. 點擊生成

  5. 複製顯示的令牌,然後單擊完成

重要的

確保保存複製令牌在一個安全的位置。如果你失去了複製的令牌,你不能再生,同樣的令牌。相反,您必須重複這個過程來創建一個新的令牌。如果你失去了複製的令牌,磚建議你立即從工作區中點擊刪除,令牌X旁邊的令牌訪問令牌選項卡。

磚的個人服務主體的訪問令牌

創建一個磚個人訪問令牌的磚的磚服務主體而不是用戶,明白了管理個人訪問令牌服務主體

管理數據磚個人訪問令牌

啟用和禁用所有磚個人信息訪問令牌的工作區,控製誰可以使用令牌在一個工作區中,設定一個最大一生令牌在一個工作區,和其他工作區令牌管理操作,明白了管理個人訪問令牌

執行磚個人訪問令牌的身份驗證

要配置磚個人訪問令牌的身份驗證,必須設置以下環境變量有關,.databrickscfg起程拓殖字段,字段,或配置字段:

  • 磚的主機,指定為目標工作空間的URL

  • 磚的磚個人訪問令牌的用戶帳戶。

執行磚個人訪問令牌的身份驗證,整合後在您的代碼中,基於參與工具或SDK:

使用環境變量與一個工具或SDK,看到該工具或SDK文檔。另請參閱環境變量並為客戶端統一身份驗證領域默認的順序評估客戶端統一身份驗證方法和憑證

設置以下環境變量:

  • DATABRICKS_HOST,將磚工作區URL。

  • DATABRICKS_TOKEN

創建或確定一個磚配置概要文件在你使用以下字段.databrickscfg文件。如果你創建配置文件,將占位符替換為適當的值。使用配置文件工具或SDK,看到該工具或SDK文檔。另請參閱環境變量並為客戶端統一身份驗證領域默認的順序評估客戶端統一身份驗證方法和憑證

在你設置以下值.databrickscfg文件:

(< some-unique-configuration-profile-name >)主機= < workspace-url >牌= <標記>

默認的身份驗證:

供應商“磚”=“工作區”}{別名

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者):

供應商“磚”=“工作區”{別名主機= < retrieve-workspace-url >牌= < retrieve-token >}

默認的身份驗證:

databricks.sdk進口WorkspaceClientw=WorkspaceClient()#……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如穀歌雲秘密經理):

databricks.sdk進口WorkspaceClientw=WorkspaceClient(主機=retrieve_workspace_url(),令牌=retrieve_token())#……

默認的身份驗證:

進口com.databricks.sdk.WorkspaceClient;/ /……WorkspaceClientw=WorkspaceClient();/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如穀歌雲秘密經理):

進口com.databricks.sdk.WorkspaceClient;進口com.databricks.sdk.core.DatabricksConfig;/ /……DatabricksConfigcfg=DatabricksConfig()setHost(retrieveWorkspaceUrl())setToken(retrieveToken());WorkspaceClientw=WorkspaceClient(cfg);/ /……

默認的身份驗證:

w:=必須(NewWorkspaceClient())

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如穀歌雲秘密經理):

w:=必須(NewWorkspaceClient(&配置{主機:retrieveWorkspaceUrl(),令牌:retrieveToken(),}))

穀歌雲憑據的身份驗證

穀歌雲憑證驗證使用穀歌雲服務帳戶憑據進行身份驗證目標穀歌雲服務帳戶。

配置穀歌雲與磚憑據的身份驗證,您必須設置以下環境變量有關,.databrickscfg起程拓殖字段,字段,或配置字段:

  • 磚的主機。

    • 對於賬戶操作,指定https://accounts.gcp.m.eheci.com

    • 對於工作空間操作,指定工作空間的URL

  • 賬戶操作,磚帳戶ID

  • 穀歌雲憑證,指定為本地路徑穀歌雲服務帳戶密鑰文件,或服務帳戶密鑰文件的內容以JSON格式。

執行穀歌雲與磚憑據的身份驗證,整合後在您的代碼中,基於參與工具或SDK:

使用環境變量與一個工具或SDK,看到該工具或SDK文檔。另請參閱環境變量並為客戶端統一身份驗證領域默認的順序評估客戶端統一身份驗證方法和憑證

對於帳戶級別的操作,設置以下環境變量:

  • DATABRICKS_HOST,的值設置為你的磚賬戶控製台URL。

  • DATABRICKS_ACCOUNT_ID

  • GOOGLE_CREDENTIALS

對於工作空間層的操作,設置以下環境變量:

  • DATABRICKS_HOST的值,設置為磚工作區URL。

  • GOOGLE_CREDENTIALS

創建或確定一個磚配置概要文件在你使用以下字段.databrickscfg文件。如果你創建配置文件,將占位符替換為適當的值。使用配置文件工具或SDK,看到該工具或SDK文檔。另請參閱環境變量並為客戶端統一身份驗證領域默認的順序評估客戶端統一身份驗證方法和憑證

對於帳戶級別的操作,在你設置以下值.databrickscfg文件:

(< some-unique-configuration-profile-name >)主機= < account-console-url > account_id = <帳戶id > google_credentials = < path-to-google-service-account-credentials-file >

對於工作空間層的操作,在你設置以下值.databrickscfg文件:

(< some-unique-configuration-profile-name >)主機= < workspace-url > google_credentials = < path-to-google-service-account-credentials-file >

帳戶層麵操作,默認的身份驗證:

供應商“磚”{別名= "帳戶"}

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者):

供應商“磚”{別名= "帳戶"主機= < retrieve-account-console-url > account_id = < retrieve-account-id > google_credentials = < retrieve-google-credentials >}

對於工作空間層的操作,對默認的身份驗證:

供應商“磚”=“工作區”}{別名

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者):

供應商“磚”=“工作區”{別名主機= < retrieve-workspace-url > google_credentials = < retrieve-google-credentials >}

請注意

Python的磚SDK尚未實現穀歌雲憑據的身份驗證。

請注意

磚Java SDK的尚未實現穀歌雲憑據的身份驗證。

帳戶層麵操作,默認的身份驗證:

一個:=必須(NewAccountClient())

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如穀歌雲秘密經理):

一個:=必須(NewAccountClient(&配置{主機:retrieveAccountConsoleUrl(),AccountId:retrieveAccountId(),GoogleCredentials:retrieveGoogleCredentials(),}))

對於工作空間層的操作,對默認的身份驗證:

w:=必須(NewWorkspaceClient())

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如穀歌雲秘密經理):

w:=必須(NewWorkspaceClient(&配置{主機:retrieveWorkspaceUrl(),GoogleCredentials:retrieveGoogleCredentials(),}))

穀歌雲ID認證

穀歌雲ID身份驗證使用穀歌雲CLI目標穀歌雲服務帳戶進行身份驗證。

穀歌雲配置ID認證與磚,你必須有穀歌雲CLI在本地安裝。您還必須設置以下環境變量有關,.databrickscfg起程拓殖字段,字段,或配置字段:

  • 磚的主機。

    • 對於賬戶操作,指定https://accounts.gcp.m.eheci.com

    • 對於工作空間操作,指定工作空間的URL

  • 賬戶操作,磚帳戶ID

  • 穀歌雲服務賬戶,指定為服務帳戶的電子郵件地址。

與磚執行穀歌雲ID驗證,整合後在您的代碼中,基於參與工具或SDK:

使用環境變量與一個工具或SDK,看到該工具或SDK文檔。另請參閱環境變量並為客戶端統一身份驗證領域默認的順序評估客戶端統一身份驗證方法和憑證

對於帳戶級別的操作,設置以下環境變量:

  • DATABRICKS_HOST,的值設置為你的磚賬戶控製台URL。

  • DATABRICKS_ACCOUNT_ID

  • GOOGLE_SERVICE_ACCOUNT

對於工作空間層的操作,設置以下環境變量:

  • DATABRICKS_HOST的值,設置為磚工作區URL。

  • GOOGLE_SERVICE_ACCOUNT

創建或確定一個磚配置概要文件在你使用以下字段.databrickscfg文件。如果你創建配置文件,將占位符替換為適當的值。使用配置文件工具或SDK,看到該工具或SDK文檔。另請參閱環境變量並為客戶端統一身份驗證領域默認的順序評估客戶端統一身份驗證方法和憑證

對於帳戶級別的操作,在你設置以下值.databrickscfg文件:

(< some-unique-configuration-profile-name >)主機= < account-console-url > account_id = <帳戶id > google_service_account = < google-cloud-service-account-email-address >

對於工作空間層的操作,在你設置以下值.databrickscfg文件:

(< some-unique-configuration-profile-name >)主機= < workspace-url > google_service_account = < google-cloud-service-account-email-address >

帳戶層麵操作,默認的身份驗證:

供應商“磚”{別名= "帳戶"}

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者):

供應商“磚”{別名= "帳戶"主機= < retrieve-account-console-url > account_id = < retrieve-account-id > google_service_account = < retrieve-google-service-account >}

對於工作空間層的操作,對默認的身份驗證:

供應商“磚”=“工作區”}{別名

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者):

供應商“磚”=“工作區”{別名主機= < retrieve-workspace-url > google_service_account = < retrieve-google-service-account >}

請注意

Python的磚SDK尚未實現穀歌雲ID認證。

請注意

磚Java SDK的尚未實現穀歌雲ID認證。

帳戶層麵操作,默認的身份驗證:

一個:=必須(NewAccountClient())

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如穀歌雲秘密經理):

一個:=必須(NewAccountClient(&配置{主機:retrieveAccountConsoleUrl(),AccountId:retrieveAccountId(),GoogleServiceAccount:retrieveGoogleServiceAccount(),}))

對於工作空間層的操作,對默認的身份驗證:

w:=必須(NewWorkspaceClient())

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如穀歌雲秘密經理):

w:=必須(NewWorkspaceClient(&配置{主機:retrieveWorkspaceUrl(),GoogleServiceAccount:retrieveGoogleServiceAccount(),}))

默認的順序評估客戶端統一身份驗證方法和憑證

隻要參與工具或SDK和磚需要進行身份驗證,工具或SDK嚐試以下類型的身份驗證默認按照以下順序。當工具或SDK類型的身份驗證,它嚐試成功,工具或SDK停止試圖驗證剩下的身份驗證類型。迫使一個SDK驗證與一個特定的身份驗證類型,設置配置API的磚驗證類型的字段。

  1. 磚個人訪問令牌認證

  2. 穀歌雲憑據的身份驗證

  3. 穀歌雲ID認證

對於每個參與工具或SDK嚐試驗證類型,工具或SDK試圖在以下位置找到身份驗證憑證,按照以下順序。當工具或SDK成功找到可以使用的身份驗證憑證,工具或SDK停止試圖找到身份驗證憑證在剩餘的位置。

  1. Credential-related配置API字段(sdk)。設置配置字段,看到SDK的參考文檔。

  2. Credential-related環境變量。設置環境變量,看你的操作係統的文檔。

  3. Credential-related字段默認的配置概要文件內.databrickscfg文件。設置配置概要文件字段,明白了磚配置概要文件

  4. 任何相關的身份驗證憑證,由穀歌緩存雲CLI。看到穀歌雲CLI

為代碼提供最大的可移植性,磚建議你創建一個自定義配置概要文件.databrickscfg文件,添加必填字段為你的目標磚驗證類型的自定義配置概要文件,然後設置DATABRICKS_CONFIG_PROFILE環境變量定義配置概要文件的名稱。

環境變量並為客戶端統一身份驗證領域

下麵的表列出了支持環境變量和字段的名稱和描述為磚客戶統一身份驗證。在以下表:

  • 環境變量在適用情況下,環境變量的名稱。設置環境變量,看你的操作係統的文檔。

  • .databrickscfg適用,是該領域的名字在一個磚配置概要文件或磚起程拓殖的配置。設置.databrickscfg字段,看到磚配置概要文件

  • 起程拓殖領域在適用情況下,字段的名稱在磚起程拓殖的配置。起程拓殖字段,設置數據磚身份驗證在磚起程拓殖供應商文檔。

  • 配置領域內的名稱嗎配置為指定的SDK API。使用配置API,看到SDK的參考文檔。

一般主機、令牌和帳戶ID環境變量和字段

普通的名字

描述

環境變量

.databrickscfg場、起程拓殖場

配置

磚的主機

(字符串)磚主機URL磚工作區端點或磚賬戶的端點。

DATABRICKS_HOST

主機

主機(Python),setHost(Java),主機(去)

磚的令牌

(字符串)磚個人訪問令牌。

DATABRICKS_TOKEN

令牌

令牌(Python),setToken(Java),令牌(去)

磚帳戶ID

(字符串)磚的磚帳戶ID賬戶端點。隻有當磚主機也將影響https://accounts.gcp.m.eheci.com

DATABRICKS_ACCOUNT_ID

account_id

account_id(Python),setAccountID(Java),AccountID(去)

穀歌的特定於雲環境變量和字段

普通的名字

描述

環境變量

.databrickscfg場、起程拓殖場

配置

穀歌雲服務帳戶

(字符串)穀歌雲服務帳戶的電子郵件地址。

DATABRICKS_GOOGLE_SERVICE_ACCOUNT

google_service_acccount

GoogleServiceAccount(去)

穀歌雲憑證

(字符串)的本地路徑穀歌雲服務帳戶密鑰文件,或服務帳戶密鑰文件的內容以JSON格式。

GOOGLE_CREDENTIALS

google_credentials

GoogleCredentials(去)

.databrickscfg-specific環境變量和字段

使用這些環境變量或字段來指定非默認設置.databrickscfg。另請參閱磚配置概要文件

普通的名字

描述

環境變量

起程拓殖領域

配置

.databrickscfg文件路徑

(字符串)一個非默認路徑.databrickscfg文件。

DATABRICKS_CONFIG_FILE

config_file

config_file(Python),setConfigFile(Java),ConfigFile(去)

.databrickscfg默認的配置

(字符串)默認命名配置文件使用,除了默認的

DATABRICKS_CONFIG_PROFILE

配置文件

配置文件(Python),setProfile(Java),配置文件(去)

身份驗證類型字段

使用這個環境變量或字段,迫使一個SDK使用特定類型的磚身份驗證。

普通的名字

描述

起程拓殖領域

配置

磚驗證類型

(字符串)當多個認證屬性可用的環境中,使用這個參數所指定的身份驗證類型。

auth_type

auth_type(Python),setAuthType(Java),AuthType(去)

支持數據磚驗證類型字段值包括:

磚配置概要文件

一個磚配置概要文件(有時會提到配置概要文件,一個配置概要文件,或者隻是一個配置文件磚)包含設置和其他信息需要進行身份驗證。磚配置概要文件存儲在磚配置概要文件你的工具,sdk、腳本和應用程序使用。學習磚是否配置概要文件使用的工具,支持sdk,腳本和應用程序,看看你的提供者的文檔。所有參與工具和sdk實現磚客戶端統一身份驗證支持數據磚配置概要文件。

創建一個磚配置概要文件:

  1. 使用您喜歡的文本編輯器創建一個文件命名.databrickscfg在你的~(你的用戶家裏)文件夾在Unix, Linux,或macOS,或你的% USERPROFILE %(用戶)文件夾在Windows上,如果你不已經有一個了。不要忘記點(在文件名的開始。這個文件中添加以下內容:

    (< some-unique-name-for-this-configuration-profile >) <字段> = <同一條>
  2. 在前麵的內容中,替換以下值,然後保存文件:

    • < some-unique-name-for-this-configuration-profile >配置概要文件與一個唯一的名稱,如默認的,發展,生產或類似。可以有多個配置概要文件是一樣的.databrickscfg文件,但是每個配置概要文件必須有一個唯一的名稱在這個文件中。

    • <字段><同一條>名稱和值的一個必需的字段為目標數據磚身份驗證類型。提供具體的信息,請參閱本文前麵部分的驗證類型。

    • 添加一個<字段><同一條>對每個目標所需的額外字段的數據磚身份驗證類型。

例如,對於磚個人訪問令牌認證,.databrickscfg文件可能看起來像這樣:

(默認)主機= https://1234567890123456.7.gcp.m.eheci.com牌= dapi123……

創建額外的配置概要文件,指定不同的概要文件在同一個名字.databrickscfg文件。例如,指定單獨的磚工作區,每個都有自己的磚個人訪問令牌:

(默認)主機= https://1234567890123456.7.gcp.m.eheci.com牌= dapi123……[開發]主機= https://2345678901234567.8.gcp.m.eheci.com牌= dapi234……

您還可以指定不同的配置文件名稱中.databrickscfg文件數據磚賬戶和磚的身份驗證類型的不同,例如:

(默認)主機= https://1234567890123456.7.gcp.m.eheci.com牌= dapi123……[開發]主機= https://2345678901234567.8.gcp.m.eheci.com google_service_account = someone@example.com

ODBC dsn

在ODBC,數據源名稱(DSN)是一個符號名,工具,sdk,腳本和應用程序使用請求到一個ODBC數據源的連接。DSN存儲連接細節如ODBC驅動程序的路徑,網絡細節,身份驗證憑證,和數據庫的細節。ODBC dsn是否支持你的學習工具,腳本和應用程序,看看你的提供者的文檔。

安裝和配置磚ODBC驅動程序並創建一個ODBC DSN磚,明白了ODBC驅動程序

JDBC連接url

在JDBC,連接URL是一個象征性的URL,工具,sdk,腳本和應用程序使用JDBC數據源的連接請求。連接URL存儲連接細節,如網絡細節,身份驗證憑證,數據庫細節,和JDBC驅動程序的功能。JDBC連接url是否支持你的學習工具,sdk,腳本,和應用程序,看看你的提供者的文檔。

安裝和配置磚JDBC驅動程序並創建一個JDBC連接URL為磚,明白了JDBC驅動程序

穀歌雲CLI

穀歌雲CLI使您能夠驗證通過終端與磚在穀歌的雲為Linux或macOS,或通過PowerShell或你的命令提示符窗口。學習是否支持穀歌雲CLI的工具,sdk,腳本,和應用程序,看看你的提供者的文檔。

使用穀歌雲CLI和手動磚在穀歌的雲,驗證運行gcloud init命令,然後按照屏幕上的提示:

gcloud init

更詳細的身份驗證選項,請參閱初始化gcloud CLI

注意,工具和sdk實現磚客戶端統一身份驗證標準,依靠穀歌雲CLI應該運行穀歌雲CLI自動為您創建和管理數據磚身份驗證。