身份驗證數據磚自動化

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

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

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

磚賬戶和工作區REST api

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

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

  • 目標數據磚賬戶控製台的URL,這是典型的https://accounts.cloud.m.eheci.com

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

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

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

  • 目標數據磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

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

磚客戶端統一身份驗證

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

參與磚工具和sdk包括:

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

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

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

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

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

磚個人訪問令牌認證

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

請注意

磚戶頭級別的自動化功能,您不能使用磚個人訪問令牌。相反,您必須使用OAuth標記為磚賬戶管理用戶或服務主體,或磚戶頭級別的管理員的用戶名和密碼。有關更多信息,請參見:

磚的個人用戶訪問令牌

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

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

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

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

  4. 點擊生成

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

重要的

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

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

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

管理數據磚個人訪問令牌

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

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

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

  • 磚的主機,指定為目標數據磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • 磚的磚個人訪問令牌,用戶帳戶或磚服務主體。

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

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

設置以下環境變量:

  • DATABRICKS_HOST,將磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • DATABRICKS_TOKEN

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

在你設置以下值.databrickscfg文件。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

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

默認的身份驗證:

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

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

默認的身份驗證:

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

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

默認的身份驗證:

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

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

默認的身份驗證:

進口("github.com/databricks/databricks-sdk-go”)/ /……w:=必須(NewWorkspaceClient())/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

進口("github.com/databricks/databricks-sdk-go”)/ /……w:=必須(NewWorkspaceClient(&配置{主機:retrieveWorkspaceUrl(),令牌:retrieveToken(),}))/ /……

基本身份驗證

基本身份驗證使用磚目標磚用戶帳戶的用戶名和密碼進行身份驗證。

配置基本身份驗證,必須設置以下環境變量有關,.databrickscfg起程拓殖字段,字段,或配置字段:

  • 磚的主機。

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

    • 對於工作空間操作,指定工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • 磚的用戶帳戶的用戶名。

  • 磚的用戶帳戶的密碼。

  • 磚賬戶操作,磚帳戶ID

執行基本身份驗證,整合後在您的代碼中,基於參與工具或SDK:

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

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

  • DATABRICKS_HOST,將磚賬戶控製台URL,https://accounts.cloud.m.eheci.com

  • DATABRICKS_ACCOUNT_ID

  • DATABRICKS_USERNAME

  • DATABRICKS_PASSWORD

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

  • DATABRICKS_HOST,將磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • DATABRICKS_USERNAME

  • DATABRICKS_PASSWORD

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

對於帳戶級別的操作,在你設置以下值.databrickscfg文件。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

(< some-unique-configuration-profile-name >)主機= < account-console-url > account_id = <帳戶id >用戶名密碼= <用戶名> = <密碼>

對於工作空間層的操作,在你設置以下值.databrickscfg文件。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

(< some-unique-configuration-profile-name >)主機密碼= < workspace-url >用戶名= <用戶名> = <密碼>

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

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

供應商“磚”{別名= "帳戶"主機= < retrieve-account-console-url > account_id = < retrieve-account-id >用戶名= < retrieve-username >密碼= < retrieve-password >}

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

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

供應商“磚”=“工作區”主機={別名< retrieve-workspace-url >用戶名= < retrieve-username >密碼= < retrieve-password >}

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

databricks.sdk進口AccountClient一個=AcccountClient()#……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

databricks.sdk進口AccountClient一個=AcccountClient(主機=retrieve_account_console_url(),account_id=retrieve_account_id(),用戶名=retrieve_username(),密碼=retrieve_password())#……

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

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

databricks.sdk進口WorkspaceClientw=WorkspaceClient(主機=retrieve_workspace_url(),用戶名=retrieve_username(),密碼=retrieve_password())#……

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

進口com.databricks.sdk.AccountClient;/ /……AccountClient一個=AccountClient();/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

進口com.databricks.sdk.AccountClient;進口com.databricks.sdk.core.DatabricksConfig;/ /……DatabricksConfigcfg=DatabricksConfig()setHost(retrieveAccountConsoleUrl())setAccountId(retrieveAccountId())setUsername(retrieveUsername())向setPassword(retrievePassword());AccountClient一個=AccountClient(cfg);/ /……

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

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

進口com.databricks.sdk.WorkspaceClient;進口com.databricks.sdk.core.DatabricksConfig;/ /……DatabricksConfigcfg=DatabricksConfig()setHost(retrieveWorkspaceUrl())setUsername(retrieveUsername())向setPassword(retrievePassword());WorkspaceClientw=WorkspaceClient(cfg);/ /……

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

進口("github.com/databricks/databricks-sdk-go”)/ /……一個:=必須(NewAccountClient())/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

進口("github.com/databricks/databricks-sdk-go”)/ /……一個:=必須(NewAccountClient(&配置{主機:retrieveAccountConsoleUrl(),AccountId:retrieveAccountId(),用戶名:retrieveUsername(),密碼:retreivePassword(),}))/ /……

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

進口("github.com/databricks/databricks-sdk-go”)/ /……w:=必須(NewWorkspaceClient())/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

進口("github.com/databricks/databricks-sdk-go”)/ /……w:=必須(NewWorkspaceClient(&配置{主機:retrieveWorkspaceUrl(),用戶名:retrieveUsername(),密碼:retreivePassword(),}))/ /……

OAuth機器對機器(M2M)身份驗證

預覽

這個特性是在公共預覽

OAuth機器對機器(M2M)身份驗證憑證的使用一個自動化的實體(在這種情況下,磚服務主體)進行身份驗證的目標實體。後磚成功進行身份驗證的目標服務主要通過OAuth M2M認證請求,一個OAuth令牌給參與工具或SDK來執行基於令牌的身份從那時代表服務prinipal的前進。OAuth令牌有一個小時的壽命,涉及以下工具或SDK將自動背景試圖獲得一個新的令牌,也有效的一小時。

開始配置OAuth M2M認證,完成了OAuth M2M身份驗證設置說明。看到步驟1 - 3使用OAuth身份驗證服務主體

重要的

你隻需要在前條的指示完成步驟1 - 3。

第四步在那篇文章中包括手動創建OAuth訪問令牌;然而,工具和sdk實現磚客戶統一認證標準自動創建和管理OAuth訪問令牌代表你你的目標數據磚服務主體。第五步在那篇文章中使用旋度調用數據磚REST API,而不是使用工具和實現數據磚的sdk客戶機統一認證標準。

完成配置OAuth M2M身份驗證,必須設置以下環境變量有關,.databrickscfg起程拓殖字段,字段,或配置字段:

  • 磚的主機,指定為https://accounts.cloud.m.eheci.com賬戶操作或目標工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com對於工作空間操作。

  • 磚的磚帳戶ID、賬戶操作。

  • 服務主體的客戶機ID。

  • 服務主體的秘密。

執行OAuth M2M身份驗證,整合後在您的代碼中,基於參與工具或SDK:

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

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

  • DATABRICKS_HOST,將磚賬戶控製台URL,https://accounts.cloud.m.eheci.com

  • DATABRICKS_ACCOUNT_ID

  • DATABRICKS_CLIENT_ID

  • DATABRICKS_CLIENT_SECRET

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

  • DATABRICKS_HOST,將磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

  • DATABRICKS_CLIENT_ID

  • DATABRICKS_CLIENT_SECRET

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

對於帳戶級別的操作,在你設置以下值.databrickscfg文件。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

(< some-unique-configuration-profile-name >)主機= < account-console-url > account_id = <帳戶id > client_id = < service-principal-client-id > client_secret = < service-principal-secret >

對於工作空間層的操作,在你設置以下值.databrickscfg文件。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

(< some-unique-configuration-profile-name >)主機= < workspace-url > client_id = < service-principal-client-id > client_secret = < service-principal-secret >

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

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

供應商“磚”{別名= "帳戶"主機= < retrieve-account-console-url > account_id = < retrieve-account-id > client_id = < retrieve-client-id > client_secret = < retrieve-client-secret >}

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

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

供應商“磚”=“工作區”主機={別名< retrieve-workspace-url > client_id = < retrieve-client-id > client_secret = < retrieve-client-secret >}

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

databricks.sdk進口AccountClient一個=AcccountClient()#……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

databricks.sdk進口AccountClient一個=AcccountClient(主機=retrieve_account_console_url(),account_id=retrieve_account_id(),client_id=retrieve_client_id(),client_secret=retrieve_client_secret())#……

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

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

databricks.sdk進口WorkspaceClientw=WorkspaceClient(主機=retrieve_workspace_url(),client_id=retrieve_client_id(),client_secret=retrieve_client_secret())#……

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

進口com.databricks.sdk.AccountClient;/ /……AccountClient一個=AccountClient();/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

進口com.databricks.sdk.AccountClient;進口com.databricks.sdk.core.DatabricksConfig;/ /……DatabricksConfigcfg=DatabricksConfig()setHost(retrieveAccountConsoleUrl())setAccountId(retrieveAccountId())setClientId(retrieveClientId())setClientSecret(retrieveClientSecret());AccountClient一個=AccountClient(cfg);/ /……

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

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

進口com.databricks.sdk.WorkspaceClient;進口com.databricks.sdk.core.DatabricksConfig;/ /……DatabricksConfigcfg=DatabricksConfig()setHost(retrieveWorkspaceUrl())setClientId(retrieveClientId())setClientSecret(retrieveClientSecret());WorkspaceClientw=WorkspaceClient(cfg);/ /……

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

進口("github.com/databricks/databricks-sdk-go”)/ /……w:=必須(NewWorkspaceClient())/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

進口("github.com/databricks/databricks-sdk-go”)/ /……w:=必須(NewWorkspaceClient(&配置{主機:retrieveAccountConsoleUrl(),AccountId:retrieveAccountId(),ClientId:retrieveClientId(),ClientSecret:retrieveClientSecret(),}))/ /……

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

進口("github.com/databricks/databricks-sdk-go”)/ /……一個:=必須(NewAccountClient())/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

進口("github.com/databricks/databricks-sdk-go”)/ /……一個:=必須(NewAccountClient(&配置{主機:retrieveWorkspaceUrl(),ClientId:retrieveClientId(),ClientSecret:retrieveClientSecret(),}))/ /……

OAuth user-to-machine (U2M)身份驗證

請注意

OAuth user-to-machine (U2M)身份驗證公共預覽

OAuth user-to-machine (U2M)身份驗證使用實時人類signin和同意目標磚用戶帳戶進行身份驗證。用戶成功登錄後,同意OAuth身份驗證請求,一個OAuth令牌給參與工具或SDK來執行基於令牌的身份從那時代表用戶的轉發。OAuth令牌有一個小時的壽命,涉及以下工具或SDK將自動背景試圖獲得一個新的令牌,也有效的一小時。

OAuth要求U2M身份驗證設置

  • 你必須有磚CLI版本0.200或更高版本安裝在本地。看到磚CLI

  • 完成下麵的說明使用磚CLI的磚sdk版本0.200或更高版本或Python, Java,或去,創建或確定一個磚配置概要文件在你使用以下字段.databrickscfg文件。

    (< some-unique-configuration-profile-name >)主機= < account-console-url > account_id = <帳戶id >用戶名密碼= <用戶名> = <密碼>

    在前麵的字段,取代以下值:

    • 取代< some-unique-configuration-profile-name >此配置概要文件的名稱。這個名字中必須是惟一的.databrickscfg文件。

    • 取代< account-console-url >https://accounts.cloud.m.eheci.com。(做設置這個值你的磚工作空間URL)。

    • 取代<帳戶id >與你的磚賬戶的價值。看到定位您的帳戶ID

    • 取代<用戶名>與用戶名你的磚的價值賬戶管理員用戶。(做設置這個用戶名的價值你的磚工作空間用戶)。

    • 取代<密碼>密碼為您的磚的價值賬戶管理員用戶。(做設置這個值的密碼你的磚工作空間用戶)。

  • 完成下麵的說明使用旋度相反,設置以下環境變量:

    • DATABRICKS_HOST,設置為值https://accounts.cloud.m.eheci.com。(做設置這個值你的磚工作空間URL)。

    • DATABRICKS_ACCOUNT_ID的值,設置為你的磚賬戶。看到定位您的帳戶ID

    • DATABRICKS_USERNAME的值,設置為用戶名你的磚賬戶管理員用戶。(做設置這個用戶名的價值你的磚工作空間用戶)。

    • DATABRICKS_PASSWORD,設置密碼的值你的磚賬戶管理員用戶。(做設置這個值的密碼你的磚工作空間用戶)。

    設置環境變量,看你的操作係統的文檔。

步驟1:使你的磚占OAuth身份驗證

運行以下命令,使您的帳戶為OAuth身份驗證。

你隻需要運行這個命令一次您的帳戶。如果你不確定你的賬戶是否支持OAuth身份驗證,您可以安全地運行這個命令了。或者你可以跳到第2步來檢查你的賬戶是否已經啟用。

磚賬戶o-auth-enrollment創建- p <配置文件名稱>
databricks.sdk進口AccountClient一個=AccountClient(配置文件=“<配置文件名稱>”)一個o_auth_enrollment創建()
進口com.databricks.sdk.AccountClient;進口com.databricks.sdk.core.DatabricksConfig;進口com.databricks.sdk.service.oauth2.CreateOAuthEnrollment;公共主要{公共靜態無效主要(字符串[]arg遊戲){DatabricksAccount一個=DatabricksAccount(DatabricksConfig()。setProfile(“<配置文件名稱>”));一個oAuthEnrollment()。創建(CreateOAuthEnrollment());}}
進口(“背景”"github.com/databricks/databricks-sdk-go”"github.com/databricks/databricks-sdk-go/service/oauth2”)函數主要(){一個:=必須(NewAccountClient(&配置{配置文件:“<配置文件名稱>”,}))犯錯:=一個OAuthEnrollment創建(上下文背景(),oauth2CreateOAuthEnrollment{})如果犯錯! ={恐慌(犯錯)}}

對於Linux或macOS:

curl——請求後\$ {DATABRICKS_HOST}. . / api / 2.0 /賬戶/$ {DATABRICKS_ACCOUNT_ID}/ oauth2 /注冊\——用戶$ {DATABRICKS_USERNAME}:$ {DATABRICKS_PASSWORD}

Windows:

curl——請求郵報^ % DATABRICKS_HOST % . . / api / 2.0 /賬戶/ % DATABRICKS_ACCOUNT_ID % / oauth2 /登記^——用戶“% DATABRICKS_USERNAME %: % DATABRICKS_PASSWORD %”

步驟2:檢查你的磚賬戶是否支持OAuth身份驗證

運行以下命令,檢查是否成功地支持OAuth身份驗證你的帳戶。

如果啟用了您的帳戶,響應:{“is_enabled”:真正的}(或類似的)。

磚賬戶o-auth-enrollment得到- p <配置文件名稱>
databricks.sdk進口AccountClient一個=AccountClient(配置文件=“<配置文件名稱>”)打印(f“is_enabled:{一個o_auth_enrollment得到()is_enabled})
進口com.databricks.sdk.DatabricksAccount;進口com.databricks.sdk.core.DatabricksConfig;公共主要{公共靜態無效主要(字符串[]arg遊戲){DatabricksAccount一個=DatabricksAccount(DatabricksConfig()。setProfile(“<配置文件名稱>”));係統println(”is_enabled:“+一個oAuthEnrollment()。得到()。getIsEnabled());}}
進口(“背景”“fmt”"github.com/databricks/databricks-sdk-go”)函數主要(){一個:=必須(NewAccountClient(&配置{配置文件:“<配置文件名稱>”,}))狀態,犯錯:=一個OAuthEnrollment得到(上下文背景())如果犯錯! ={恐慌(犯錯)}fmtPrintf(“is_enabled: % t”,狀態IsEnabled)}

對於Linux或macOS:

旋度,請求得到\$ {DATABRICKS_HOST}. . / api / 2.0 /賬戶/$ {DATABRICKS_ACCOUNT_ID}/ oauth2 /注冊\——用戶$ {DATABRICKS_USERNAME}:$ {DATABRICKS_PASSWORD}

Windows:

旋度,請求得到^ % DATABRICKS_HOST % . . / api / 2.0 /賬戶/ % DATABRICKS_ACCOUNT_ID % / oauth2 /登記^——用戶“% DATABRICKS_USERNAME %: % DATABRICKS_PASSWORD %”

步驟3:添加磚客戶統一作為OAuth身份驗證應用程序集成到你的磚賬戶

運行以下命令,集磚端統一作為可用的OAuth身份驗證應用程序在你的磚帳戶進行身份驗證。

如果整合成功,響應:{“integration_id”:“< integration-id >”}(或類似的)。

你隻需要運行這個命令一次您的帳戶。如果你不確定磚客戶端統一身份驗證是否已經集成作為一個可用的OAuth應用程序在你的磚帳戶,您可以安全地運行這個命令了。如果磚端統一認證已經集成,響應包含短語“發布應用程序集成appId databricks-cli已經存在。”

磚賬戶published-app-integration創建——應用id databricks-cli - p <配置文件名稱>
databricks.sdk進口AccountClient一個=AccountClient(配置文件=“<配置文件名稱>”)create_result=一個published_app_integration創建(app_id=“databricks-cli”)打印(f“integration_id:{create_resultintegration_id})
進口com.databricks.sdk.DatabricksAccount;進口com.databricks.sdk.core.DatabricksConfig;進口com.databricks.sdk.service.oauth2.CreatePublishedAppIntegration;進口com.databricks.sdk.service.oauth2.GetPublishedAppIntegrationOutput;公共主要{公共靜態無效主要(字符串[]arg遊戲){DatabricksAccount一個=DatabricksAccount(DatabricksConfig()。setProfile(“<配置文件名稱>”));CreatePublishedAppIntegrationOutput結果=一個publishedAppIntegration()。創建(CreatePublishedAppIntegration()。setAppId(“databricks-cli”));係統println(”integration_id:“+結果getIntegrationId());}}
進口(“背景”“fmt”"github.com/databricks/databricks-sdk-go”"github.com/databricks/databricks-sdk-go/service/oauth2”)函數主要(){一個:=必須(NewAccountClient(&配置{配置文件:“<配置文件名稱>”,})),犯錯:=一個PublishedAppIntegration創建(上下文背景(),oauth2CreatePublishedAppIntegration{AppId:“databricks-cli”,},)如果犯錯! ={恐慌(犯錯)}fmtPrintf(“integration_id: % s”,IntegrationId)}

對於Linux或macOS:

curl——請求後\$ {DATABRICKS_HOST}. . / api / 2.0 /賬戶/$ {DATABRICKS_ACCOUNT_ID}/ oauth2 published-app-integrations\——頭“application / json內容類型:\——數據”{app_id”:“databricks-cli“}”\——用戶$ {DATABRICKS_USERNAME}:$ {DATABRICKS_PASSWORD}

Windows:

curl——請求郵報^ % DATABRICKS_HOST % . . / api / 2.0 /賬戶/ % DATABRICKS_ACCOUNT_ID % / oauth2 published-app-integrations ^——頭“application / json內容類型:^——數據”{\“app_id \”, \“databricks-cli \“}”^——用戶“% DATABRICKS_USERNAME %: % DATABRICKS_PASSWORD %”

配置數據磚客戶機身份驗證

完成配置OAuth與磚U2M身份驗證,您必須設置以下環境變量有關,.databrickscfg起程拓殖字段,字段,或配置字段:

  • 磚的主機,指定為https://accounts.cloud.m.eheci.com賬戶操作或目標工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com對於工作空間操作。

  • 磚的磚帳戶ID、賬戶操作。

與磚執行OAuth U2M驗證身份驗證,整合後在您的代碼中,基於參與工具或SDK。注意,根據磚的操作代碼調用,你不一定需要磚的管理員帳戶:

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

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

  • DATABRICKS_HOST,的值設置為你的磚賬戶控製台URL,https://accounts.cloud.m.eheci.com

  • DATABRICKS_ACCOUNT_ID

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

  • DATABRICKS_HOST的值,設置為你的磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

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

對於帳戶級別的操作,在你設置以下值.databrickscfg文件。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

(< some-unique-configuration-profile-name >)主機= < account-console-url > account_id = <帳戶id >

對於工作空間層的操作,在你設置以下值.databrickscfg文件。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

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

對於帳戶級別的操作,你應該首先使用磚CLI運行以下命令,在你起程拓殖應用配置。這個命令指示磚CLI的生成和緩存所需的OAuth令牌的路徑.databricks / token-cache.json在你的用戶的主文件夾在您的機器上:

磚身份驗證登錄主機< account-console-url >——帳戶id <帳戶id >

替換占位符如下:

  • 取代< account-console-url >與價值https://accounts.cloud.m.eheci.com。(做設置這個值你的磚工作空間URL)。

  • 取代<帳戶id >與你的磚賬戶的價值。看到定位您的帳戶ID

請注意

磚CLI 0.200.1及以上版本,之後運行身份驗證登錄命令,提示您保存帳戶登錄URL和帳戶ID作為磚配置概要文件。當出現提示時,輸入一個新的或現有的配置文件的名稱在你.databrickscfg文件。任何現有的配置文件中具有相同名稱的.databrickscfg文件被覆蓋。

如果提示,完成你的web瀏覽器的屏幕上的指令完成登錄。然後使用起程拓殖代碼類似於下麵的代碼片段:

默認的身份驗證:

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

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

對於工作空間層的操作,你應該首先使用磚CLI運行以下命令,在你起程拓殖應用配置。這個命令指示磚CLI的生成和緩存所需的OAuth令牌的路徑.databricks / token-cache.json在你的用戶的主文件夾在您的機器上:

磚身份驗證登錄——主機< workspace-url >

替換占位符< workspace-url >與目標數據磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

請注意

磚CLI 0.200.1及以上版本,之後運行身份驗證登錄命令,提示您保存工作區URL作為磚配置概要文件。當出現提示時,輸入一個新的或現有的配置文件的名稱在你.databrickscfg文件。任何現有的配置文件中具有相同名稱的.databrickscfg文件被覆蓋。

如果提示,完成你的web瀏覽器的屏幕上的指令完成登錄。然後使用起程拓殖代碼類似於下麵的代碼片段:

默認的身份驗證:

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如HashiCorp庫。另請參閱庫提供者)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

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

對於帳戶級別的操作,你應該首先使用磚CLI運行以下命令,在你運行您的Python代碼。這個命令指示磚CLI的生成和緩存所需的OAuth令牌的路徑.databricks / token-cache.json在你的用戶的主文件夾在您的機器上:

磚身份驗證登錄主機< account-console-url >——帳戶id <帳戶id >

替換占位符如下:

  • 取代< account-console-url >與價值https://accounts.cloud.m.eheci.com。(做設置這個值你的磚工作空間URL)。

  • 取代<帳戶id >與你的磚賬戶的價值。看到定位您的帳戶ID

請注意

磚CLI 0.200.1及以上版本,之後運行身份驗證登錄命令,提示您保存帳戶登錄URL和帳戶ID作為磚配置概要文件。當出現提示時,輸入一個新的或現有的配置文件的名稱在你.databrickscfg文件。任何現有的配置文件中具有相同名稱的.databrickscfg文件被覆蓋。

如果提示,完成你的web瀏覽器的屏幕上的指令完成登錄。然後使用Python代碼類似於下麵的代碼片段:

默認的身份驗證:

databricks.sdk進口AccountClient一個=AccountClient()#……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

databricks.sdk進口AccountClient一個=AccountClient(主機=retrieveAccountConsoleUrl(),account_id=retrieveAccountId())#……

對於工作空間層的操作,你應該首先使用磚CLI運行以下命令,在你運行您的Python代碼。這個命令指示磚CLI的生成和緩存所需的OAuth令牌的路徑.databricks / token-cache.json在你的用戶的主文件夾在您的機器上:

磚身份驗證登錄——主機< worskpace-url >

替換占位符< workspace-url >與目標數據磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

請注意

磚CLI 0.200.1及以上版本,之後運行身份驗證登錄命令,提示您保存工作區URL作為磚配置概要文件。當出現提示時,輸入一個新的或現有的配置文件的名稱在你.databrickscfg文件。任何現有的配置文件中具有相同名稱的.databrickscfg文件被覆蓋。

如果提示,完成你的web瀏覽器的屏幕上的指令完成登錄。然後使用Python代碼類似於下麵的代碼片段:

默認的身份驗證:

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

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

對於帳戶級別的操作,你應該首先使用磚CLI運行以下命令,在你運行您的Java代碼。這個命令指示磚CLI的生成和緩存所需的OAuth令牌的路徑.databricks / token-cache.json在你的用戶的主文件夾在您的機器上:

磚身份驗證登錄主機< account-console-url >——帳戶id <帳戶id >

替換占位符如下:

  • 取代< account-console-url >與價值https://accounts.cloud.m.eheci.com。(做設置這個值你的磚工作空間URL)。

  • 取代<帳戶id >與你的磚賬戶的價值。看到定位您的帳戶ID

請注意

磚CLI 0.200.1及以上版本,之後運行身份驗證登錄命令,提示您保存帳戶登錄URL和帳戶ID作為磚配置概要文件。當出現提示時,輸入一個新的或現有的配置文件的名稱在你.databrickscfg文件。任何現有的配置文件中具有相同名稱的.databrickscfg文件被覆蓋。

如果提示,完成你的web瀏覽器的屏幕上的指令完成登錄。然後使用Java代碼類似於下麵的代碼片段:

默認的身份驗證:

進口com.databricks.sdk.AccountClient;/ /……AccountClient一個=AccountClient();/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

進口com.databricks.sdk.AccountClient;進口com.databricks.sdk.core.DatabricksConfig;/ /……DatabricksConfigcfg=DatabricksConfig()setHost(retrieveAccountConsoleUrl())setAccountId(retrieveAccountId());AccountClient一個=AccountClient(cfg);/ /……

對於工作空間層的操作,你應該首先使用磚CLI運行以下命令,在你運行你的Java代碼。這個命令指示磚CLI的生成和緩存所需的OAuth令牌的路徑.databricks / token-cache.json在你的用戶的主文件夾在您的機器上:

磚身份驗證登錄——主機< worskpace-url >

替換占位符< workspace-url >與目標數據磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

請注意

磚CLI 0.200.1及以上版本,之後運行身份驗證登錄命令,提示您保存工作區URL作為磚配置概要文件。當出現提示時,輸入一個新的或現有的配置文件的名稱在你.databrickscfg文件。任何現有的配置文件中具有相同名稱的.databrickscfg文件被覆蓋。

如果提示,完成你的web瀏覽器的屏幕上的指令完成登錄。然後使用Java代碼類似於下麵的代碼片段:

默認的身份驗證:

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

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

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

對於帳戶級別的操作,你應該首先使用磚CLI運行以下命令,在你運行您的代碼。這個命令指示磚CLI的生成和緩存所需的OAuth令牌的路徑.databricks / token-cache.json在你的用戶的主文件夾在您的機器上:

磚身份驗證登錄主機< account-login-url >——帳戶id <帳戶id >

替換占位符如下:

  • 取代< account-console-url >與價值https://accounts.cloud.m.eheci.com。(做設置這個值你的磚工作空間URL)。

  • 取代<帳戶id >與你的磚賬戶的價值。看到定位您的帳戶ID

請注意

磚CLI 0.200.1及以上版本,之後運行身份驗證登錄命令,提示您保存帳戶登錄URL和帳戶ID作為磚配置概要文件。當出現提示時,輸入一個新的或現有的配置文件的名稱在你.databrickscfg文件。任何現有的配置文件中具有相同名稱的.databrickscfg文件被覆蓋。

如果提示,完成你的web瀏覽器的屏幕上的指令完成登錄。然後使用下麵的代碼類似於一個片段:

默認的身份驗證:

進口("github.com/databricks/databricks-sdk-go”)/ /……一個:=必須(NewAccountClient())/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在本例中,URL是磚帳戶的控製台https://accounts.cloud.m.eheci.com:

進口("github.com/databricks/databricks-sdk-go”)/ /……一個:=必須(NewAccountClient(&配置{主機:retrieveAccountConsoleUrl(),AccountId:retrieveAccountId(),}))/ /……

對於工作空間層的操作,你應該首先使用磚CLI運行以下命令,在你運行您的代碼。這個命令指示磚CLI的生成和緩存所需的OAuth令牌的路徑.databricks / token-cache.json在你的用戶的主文件夾在您的機器上:

磚身份驗證登錄——主機< worskpace-url >

替換占位符< workspace-url >與目標數據磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com

請注意

磚CLI 0.200.1及以上版本,之後運行身份驗證登錄命令,提示您保存工作區URL作為磚配置概要文件。當出現提示時,輸入一個新的或現有的配置文件的名稱在你.databrickscfg文件。任何現有的配置文件中具有相同名稱的.databrickscfg文件被覆蓋。

如果提示,完成你的web瀏覽器的屏幕上的指令完成登錄。然後使用下麵的代碼類似於一個片段:

默認的身份驗證:

進口("github.com/databricks/databricks-sdk-go”)/ /……w:=必須(NewWorkspaceClient())/ /……

直接配置(取代檢索用自己的實現來檢索值占位符從控製台或其他配置存儲,如AWS係統存儲管理器參數)。在這種情況下,主機是磚工作空間的URL例如,https://dbc-a1b2345c-d6e7.cloud.m.eheci.com:

進口("github.com/databricks/databricks-sdk-go”)/ /……w:=必須(NewWorkspaceClient(&配置{主機:retrieveWorkspaceUrl(),}))/ /……

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

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

  1. 磚個人訪問令牌認證

  2. 基本身份驗證

  3. OAuth機器對機器(M2M)身份驗證

  4. OAuth user-to-machine (U2M)身份驗證

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

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

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

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

為代碼提供最大的可移植性,磚建議你創建一個自定義配置概要文件.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.cloud.m.eheci.com

DATABRICKS_ACCOUNT_ID

account_id

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

AWS-specific環境變量和字段

普通的名字

描述

環境變量

.databrickscfg場、起程拓殖場

配置

磚的用戶名

(字符串)磚用戶的用戶名。

DATABRICKS_USERNAME

用戶名

用戶名(Python),setUsername(Java),用戶名(去)

磚的密碼

(字符串)磚用戶的密碼。

DATABRICKS_PASSWORD

密碼

密碼(Python),向setPassword(Java),密碼(去)

服務主體客戶機ID

(字符串)磚服務主體的客戶機ID。

DATABRICKS_CLIENT_ID

client_id

client_id(Python),setClientId(Java),ClientId(去)

服務主體的秘密

(字符串)磚服務主體的秘密。

DATABRICKS_CLIENT_SECRET

client_secret

client_secret(Python),setClientSecret(Java),ClientSecret(去)

.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://dbc-a1b2345c-d6e7.cloud.m.eheci.com牌= dapi123……

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

(默認)主機= https://dbc-a1b2345c-d6e7.cloud.m.eheci.com牌= dapi123……[開發]主機= https://dbc-b2c3456d-e7f8.cloud.m.eheci.com牌= dapi234……

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

(默認)主機= https://dbc-a1b2345c-d6e7.cloud.m.eheci.com牌= dapi123……(賬戶)主機= https://accounts.cloud.m.eheci.com用戶名= someone@example.com密碼= MyP25……account_id = ab0cd1……

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驅動程序

OAuth為服務主體

預覽

這個特性是在公共預覽

OAuth支持磚服務主體的磚賬戶和工作空間的水平。您可以使用相同的OAuth令牌的賬戶和工作區賬戶,隻要服務主體具有正確的訪問。賬戶管理員可以創建一個客戶端服務主體的秘密。然後您可以使用客戶端秘密與客戶機ID,也稱為服務主體的應用程序ID,請求服務主體的OAuth令牌。OAuth令牌持續一個小時。看到使用OAuth身份驗證服務主體

請注意

磚不建議您手動創建OAuth對磚服務主體的令牌。這是因為每個OAuth令牌是短暫的,通常在一小時內到期。這一次之後,您必須手動生成一個替代OAuth令牌。相反,使用一個參與的工具或sdk實現磚客戶端統一身份驗證標準。這些工具和sdk自動生成和更換過期了OAuth令牌給磚為你服務主體,利用OAuth機器對機器(M2M)身份驗證

一個帳戶管理員的用戶名和密碼也可以用來驗證磚戶頭級別api。然而,磚強烈建議您使用OAuth服務主體。例如使用用戶名和密碼進行身份驗證,看看如何使用API的賬戶嗎