服務主體對CI / CD

本文描述了如何使用服務主體與磚CI / CD。一個服務主體是一個身份創建使用自動化的工具和應用程序,包括:

作為一個安全最佳實踐,磚建議使用磚服務主體及其oauth的令牌或個人訪問令牌,而不是你的磚用戶或磚個人工作區用戶訪問令牌給磚CI / CD平台訪問資源。Beplay体育安卓版本這種方法包括以下一些好處:

  • 格蘭特和可以限製訪問為磚磚資源服務主體獨立於用戶。例如,這允許您禁止磚服務主體作為一個管理員在你磚的工作空間,同時允許其他特定用戶在您的工作空間中繼續充當管理員。

  • 用戶可以維護自己的訪問令牌訪問由CI / CD平台。Beplay体育安卓版本

  • 你可以暫時禁用或永久刪除一個磚服務主體而不影響其他用戶。例如,這允許您從磚暫停或刪除訪問服務主體,你懷疑是惡意的方式使用。

  • 如果用戶離開你的組織,你可以刪除用戶,而不會影響任何磚服務主體。

給CI / CD平台訪問你的磚工Beplay体育安卓版本作區,做到以下幾點:

  1. 在您的工作區中創建一個數據磚服務主體。

  2. 生成一個磚磚服務主體的個人訪問令牌。

  3. 給這個磚個人CI / CD平台訪問令牌。Beplay体育安卓版本

完成步驟1和2,請參閱管理服務主體

完成第3步,完成本文中的指令。

可選,如果你還想用你的磚與磚工作區回購在CI / CD平台的Beplay体育安卓版本情況下,看到的Git提供者證書添加到一個磚的工作區。例如,您可能想要你的Git提供者訪問您的工作區,然後你還想在你的工作區與Git使用磚回購的提供者。然而,你不需要使用磚回購為了使用您的工作區與CI / CD平台。Beplay体育安卓版本

需求

  • 磚的磚個人訪問令牌服務主體。創建一個磚服務主體及其磚個人訪問令牌,看到的管理服務主體

  • 一個帳戶與你的Git提供者。

設置GitHub的行為

GitHub的行為必須能夠訪問您的數據磚工作區。如果你想使用磚回購,你的工作還必須能夠訪問GitHub。

使GitHub的行動來訪問你的磚工作區,您必須注冊為磚磚個人訪問令牌服務主體與GitHub的行動。

如果你也想讓你訪問GitHub當您使用磚磚工作區回購,您必須添加GitHub的GitHub個人訪問令牌機用戶工作區。

注冊數據磚的磚個人訪問令牌的服務主體與GitHub的行動

本節描述如何啟用GitHub的行動來訪問你的磚工作區。

作為一個安全最佳實踐,磚建議您不要輸入一個磚個人直接訪問令牌到GitHub的身體行動的文件。你應該注冊磚個人訪問令牌使用GitHub GitHub的行動加密機密代替。

GitHub的行動,例如磚的列表持續集成和交付使用GitHub的行動,以及onpush.ymlonrelease.yml文件的一部分基本的Python模板dbx對於GitHub動作,依靠GitHub加密機密如:

  • DATABRICKS_HOST,這是價值https://其次是你的工作區實例名例如,1234567890123456.7.gcp.m.eheci.com

  • DATABRICKS_TOKEN的價值token_value值複製後創建了磚磚服務主體的個人訪問令牌。

GitHub的更多信息加密的秘密是GitHub所需行動,明白了管理服務主體的文檔,GitHub的行動。

添加這些GitHub GitHub庫加密的秘密,明白了為存儲庫創建加密的秘密在GitHub文檔。對於其他方法來添加這些GitHub庫秘密,看到的加密機密在GitHub文檔。

添加GitHub個人訪問令牌GitHub機用戶數據磚工作區

本節描述如何啟用訪問GitHub磚與磚工作區回購。這是一個可選的任務在CI / CD的場景。

作為一個安全最佳實踐,磚建議你使用GitHub機用戶而不是GitHub個人賬戶,有許多相同的原因,你應該使用一個磚代替磚用戶服務主體。添加GitHub個人訪問令牌GitHub機用戶數據磚工作區,做到以下幾點:

  1. 創建一個GitHub機用戶,如果你不已經有一個可用的。一個GitHub機用戶是一個GitHub個人賬戶,獨立於自己的GitHub個人賬戶,你可以在GitHub上使用自動化活動。創建一個新的獨立的GitHub帳戶使用GitHub機用戶,如果你不已經有一個可用的。

    請注意

    當你創建一個新的獨立的GitHub帳戶作為一個GitHub機用戶,您不能將它與自己的GitHub個人賬戶的電子郵件地址。相反,看到您組織的郵件管理員有一個單獨的電子郵件地址,您可以與這個新獨立的GitHub賬戶作為一個GitHub機用戶。

    看到您的組織的帳戶管理員管理單獨的電子郵件地址及其相關GitHub機用戶及其GitHub個人訪問令牌在你的組織。

  2. 給你的GitHub GitHub機用戶訪問存儲庫。看到邀請一個團隊或個人在GitHub文檔。接受邀請,你可能首先需要退出你的GitHub個人帳戶,然後在GitHub機器用戶簽字。

  3. 在GitHub機用戶,然後創建一個GitHub的個人機用戶訪問令牌。看到創建一個個人訪問令牌在GitHub文檔。一定要給GitHub個人訪問令牌回購訪問。

  4. 收集數據磚磚服務主體的個人訪問令牌,GitHub機器的用戶名,然後Git提供者證書添加到一個磚的工作區

設置Azure管道

Azure管道必須能夠訪問您的數據磚工作區。如果你也想使用磚回購,你的工作空間必須能夠訪問Azure管道。

Azure管道管道YAML文件依賴環境變量來訪問你的磚工作區。這些環境變量包括的如:

  • DATABRICKS_HOST,這是價值https://其次是你的工作區實例名例如,1234567890123456.7.gcp.m.eheci.com

  • DATABRICKS_TOKEN的價值token_value值複製後創建了磚磚服務主體的個人訪問令牌。

這些環境變量添加到Azure管道,明白了在Azure管道使用Azure鍵值的秘密設置秘密變量Azure的文檔。

參見下麵的磚博客:

可選的CI / CD場景:如果您的工作區使用磚回購,你想讓您的工作區訪問Azure管道、收集:

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

  • 你的Azure管道用戶名

然後,Git提供者證書添加到一個磚的工作區

設置GitLab CI / CD

GitLab CI / CD必須能夠訪問您的數據磚工作區。如果你也想使用磚回購,你的工作空間必須能夠訪問GitLab CI / CD。

訪問你的磚工作區,GitLab CI / CD.gitlab-ci.yml文件,如人的一部分基本的Python模板dbx,依靠定製CI / CD變量如:

  • DATABRICKS_HOST,這是價值https://其次是你的工作區實例名例如,1234567890123456.7.gcp.m.eheci.com

  • DATABRICKS_TOKEN的價值token_value值複製後創建了磚磚服務主體的個人訪問令牌。

這些自定義變量添加到你的GitLab CI / CD項目,明白了CI / CD變量添加到項目中在GitLab CI / CD文檔。

如果您的工作區使用磚回購,你想讓您的工作區訪問GitLab CI / CD,收集:

Git提供者證書添加到一個磚的工作區

本節描述如何使你的磚的磚工作區訪問Git的提供者回購。這在CI / CD的場景中是可選的。例如,您可能隻希望自己的Git提供者訪問磚工作區,但你不也想在你的工作區與Git使用磚回購的提供者。如果是這樣,那麼跳過這一節。

在您開始之前,收集以下信息和工具:

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

  • 與你的Git提供者相關聯的用戶名。

  • 與用戶相關的訪問令牌的Git提供者。

  • 磚CLI版本0.200或更高版本。看到安裝CLI。你不能使用磚的用戶界麵。

  • 磚配置概要文件中.databrickscfg文件,配置文件的相關字段正確設置主機代表你的磚工作區實例URL例如,https://1234567890123456.7.gcp.m.eheci.com,令牌代表磚磚服務主體的個人訪問令牌。(做使用磚個人為您的工作區用戶訪問令牌。)看到磚個人訪問令牌認證

使用磚CLI運行以下命令:

磚git-credentials創建< git-provider-short-name >——git-username < git-provider-user-name >——personal-access-token < git-provider-access-token > - p <配置文件名稱>
  • 使用下列之一< git-provider-short-name >:

    • 對於GitHub,使用GitHub

    • Azure管道,使用AzureDevOpsServices

    • GitLab CI / CD,使用GitLab

  • 取代< git-provider-user-name >與你的Git提供者相關聯的用戶名。

  • 取代< git-provider-access-token >訪問令牌的Git提供者與用戶相關聯。

  • 取代<配置文件名稱>與你的磚配置概要文件的名稱.databrickscfg文件。

提示

確認調用成功,您可以運行下麵的磚CLI命令之一,並查看輸出:

磚git-credentials列表- p <配置文件名稱>
磚git-credentials得到< credential-id > - p <配置文件名稱>