Szolgáltatásnevek a CI/CD-hez
Ez a cikk azt ismerteti, hogyan használhatja a CI/CD szolgáltatásneveit az Azure Databricks használatával. A szolgáltatásnév automatizált eszközökkel és alkalmazásokkal való használatra létrehozott identitás, beleértve a következőket:
- CI-/CD-platformok, például a GitHub Actions, az Azure Pipelines és a GitLab CI/CD
- Adatfolyam az adatfolyamokban
- Jenkins
Ajánlott biztonsági eljárásként a Databricks azt javasolja, hogy az Azure Databricks-felhasználó vagy a Databricks személyes hozzáférési jogkivonata helyett használjon szolgáltatásnevet és annak jogkivonatát a munkaterület-felhasználó számára, hogy a CI/CD-platformok számára hozzáférést biztosítson az Azure Databricks-erőforrásokhoz. Ennek a megközelítésnek néhány előnye a következők:
- Az Azure Databricks-erőforrásokhoz való hozzáférést felhasználótól függetlenül engedélyezheti és korlátozhatja egy szolgáltatásnév számára. Ez lehetővé teszi például, hogy megtiltsa, hogy egy szolgáltatásnév rendszergazdaként működjön az Azure Databricks-munkaterületen, miközben a munkaterület más meghatározott felhasználói továbbra is rendszergazdaként működhetnek.
- A felhasználók megvédhetik a hozzáférési jogkivonataikat a CI/CD-platformok általi hozzáféréstől.
- A szolgáltatásnév ideiglenesen letiltható vagy véglegesen törölhető anélkül, hogy más felhasználókat érintenének. Ez lehetővé teszi például, hogy felfüggesztse vagy eltávolítsa a hozzáférést egy olyan szolgáltatásnévről, amelyet gyanít, hogy rosszindulatú módon használják.
- Ha egy felhasználó elhagyja a szervezetet, eltávolíthatja a felhasználót anélkül, hogy bármilyen szolgáltatásnévre hatással lenne.
Ha CI/CD-platform hozzáférést szeretne adni az Azure Databricks-munkaterülethez, tegye a következőket:
Válasszon az alábbi támogatott MS Entra hitelesítési mechanizmusok közül szolgáltatáskapcsolattal:
A Microsoft Entra számítási feladatok identitásának összevonása az Azure CLI használatával hitelesítési mechanizmusként.
- Egy Microsoft Entra-szolgáltatásnév, amely egy Microsoft Entra ügyfélkulcsot használ hitelesítési mechanizmusként.
- Felügyelt Microsoft Entra-azonosító.
A Microsoft Entra-hitelesítés implementálásával kapcsolatos részletekért lásd : Hitelesítés az Azure DevOps on Databricks szolgáltatással.
Ha tudni szeretné, hogyan hitelesítheti az Azure Databricks Git-mappákhoz való hozzáférést az Azure DevOps használatával, olvassa el a Microsoft Entra szolgáltatásnév használata az Azure Databricks Git-mappákhoz való hozzáférés hitelesítéséhez című témakört.
- Egy Microsoft Entra-szolgáltatásnév, amely egy Microsoft Entra ügyfélkulcsot használ hitelesítési mechanizmusként.
Követelmények
- Az Azure Databricks OAuth-jogkivonata vagy Microsoft Entra ID-jogkivonata egy Azure Databricks által felügyelt szolgáltatásnévhez vagy egy Microsoft Entra ID által felügyelt szolgáltatásnévhez. Az Azure Databricks által felügyelt szolgáltatásnév vagy a Microsoft Entra ID által felügyelt szolgáltatásnév, valamint az Azure Databricks OAuth-jogkivonat vagy a Microsoft Entra ID-jogkivonat létrehozásához lásd: Szolgáltatásnevek kezelése.
- Egy fiók a Git-szolgáltatónál.
A GitHub Actions beállítása
A GitHub Actionsnek hozzá kell tudnia férni az Azure Databricks-munkaterülethez. Ha Azure Databricks Git-mappákat szeretne használni, a munkaterületnek hozzá kell férnie a GitHubhoz is.
Ahhoz, hogy a GitHub Actions hozzáférhessen az Azure Databricks-munkaterülethez, meg kell adnia az Azure Databricks által felügyelt szolgáltatásnévvel vagy a Microsoft Entra ID által felügyelt szolgáltatásnévvel kapcsolatos információkat a GitHub Actions számára. Ilyen lehet például az alkalmazás (ügyfél) azonosítója, a Microsoft Entra ID által felügyelt szolgáltatásnév címtár-(bérlői) azonosítója , az Azure Databricks által felügyelt szolgáltatásnév vagy a Microsoft Entra ID által felügyelt szolgáltatásnév ügyfélkódja, vagy access_token
egy Azure Databricks által felügyelt szolgáltatásnév értéke a GitHub-művelet követelményeitől függően. További információ: Szolgáltatásnevek kezelése és a GitHub-művelet dokumentációja.
Ha azt is engedélyezni szeretné, hogy az Azure Databricks-munkaterület hozzáférhessen a GitHubhoz az Azure Databricks Git-mappák használatakor, hozzá kell adnia a GitHub személyes hozzáférési jogkivonatát egy GitHub-gép felhasználójához a munkaterülethez.
Szolgáltatásnévvel kapcsolatos információk megadása a GitHub Actions számára
Ez a szakasz azt ismerteti, hogyan engedélyezheti a GitHub Actions számára az Azure Databricks-munkaterület elérését.
Ajánlott biztonsági eljárásként a Databricks azt javasolja, hogy ne adja meg közvetlenül a GitHub Actions-fájlok törzsébe a szolgáltatásnév adatait. Ezeket az információkat a GitHub Actions számára a GitHub titkosított titkos kódokkal kell megadnia.
A GitHub Actions, például a Databricks által a GitHub Actions használatával történő folyamatos integrációban és kézbesítésben listázott műveletek különböző GitHub-titkosított titkos kódokra támaszkodnak, például:
DATABRICKS_HOST
érték, amelyet például ahttps://
munkaterület-példány neveadb-1234567890123456.7.azuredatabricks.net
követ.AZURE_CREDENTIALS
, amely egy JSON-dokumentum, amely az Azure CLI futtatásának kimenetét jelöli a Microsoft Entra ID által felügyelt szolgáltatásnévvel kapcsolatos információk lekéréséhez. További információkért tekintse meg a GitHub-művelet dokumentációját.AZURE_SP_APPLICATION_ID
, amely a Microsoft Entra ID által felügyelt szolgáltatásnév alkalmazás-(ügyfél-) azonosítójának értéke.AZURE_SP_TENANT_ID
, amely egy Felügyelt Microsoft Entra ID szolgáltatásnév címtár-(bérlői) azonosítójának értéke.AZURE_SP_CLIENT_SECRET
, amely egy Microsoft Entra ID által felügyelt szolgáltatásnév ügyféltitkának értéke .
További információ arról, hogy mely GitHub-titkos kulcsokra van szükség egy GitHub-művelethez: Szolgáltatásnevek kezelése és az adott GitHub-művelet dokumentációja.
Ha ezeket a GitHub-titkosított titkos kulcsokat fel szeretné adni a GitHub-adattárba, olvassa el a Titkosított titkos kódok létrehozása az adattárhoz a GitHub dokumentációjában című témakört. A GitHub-adattár titkos kulcsainak hozzáadásának egyéb megközelítéseit a GitHub dokumentációjában található Titkosított titkos kulcsok című témakörben találja.
GitHub-alapú személyes hozzáférési jogkivonat hozzáadása Egy GitHub-gép felhasználójához az Azure Databricks-munkaterülethez
Ez a szakasz azt ismerteti, hogyan engedélyezheti az Azure Databricks-munkaterületnek a GitHub azure Databricks Git-mappákkal való elérését. Ez ci/CD-forgatókönyvekben nem kötelező feladat.
Biztonsági szempontból ajánlott eljárásként a Databricks azt javasolja, hogy GitHub-alapú személyes fiókok helyett GitHub-gépfelhasználókat használjon, számos okból, hogy azure Databricks-felhasználó helyett szolgáltatásnevet használjon. Ha hozzá szeretné adni a GitHub személyes hozzáférési jogkivonatát egy GitHub-gépfelhasználóhoz az Azure Databricks-munkaterülethez, tegye a következőket:
Hozzon létre egy GitHub-felhasználót, ha még nem rendelkezik elérhető felhasználóval. A GitHub-gép felhasználója egy Személyes GitHub-fiók, amely a saját Személyes GitHub-fiókjától független, a GitHubon végzett tevékenységek automatizálására használható. Hozzon létre egy új különálló GitHub-fiókot , amelyet GitHub-gépfelhasználóként szeretne használni, ha még nem rendelkezik elérhető fiókkal.
Feljegyzés
Ha új különálló GitHub-fiókot hoz létre GitHub-gépfelhasználóként, nem társíthatja azt a saját Személyes GitHub-fiókjához tartozó e-mail-címmel. Ehelyett tekintse meg a szervezet levelezési rendszergazdáját egy külön e-mail-cím beszerzéséről, amelyet gitHub-felhasználóként társíthat ehhez az új különálló GitHub-fiókhoz.
Tekintse meg a szervezet fiókadminisztrátorát a különálló e-mail-cím és a hozzá tartozó GitHub-gép felhasználójának, valamint a szervezeten belüli GitHub személyes hozzáférési jogkivonatainak kezelésével kapcsolatban.
Adjon hozzáférést a GitHub-gép felhasználóinak a GitHub-adattárhoz. Lásd: Csapat vagy személy meghívása a GitHub dokumentációjában. A meghívás elfogadásához először ki kell jelentkeznie a Személyes GitHub-fiókjából, majd vissza kell jelentkeznie GitHub-gépfelhasználóként.
Jelentkezzen be a GitHubra gépfelhasználóként, majd hozzon létre egy Személyes GitHub-hozzáférési jogkivonatot a gépfelhasználó számára. Lásd: Személyes hozzáférési jogkivonat létrehozása a GitHub dokumentációjában. Mindenképpen adjon hozzáférést a GitHub személyes hozzáférési jogkivonat-adattárához.
Gyűjtse össze a Microsoft Entra-azonosító jogkivonatot a szolgáltatásnévhez, a GitHub-gép felhasználónevéhez, majd adja hozzá a Git-szolgáltató hitelesítő adatait egy Azure Databricks-munkaterülethez.
Az Azure Pipelines beállítása
Az Azure Pipelinesnak hozzá kell tudnia férni az Azure Databricks-munkaterülethez. Ha Azure Databricks Git-mappákat is szeretne használni, a munkaterületnek hozzá kell férnie az Azure Pipelineshoz.
Az Azure Pipelines YAML-folyamatfájljai környezeti változókra támaszkodnak az Azure Databricks-munkaterület eléréséhez. Ezek a környezeti változók a következők:
DATABRICKS_HOST
érték, amelyet például ahttps://
munkaterület-példány neveadb-1234567890123456.7.azuredatabricks.net
követ.DATABRICKS_TOKEN
, amely annak az értéknek aztoken_value
értéke, amelyet a Microsoft Entra ID-jogkivonat létrehozása után másolt a Microsoft Entra ID felügyelt szolgáltatásnévhez.
Ha hozzá szeretné adni ezeket a környezeti változókat az Azure-folyamathoz, olvassa el az Azure-folyamatok Azure Key Value-titkos kulcsainak használata és a titkos változók beállítása az Azure dokumentációjában című témakört.
Lásd még a következő Databricks blogot:
Ci/CD-forgatókönyvek esetén nem kötelező: Ha a munkaterület Azure Databricks Git-mappákat használ, és engedélyezni szeretné a munkaterület számára az Azure Pipelines elérését, gyűjtse össze a következőket:
- A Szolgáltatásnév Microsoft Entra ID-jogkivonata
- Az Azure Pipelines-felhasználónév
Ezután adja hozzá a Git-szolgáltató hitelesítő adatait egy Azure Databricks-munkaterülethez.
GitLab CI/CD beállítása
A GitLab CI/CD-nek hozzá kell tudnia férni az Azure Databricks-munkaterülethez. Ha Azure Databricks Git-mappákat is szeretne használni, a munkaterületnek hozzá kell férnie a GitLab CI/CD-hez.
Az Azure Databricks-munkaterület eléréséhez a GitLab CI/CD-fájlok.gitlab-ci.yml
, például az alapszintű Python-sablon dbx
részeként használt fájlok egyéni CI-/CD-változókra támaszkodnak, például:
DATABRICKS_HOST
érték, amelyet például ahttps://
munkaterület-példány neveadb-1234567890123456.7.azuredatabricks.net
követ.DATABRICKS_TOKEN
, amely annak az értéknek aztoken_value
értéke, amelyet a Microsoft Entra ID-jogkivonat létrehozása után másolt a szolgáltatásnévhez.
Ha ezeket az egyéni változókat a GitLab CI/CD-projekthez szeretné hozzáadni, olvassa el a Ci/CD-változó hozzáadása projekthez a GitLab CI/CD dokumentációjában.
Ha a munkaterület Databricks Git-mappákat használ, és engedélyezni szeretné a munkaterület számára a GitLab CI/CD elérését, gyűjtse össze az alábbiakat:
- A Szolgáltatásnév Microsoft Entra ID-jogkivonata
- Az Ön GitLab CI/CD-felhasználóneve
Ezután adja hozzá a Git-szolgáltató hitelesítő adatait egy Azure Databricks-munkaterülethez.
Git-szolgáltató hitelesítő adatainak hozzáadása egy Azure Databricks-munkaterülethez
Ez a szakasz azt ismerteti, hogyan engedélyezheti az Azure Databricks-munkaterületnek az Azure Databricks Git-mappákHoz tartozó Git-szolgáltató elérését. Ez ci/CD-forgatókönyvekben nem kötelező. Előfordulhat például, hogy csak azt szeretné, hogy a Git-szolgáltató hozzáférjen az Azure Databricks-munkaterülethez, de az Azure Databricks Git-mappákat sem szeretné használni a munkaterületen a Git-szolgáltatóval. Ha igen, hagyja ki ezt a szakaszt.
Mielőtt hozzákezdene, gyűjtse össze a következő információkat és eszközöket:
- A szolgáltatásnév Microsoft Entra ID-jogkivonata.
- A Git-szolgáltatóhoz társított felhasználónév.
- A Git-szolgáltató felhasználójához társított hozzáférési jogkivonat.
Feljegyzés
Az Azure Pipelines esetében lásd : Személyes hozzáférési jogkivonatok használata az Azure webhelyén.
- A Databricks CLI 0.205-ös vagy újabb verziója. Lásd: Mi a Databricks parancssori felület? Az Azure Databricks felhasználói felülete nem használható.
- Egy Azure Databricks-konfigurációs profil a
.databrickscfg
fájlban, amelyben a profil mezői megfelelően be van állítva az Azure Databricks munkaterületenkénti URL-címét képviselő kapcsolódóhozhost
,https://adb-1234567890123456.7.azuredatabricks.net
éstoken
a szolgáltatásnévHez tartozó Microsoft Entra-azonosító jogkivonatot képviselik. (Ne használja a Databricks személyes hozzáférési jogkivonatát a munkaterület-felhasználó számára.) Tekintse meg az Azure Databricks személyes hozzáférési jogkivonatának hitelesítését.
A Databricks parancssori felületével futtassa a következő parancsot:
databricks git-credentials create <git-provider-short-name> --git-username <git-provider-user-name> --personal-access-token <git-provider-access-token> -p <profile-name>
- Használja az alábbi lehetőségek
<git-provider-short-name>
egyikét:- A GitHubhoz használja
GitHub
a . - Az Azure Pipelines esetében használja
AzureDevOpsServices
a . - GitLab CI/CD esetén használja a következőt
GitLab
: .
- A GitHubhoz használja
- Cserélje le
<git-provider-user-name>
a Git-szolgáltatóhoz társított felhasználónevet. - Cserélje le
<git-provider-access-token>
a Git-szolgáltató felhasználójához társított hozzáférési jogkivonatra. - Cserélje le
<profile-name>
a fájlban.databrickscfg
található Azure Databricks-konfigurációs profil nevét.
Tipp.
A hívás sikerességének ellenőrzéséhez futtassa az alábbi Databricks CLI-parancsok egyikét, és tekintse át a kimenetet:
databricks git-credentials list -p <profile-name>
databricks git-credentials get <credential-id> -p <profile-name>