取消
顯示的結果
而不是尋找
你的意思是:

非管理用戶從CLI運行起程拓殖

Andrei_Radulesc
因素二世

我們有一個團隊的很多人,他們需要做磚起程拓殖CLI的配置。我們想這樣做沒有所有人在磚帳戶管理員。

這樣做的最好辦法是什麼?

現在,我們起程拓殖設置,這樣你必須管理磚賬戶運行起程拓殖。帳戶提供商與用戶/密碼設置:

供應商“磚”{

別名= "多工作站係統"

主機= " https://accounts.cloud.m.eheci.com "

account_id = var.databricks_account_id

用戶名= var.databricks_account_username

密碼= var.databricks_account_password

}

工作區提供者與工作區設置令牌,您不必工作區管理(隻需要一個工作區管理令牌):

供應商“磚”{

別名= " dev_workspace "

主機= module.dev_workspace.workspace_url

令牌= module.dev_workspace.databricks_token

}

可以配置磚賬戶起程拓殖的提供者,說,與某種令牌管理特權,或某種服務主體與管理員權限,所以我們不需要管理用戶運行起程拓殖嗎?

1接受解決方案

接受的解決方案

匿名
不適用

@Andrei Radulescu-Banu:

是的,這是可能的配置數據磚起程拓殖與服務提供者賬戶主要有管理員權限,所以你不需要管理員用戶運行起程拓殖。

下麵是設置的步驟:

  1. 在Azure廣告創建一個服務主體與適當的權限。服務主體應該有以下權限:
  • Azure磚服務角色分配資源組或訂閱級別
    • 貢獻者或所有者角色分配資源組或訂閱級別(這是需要在Azure)創建和管理資源
  1. 生成一個客戶服務主體的秘密。
  2. 設置你起程拓殖的磚提供者的配置使用服務主體的憑證:
供應商“磚”{別名= "多工作站係統"主機= " https://accounts.cloud.m.eheci.com " account_id = var.databricks_account_id client_id = var.service_principal_client_id client_secret = var.service_principal_client_secret}
  1. 添加必要的變量起程拓殖配置存儲安全服務主體的憑證。

使用這個設置,您可以訪問服務主體授予執行管理任務,而不需要給所有用戶管理訪問你的磚賬戶。這提供了一個更加安全和可控的方式來管理你的基礎設施。

在原帖子查看解決方案

4回複4

匿名
不適用

@Andrei Radulescu-Banu:

是的,這是可能的配置數據磚起程拓殖與服務提供者賬戶主要有管理員權限,所以你不需要管理員用戶運行起程拓殖。

下麵是設置的步驟:

  1. 在Azure廣告創建一個服務主體與適當的權限。服務主體應該有以下權限:
  • Azure磚服務角色分配資源組或訂閱級別
    • 貢獻者或所有者角色分配資源組或訂閱級別(這是需要在Azure)創建和管理資源
  1. 生成一個客戶服務主體的秘密。
  2. 設置你起程拓殖的磚提供者的配置使用服務主體的憑證:
供應商“磚”{別名= "多工作站係統"主機= " https://accounts.cloud.m.eheci.com " account_id = var.databricks_account_id client_id = var.service_principal_client_id client_secret = var.service_principal_client_secret}
  1. 添加必要的變量起程拓殖配置存儲安全服務主體的憑證。

使用這個設置,您可以訪問服務主體授予執行管理任務,而不需要給所有用戶管理訪問你的磚賬戶。這提供了一個更加安全和可控的方式來管理你的基礎設施。

Vidula_Khanna
主持人
主持人

嗨@Andrei Radulescu-Banu

希望一切都好!隻是想檢查如果你能解決你的問題,你會很高興分享解決方案或答案標記為最佳?其他的請讓我們知道如果你需要更多的幫助。

我們很想聽到你的聲音。

謝謝!

Andrei_Radulesc
因素二世

謝謝你Suteja。起,但是我仍然遇到身份驗證問題。我已經更新起程拓殖提供者1.13.0磚。這是我的帳戶提供商:

供應商“磚”{

別名= "多工作站係統"

主機= " https://accounts.cloud.m.eheci.com "

account_id = var.databricks_account_id / /這是需要由databricks_groups如

# OAuth服務主體配置

client_id = var.databricks_account_service_principal_uuid

client_secret = var.databricks_account_service_principal_secret

#老用戶/密碼配置

#用戶名= var.databricks_account_username

#密碼= var.databricks_account_password

}

這是我的工作空間提供商:

供應商“磚”{

別名= " dev_workspace "

主機=…#通過工作區URL

# OAuth服務主體配置

client_id = var.databricks_account_service_principal_uuid

client_secret = var.databricks_account_service_principal_secret

#舊口令配置

#令牌= module.dev_workspace.databricks_token

}

使用此設置,我能讓它工作,至少一開始不會。然後,我開始允許錯誤(見下文),奇怪的是,所有工作後,一個完整的早晨。所以我不得不放棄更改並回到用戶/密碼帳戶級別的配置,和令牌在工作區配置水平。

在我們的例子中,工作區已經最初創建的用戶/密碼,和用於生產。所以我不能從頭重新創建這些工作區。相反,我將起程拓殖配置這些工作區使用服務主體。

手動創建的服務主體,在UI中,賬戶的水平。和服務主要是“admin”帳戶級別的權限。

我不記得我如何配置服務主體在工作區水平。看著GUI,服務主體出現在賬戶和工作區層次——所以這是關聯到工作區。不記得我是怎麼做的。我想應該是自動的,因為服務主要是手動配置為“admin”在帳戶級別。

在UI中做了這些變更之後,在起程拓殖,我開始把舊起程拓殖配置。它讓我在統一目錄權限錯誤相關的實體——因為這些用舊用戶/密碼和令牌創建配置,所以他們最終屬於我自己。

這是解決在UI中,手動更改這些實體的所有權服務主體。

所以,早上都很好。然後,在下午,我開始下麵的錯誤:

2023 - 03 - 24 - t13:23:49.452 - 0400[信息]provider.terraform-provider-databricks_v1.13.0:工作區現在運行:時間戳= 2023 - 03 - 24 - t13:23:49.452 - 0400

2023 - 03 - 24 - t13:23:49.605 - 0400(調試)provider.terraform-provider-databricks_v1.13.0:為服務主體生成磚OAuth的令牌(* * *):時間戳= 2023 - 03 - 24 - t13:23:49.605 - 0400

2023 - 03 - 24 - t13:23:49.646 - 0400(調試)provider.terraform-provider-databricks_v1.13.0:為服務主體生成磚OAuth的令牌(* * *):時間戳= 2023 - 03 - 24 - t13:23:49.646 - 0400

2023 - 03 - 24 - t13:23:49.711 - 0400(調試)provider.terraform-provider-databricks_v1.13.0:為服務主體生成磚OAuth的令牌(* * *):時間戳= 2023 - 03 - 24 - t13:23:49.711 - 0400

2023 - 03 - 24 - t13:23:49.990 - 0400(調試)provider.terraform-provider-databricks_v1.13.0: GET / api / 2.0 /令牌列表

< HTTP / 2.0 401未經授權

(274字節的non-JSON文檔):時間戳= 2023 - 03 - 24 - t13:23:49.990 - 0400

2023 - 03 - 24 - t13:23:49.990 - 0400[信息]provider.terraform-provider-databricks_v1.13.0:工作區https:// * * * .cloud.m.eheci.com還不可以:身份驗證失敗:時間戳= 2023 - 03 - 24 - t13:23:49.990 0400

2023 - 03 - 24 - t13:23:50.188 - 0400(調試)provider.terraform-provider-databricks_v1.13.0: GET / api / 2.0 /令牌列表

< HTTP / 2.0 401未經授權

(274字節的non-JSON文檔):時間戳= 2023 - 03 - 24 - t13:23:50.188 - 0400

2023 - 03 - 24 - t13:23:50.188 - 0400[信息]provider.terraform-provider-databricks_v1.13.0:工作區https:// * * * .cloud.m.eheci.com還不可以:身份驗證失敗:時間戳= 2023 - 03 - 24 - t13:23:50.188 0400

2023 - 03 - 24 - t13:23:50.284 - 0400(調試)provider.terraform-provider-databricks_v1.13.0: GET / api / 2.0 /令牌列表

< HTTP / 2.0 401未經授權

(274字節的non-JSON文檔):時間戳= 2023 - 03 - 24 - t13:23:50.284 - 0400

2023 - 03 - 24 - t13:23:50.284 - 0400[信息]provider.terraform-provider-databricks_v1.13.0:工作區https:// * * * .cloud.m.eheci.com還不可以:身份驗證失敗:時間戳= 2023 - 03 - 24 - t13:23:50.284 0400

我* * * ' d id的鏈接和輸出。它與身份驗證失敗,剛在一個循環中,我從來沒有能夠動搖。

唯一的解決方案是將從使用服務主體,和回到用戶/密碼令牌認證。幸運的是,我可以退出而不喪失生產工作區。

Andrei_Radulesc
因素二世

我認為服務主體絕對適合工作區從頭開始創建的服務主體。我在測試環境已經測試過,沒有遇到這類的認證問題。

我看到的問題是與工作區創建用戶/密碼和基於令牌的身份驗證。深的工作區,仍有權限設置的方式服務主體為基礎配置給身份驗證錯誤。

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map