Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Du kan hantera Azure Databricks Git-mappar i en helt automatiserad miljö med Terraform och databricks_repo Terraform-resursen.
Det här avsnittet beskriver två autentiseringsmetoder:
- Autentisering med personlig åtkomsttoken (PAT): Använder personliga Git-åtkomsttoken för lagringsplatsåtkomst
- Tjänstens huvudnamn med federerade autentiseringsuppgifter: Använder Azure-tjänstens huvudnamn med OpenID Connect-token (OIDC) för säker, tokenfri autentisering till Azure DevOps-lagringsplatser
Autentisering med personliga åtkomsttoken
Den här metoden använder personliga Git-åtkomsttoken för lagringsplatsautentisering.
I Terraform-konfigurationsfilen (.tf) anger databricks_repo du till URL:en för git-lagringsplatsen som du ska använda för dina Git-mappar:
resource "databricks_repo" "this" {
url = "https://github.com/user/demo.git"
}
För att använda ett tjänsthuvudkonto för Azure Databricks med Git-autentiseringsuppgifter baserade på personliga åtkomsttoken, följ dessa steg:
Steg 1: Konfigurera Azure Databricks-provider
Ange providern databricks till URL:en för din Azure Databricks-arbetsyta. Du definierar åtkomsttoken databricks_obo_token i ett senare steg.
provider "databricks" {
# Configuration options
}
# Example 'databricks' provider configuration
provider "databricks" {
alias = "sp"
host = "https://....cloud.databricks.com"
token = databricks_obo_token.this.token_value
}
Steg 2: Skapa tjänstens huvudnamn
Definiera resurserna för tjänstens service principal i Azure Databricks. Du hittar tjänstens huvudnamn i Azure Databricks-kontokonsolen underTjänstens huvudnamn för >.
resource "databricks_service_principal" "sp" {
display_name = "<service_principal_name_here>"
}
Steg 3: Skapa auktoriseringstoken
Ange auktoriseringstoken för ditt Azure Databricks tjänstehuvudnamn med hjälp av program-ID:t. Du hittar tjänstens huvudnamns program-ID i Azure Databricks-kontokonsolen underTjänstens huvudnamn för >.
resource "databricks_obo_token" "this" {
application_id = databricks_service_principal.sp.application_id
comment = "PAT on behalf of ${databricks_service_principal.sp.display_name}"
lifetime_seconds = 3600
}
Steg 4: Konfigurera Git-autentiseringsuppgifter
Ange de Git-autentiseringsuppgifter som tjänstens huvudnamn ska använda för att komma åt din Git-lagringsplats.
resource "databricks_git_credential" "sp" {
provider = databricks.sp
depends_on = [databricks_obo_token.this]
git_username = "<the_git_user_account_used_by_the_servcie_principal>"
git_provider = "<your_git_provider_string here>"
personal_access_token = "<auth_token_string_for_git_user>"
}
Autentisering med tjänstens huvudnamn och federerade autentiseringsuppgifter
För Azure DevOps-lagringsplatser kan du använda federerade identitetsuppgifter för att autentisera utan att lagra långvariga hemligheter. Den här metoden använder ett tjänstehuvudnamn för Azure Databricks-tjänsten med en OIDC-token som utfärdats av Azure DevOps-pipelines, vilket eliminerar behovet av personliga åtkomsttokener.
Förutsättningar
Innan du kan konfigurera federerad identitetsautentisering för Azure Databricks Git-mappar konfigurerar du följande komponenter:
- En Azure-tjänsthuvudman i din Azure Databricks-arbetsyta och din Azure DevOps-organisation. Se Använda tjänstens huvudnamn och hanterade identiteter i Azure DevOps.
- Behörighet att konfigurera federerade autentiseringsuppgifter för tjänstens huvudkonto. Se Konfigurera en app för att lita på en extern identitetsprovider.
- En Git-lagringsplats i din Azure DevOps-organisation med behörigheter som beviljats för lagringsplatsåtkomst.
- En Azure DevOps-pipeline som kan begära en OIDC-token.
Steg 1: Konfigurera variabler
Ange värden för följande variabler i en terraform.tfvars fil:
-
databricks_host: URL:en för din Azure Databricks-arbetsyta, till exempelhttps://adb-123417477717.17.azuredatabricks.net -
entra_client_id: Klient-ID för Azure-tjänsthuvudnamn -
entra_client_secret: Klienthemligheten för Azure-tjänstens tjänstehuvudnamn -
entra_tenant_id: Microsoft Entra-ID:t där tjänstens huvudnamn är registrerat -
ado_repo_url: HTTPS-URL:en för Git-lagringsplatsen i Azure DevOps
Steg 2: Konfigurera Azure Databricks-leverantören
Använd den officiella databricks providern i Terraform-konfigurationen. Autentisering för providern kan använda din organisations standardmetod, till exempel miljövariabler i continuous integration (CI) eller tjänstens huvudprincip när du kör Terraform från en säker arbetsstation.
terraform {
required_providers {
databricks = {
source = "databricks/databricks"
version = "1.78.0"
}
}
}
provider "databricks" {
host = var.databricks_host
azure_client_id = var.entra_client_id
azure_client_secret = var.entra_client_secret
azure_tenant_id = var.entra_tenant_id
}
Steg 3: Skapa en federerad Git-autentiseringsuppgift för Azure DevOps
Den här autentiseringsuppgiften instruerar Azure Databricks att använda Azure Active Directory-backad federation för Azure DevOps.
resource "databricks_git_credential" "sp_ado" {
git_provider = "azureDevOpsServicesAad"
is_default_for_provider = true
}
Steg 4: Peka en Git-mapp på din Azure DevOps-lagringsplats
Skapa eller uppdatera Git-mappen för att använda url:en för Azure DevOps-lagringsplatsen.
resource "databricks_repo" "this" {
url = var.ado_repo_url
depends_on = [databricks_git_credential.sp_ado]
}