服務主體對CI / CD
本文描述了如何使用服務主體與磚CI / CD。一個服務主體是一個身份創建使用自動化的工具和應用程序,包括:
CI / CBeplay体育安卓版本D平台等GitHub的行為,Azure管道,GitLab CI / CD
氣流在數據管道
作為一個安全最佳實踐,磚建議使用磚服務主體及其oauth的令牌或個人訪問令牌,而不是你的磚用戶或磚個人工作區用戶訪問令牌給磚CI / CD平台訪問資源。Beplay体育安卓版本這種方法包括以下一些好處:
格蘭特和可以限製訪問為磚磚資源服務主體獨立於用戶。例如,這允許您禁止磚服務主體作為一個管理員在你磚的工作空間,同時允許其他特定用戶在您的工作空間中繼續充當管理員。
用戶可以維護自己的訪問令牌訪問由CI / CD平台。Beplay体育安卓版本
你可以暫時禁用或永久刪除一個磚服務主體而不影響其他用戶。例如,這允許您從磚暫停或刪除訪問服務主體,你懷疑是惡意的方式使用。
如果用戶離開你的組織,你可以刪除用戶,而不會影響任何磚服務主體。
給CI / CD平台訪問你的磚工Beplay体育安卓版本作區,做到以下幾點:
在您的工作區中創建一個數據磚服務主體。
生成一個磚磚服務主體的個人訪問令牌。
給這個磚個人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.yml
和onrelease.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機用戶數據磚工作區,做到以下幾點:
創建一個GitHub機用戶,如果你不已經有一個可用的。一個GitHub機用戶是一個GitHub個人賬戶,獨立於自己的GitHub個人賬戶,你可以在GitHub上使用自動化活動。創建一個新的獨立的GitHub帳戶使用GitHub機用戶,如果你不已經有一個可用的。
請注意
當你創建一個新的獨立的GitHub帳戶作為一個GitHub機用戶,您不能將它與自己的GitHub個人賬戶的電子郵件地址。相反,看到您組織的郵件管理員有一個單獨的電子郵件地址,您可以與這個新獨立的GitHub賬戶作為一個GitHub機用戶。
看到您的組織的帳戶管理員管理單獨的電子郵件地址及其相關GitHub機用戶及其GitHub個人訪問令牌在你的組織。
給你的GitHub GitHub機用戶訪問存儲庫。看到邀請一個團隊或個人在GitHub文檔。接受邀請,你可能首先需要退出你的GitHub個人帳戶,然後在GitHub機器用戶簽字。
在GitHub機用戶,然後創建一個GitHub的個人機用戶訪問令牌。看到創建一個個人訪問令牌在GitHub文檔。一定要給GitHub個人訪問令牌回購訪問。
收集數據磚磚服務主體的個人訪問令牌,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管道用戶名
設置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,收集:
磚的磚個人訪問令牌服務主體
你的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 <配置文件名稱>